pub trait RdfFusionFunctionRegistry:
Debug
+ Send
+ Sync {
// Required methods
fn udf_supported_encodings(
&self,
function_name: &FunctionName,
) -> DFResult<Vec<EncodingName>>;
fn udf(&self, function_name: &FunctionName) -> DFResult<Arc<ScalarUDF>>;
fn udaf(&self, function_name: &FunctionName) -> DFResult<Arc<AggregateUDF>>;
fn register_udf(&self, udf: ScalarUDF);
fn register_udaf(&self, udaf: AggregateUDF);
}
Expand description
A registry for SPARQL functions that can create DataFusion UDFs and UDAFs.
This trait defines the interface for creating DataFusion user-defined functions (UDFs) and user-defined aggregate functions (UDAFs) that implement SPARQL function semantics.
§Additional Resources
Required Methods§
Sourcefn udf_supported_encodings(
&self,
function_name: &FunctionName,
) -> DFResult<Vec<EncodingName>>
fn udf_supported_encodings( &self, function_name: &FunctionName, ) -> DFResult<Vec<EncodingName>>
Returns the encodings supported by function_name
.
Sourcefn udaf(&self, function_name: &FunctionName) -> DFResult<Arc<AggregateUDF>>
fn udaf(&self, function_name: &FunctionName) -> DFResult<Arc<AggregateUDF>>
Creates a AggregateUDF.
Sourcefn register_udf(&self, udf: ScalarUDF)
fn register_udf(&self, udf: ScalarUDF)
Register a ScalarUDF.
Sourcefn register_udaf(&self, udaf: AggregateUDF)
fn register_udaf(&self, udaf: AggregateUDF)
Register a AggregateUDF.