queenbee.plugin.function module¶
Queenbee Function class.
- class queenbee.plugin.function.Function(*, type: ~typing.Literal['Function'] = 'Function', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, inputs: ~typing.List[~typing.Annotated[~queenbee.io.inputs.function.FunctionStringInput | ~queenbee.io.inputs.function.FunctionIntegerInput | ~queenbee.io.inputs.function.FunctionNumberInput | ~queenbee.io.inputs.function.FunctionBooleanInput | ~queenbee.io.inputs.function.FunctionFolderInput | ~queenbee.io.inputs.function.FunctionFileInput | ~queenbee.io.inputs.function.FunctionPathInput | ~queenbee.io.inputs.function.FunctionArrayInput | ~queenbee.io.inputs.function.FunctionJSONObjectInput, FieldInfo(annotation=NoneType, required=True, discriminator='type')]] = <factory>, outputs: ~typing.List[~typing.Annotated[~queenbee.io.outputs.function.FunctionStringOutput | ~queenbee.io.outputs.function.FunctionIntegerOutput | ~queenbee.io.outputs.function.FunctionNumberOutput | ~queenbee.io.outputs.function.FunctionBooleanOutput | ~queenbee.io.outputs.function.FunctionFolderOutput | ~queenbee.io.outputs.function.FunctionFileOutput | ~queenbee.io.outputs.function.FunctionPathOutput | ~queenbee.io.outputs.function.FunctionArrayOutput | ~queenbee.io.outputs.function.FunctionJSONObjectOutput, FieldInfo(annotation=NoneType, required=True, discriminator='type')]] = <factory>, name: str, description: str | None = None, command: str | None = None, language: ~queenbee.plugin.function.ScriptingLanguages = ScriptingLanguages.Python, source: str | None = None)[source]¶
Bases:
IOBaseA Function with a single or a script.
- command: str | None¶
- description: str | None¶
- inputs: List[Annotated[FunctionStringInput | FunctionIntegerInput | FunctionNumberInput | FunctionBooleanInput | FunctionFolderInput | FunctionFileInput | FunctionPathInput | FunctionArrayInput | FunctionJSONObjectInput, FieldInfo(annotation=NoneType, required=True, discriminator='type')]]¶
- property is_script¶
Returns True if this Function is a script function.
- language: ScriptingLanguages¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- name: str¶
- outputs: List[Annotated[FunctionStringOutput | FunctionIntegerOutput | FunctionNumberOutput | FunctionBooleanOutput | FunctionFolderOutput | FunctionFileOutput | FunctionPathOutput | FunctionArrayOutput | FunctionJSONObjectOutput, FieldInfo(annotation=NoneType, required=True, discriminator='type')]]¶
- source: str | None¶
- type: Literal['Function']¶
- classmethod validate_command_refs(v: str | None, info: ValidationInfo) str | None[source]¶
Validate referenced variables in the command
- static validate_referenced_values(input_names: List[str], variables: List)[source]¶
Validate referenced values
- Parameters:
reference (input_names {List[str]} -- A list of acceptable names to)
strings (variables {List} -- A list of referenced value)
- Raises:
ValueError – One of the reference variables is invalid