pub struct DialectFunction {
pub metadata: Map<String, Value>,
pub name: String,
pub required_options: Map<String, Value>,
pub source: String,
pub supported_impls: Vec<String>,
pub system_metadata: Option<SystemFunctionMetadata>,
pub variadic: Option<DialectFunctionVariadic>,
}Expand description
DialectFunction
JSON schema
{
"type": "object",
"required": [
"name",
"source",
"supported_impls"
],
"properties": {
"metadata": {
"description": "Arbitrary data created by the dialect author.",
"type": "object"
},
"name": {
"description": "The name of the function as declared in the extension it is defined in.\n",
"type": "string"
},
"required_options": {
"description": "Function-specific options that must be supported by the dialect. These are the exact list of options that must be used. If no options are listed here, no options must be present.\n",
"type": "object"
},
"source": {
"description": "Dependency (alias) in which the function is declared.",
"type": "string"
},
"supported_impls": {
"description": "List of one or more implementations supported by this function. Use argument signatures to identify the implementations. An implementation that takes no arguments has an empty argument signature and is identified by the empty string. For example, [\"i64\", \"\"] identifies two implementations: one taking a single i64 argument, and one taking no arguments.\n",
"type": "array",
"items": {
"type": "string"
},
"minItems": 1
},
"system_metadata": {
"description": "system specific metadata for the function",
"type": "object",
"$ref": "#/definitions/system_function_metadata"
},
"variadic": {
"description": "If present, indicates the function accepts a variable number of arguments. Specifies the minimum and/or maximum number of arguments allowed.\n",
"type": "object",
"properties": {
"max": {
"description": "Maximum number of arguments allowed",
"type": "integer",
"minimum": 1.0
},
"min": {
"description": "Minimum number of arguments required",
"type": "integer",
"minimum": 1.0
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}Fields§
§metadata: Map<String, Value>Arbitrary data created by the dialect author.
name: StringThe name of the function as declared in the extension it is defined in.
required_options: Map<String, Value>Function-specific options that must be supported by the dialect. These are the exact list of options that must be used. If no options are listed here, no options must be present.
source: StringDependency (alias) in which the function is declared.
supported_impls: Vec<String>List of one or more implementations supported by this function. Use argument signatures to identify the implementations. An implementation that takes no arguments has an empty argument signature and is identified by the empty string. For example, [“i64”, “”] identifies two implementations: one taking a single i64 argument, and one taking no arguments.
system_metadata: Option<SystemFunctionMetadata>system specific metadata for the function
variadic: Option<DialectFunctionVariadic>Implementations§
Source§impl DialectFunction
impl DialectFunction
pub fn builder() -> DialectFunction
Trait Implementations§
Source§impl Clone for DialectFunction
impl Clone for DialectFunction
Source§fn clone(&self) -> DialectFunction
fn clone(&self) -> DialectFunction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more