RdfFusionFunctionRegistry

Trait RdfFusionFunctionRegistry 

Source
pub trait RdfFusionFunctionRegistry:
    Debug
    + Send
    + Sync {
    // Required methods
    fn udf_supported_encodings(
        &self,
        function_name: &FunctionName,
    ) -> Result<Vec<EncodingName>, DataFusionError>;
    fn udf(
        &self,
        function_name: &FunctionName,
    ) -> Result<Arc<ScalarUDF>, DataFusionError>;
    fn udaf(
        &self,
        function_name: &FunctionName,
    ) -> Result<Arc<AggregateUDF>, DataFusionError>;
    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§

Source

fn udf_supported_encodings( &self, function_name: &FunctionName, ) -> Result<Vec<EncodingName>, DataFusionError>

Returns the encodings supported by function_name.

Source

fn udf( &self, function_name: &FunctionName, ) -> Result<Arc<ScalarUDF>, DataFusionError>

Creates a ScalarUDF.

Source

fn udaf( &self, function_name: &FunctionName, ) -> Result<Arc<AggregateUDF>, DataFusionError>

Creates a AggregateUDF.

Source

fn register_udf(&self, udf: ScalarUDF)

Register a ScalarUDF.

Source

fn register_udaf(&self, udaf: AggregateUDF)

Register a AggregateUDF.

Implementors§