substrait

Trait SerializerRegistry

pub trait SerializerRegistry: Send + Sync {
    // Required methods
    fn serialize_logical_plan(
        &self,
        node: &dyn UserDefinedLogicalNode,
    ) -> Result<Vec<u8>, DataFusionError>;
    fn deserialize_logical_plan(
        &self,
        name: &str,
        bytes: &[u8],
    ) -> Result<Arc<dyn UserDefinedLogicalNode>, DataFusionError>;
}
Expand description

Serializer and deserializer registry for extensions like [UserDefinedLogicalNode].

Required Methods§

fn serialize_logical_plan( &self, node: &dyn UserDefinedLogicalNode, ) -> Result<Vec<u8>, DataFusionError>

Serialize this node to a byte array. This serialization should not include input plans.

fn deserialize_logical_plan( &self, name: &str, bytes: &[u8], ) -> Result<Arc<dyn UserDefinedLogicalNode>, DataFusionError>

Deserialize user defined logical plan node ([UserDefinedLogicalNode]) from bytes.

Implementations on Foreign Types§

§

impl SerializerRegistry for EmptySerializerRegistry

§

fn serialize_logical_plan( &self, node: &dyn UserDefinedLogicalNode, ) -> Result<Vec<u8>, DataFusionError>

§

fn deserialize_logical_plan( &self, name: &str, _bytes: &[u8], ) -> Result<Arc<dyn UserDefinedLogicalNode>, DataFusionError>

Implementors§