pub trait PhysicalExtensionCodec: Debug + Send + Sync {
// Required methods
fn try_decode(
&self,
buf: &[u8],
inputs: &[Arc<dyn ExecutionPlan>],
registry: &dyn FunctionRegistry
) -> Result<Arc<dyn ExecutionPlan>, DataFusionError>;
fn try_encode(
&self,
node: Arc<dyn ExecutionPlan>,
buf: &mut Vec<u8>
) -> Result<(), DataFusionError>;
}