pub trait Context {
// Required methods
fn add_simple_extension_urn(
&mut self,
simple_extension_urn: &SimpleExtensionUrn,
) -> Result<&SimpleExtensions, ContextError>;
fn simple_extensions(
&self,
anchor: &Anchor<SimpleExtensionUrn>,
) -> Result<&SimpleExtensions, ContextError>;
// Provided method
fn parse<T: Parse<Self>>(&mut self, item: T) -> Result<T::Parsed, T::Error>
where Self: Sized { ... }
}
Available on crate feature
parse
only.Expand description
A parse context.
Parsing Substrait data is context-sensitive. This trait provides methods that can be used by parser implementations to parse Substrait data.
Required Methods§
Sourcefn add_simple_extension_urn(
&mut self,
simple_extension_urn: &SimpleExtensionUrn,
) -> Result<&SimpleExtensions, ContextError>
fn add_simple_extension_urn( &mut self, simple_extension_urn: &SimpleExtensionUrn, ) -> Result<&SimpleExtensions, ContextError>
Add a SimpleExtensionUrn to this context. Must return an error for duplicate anchors or when the urn is not supported.
This function must eagerly resolve and parse the simple extension, returning an error if either fails.
Sourcefn simple_extensions(
&self,
anchor: &Anchor<SimpleExtensionUrn>,
) -> Result<&SimpleExtensions, ContextError>
fn simple_extensions( &self, anchor: &Anchor<SimpleExtensionUrn>, ) -> Result<&SimpleExtensions, ContextError>
Returns the simple extensions for the given simple extension anchor.