pub trait KorokPlugin {
// Provided methods
fn resolve_type_directive(
&self,
_directive: &ResolvableDirective,
_resolver: &dyn DirectiveResolver,
) -> Option<CodamaResult<RegisteredTypeNode>> { ... }
fn resolve_value_directive(
&self,
_directive: &ResolvableDirective,
_resolver: &dyn DirectiveResolver,
) -> Option<CodamaResult<InstructionInputValueNode>> { ... }
fn on_initialized(
&self,
_visitable: &mut dyn KorokVisitable,
) -> CodamaResult<()> { ... }
fn on_fields_set(
&self,
_visitable: &mut dyn KorokVisitable,
) -> CodamaResult<()> { ... }
fn on_program_items_set(
&self,
_visitable: &mut dyn KorokVisitable,
) -> CodamaResult<()> { ... }
fn on_root_node_set(
&self,
_visitable: &mut dyn KorokVisitable,
) -> CodamaResult<()> { ... }
}Provided Methods§
Sourcefn resolve_type_directive(
&self,
_directive: &ResolvableDirective,
_resolver: &dyn DirectiveResolver,
) -> Option<CodamaResult<RegisteredTypeNode>>
fn resolve_type_directive( &self, _directive: &ResolvableDirective, _resolver: &dyn DirectiveResolver, ) -> Option<CodamaResult<RegisteredTypeNode>>
Try to resolve a resolvable type directive belonging to this plugin.
Returns None if this plugin does not handle the given directive.
Sourcefn resolve_value_directive(
&self,
_directive: &ResolvableDirective,
_resolver: &dyn DirectiveResolver,
) -> Option<CodamaResult<InstructionInputValueNode>>
fn resolve_value_directive( &self, _directive: &ResolvableDirective, _resolver: &dyn DirectiveResolver, ) -> Option<CodamaResult<InstructionInputValueNode>>
Try to resolve a resolvable value directive belonging to this plugin.
Returns None if this plugin does not handle the given directive.
fn on_initialized( &self, _visitable: &mut dyn KorokVisitable, ) -> CodamaResult<()>
fn on_fields_set(&self, _visitable: &mut dyn KorokVisitable) -> CodamaResult<()>
fn on_program_items_set( &self, _visitable: &mut dyn KorokVisitable, ) -> CodamaResult<()>
fn on_root_node_set( &self, _visitable: &mut dyn KorokVisitable, ) -> CodamaResult<()>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".