Skip to main content

KorokPlugin

Trait KorokPlugin 

Source
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§

Source

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.

Source

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.

Source

fn on_initialized( &self, _visitable: &mut dyn KorokVisitable, ) -> CodamaResult<()>

Source

fn on_fields_set(&self, _visitable: &mut dyn KorokVisitable) -> CodamaResult<()>

Source

fn on_program_items_set( &self, _visitable: &mut dyn KorokVisitable, ) -> CodamaResult<()>

Source

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".

Implementors§