pub trait DirectiveResolver {
// Required methods
fn resolve_type_directive(
&self,
directive: &ResolvableDirective,
) -> CodamaResult<RegisteredTypeNode>;
fn resolve_value_directive(
&self,
directive: &ResolvableDirective,
) -> CodamaResult<InstructionInputValueNode>;
}Expand description
Trait that allows plugins to resolve directives from other plugins.
The framework builds a DirectiveResolver from all installed plugins
and passes it to resolve_type_directive / resolve_value_directive.
Required Methods§
Sourcefn resolve_type_directive(
&self,
directive: &ResolvableDirective,
) -> CodamaResult<RegisteredTypeNode>
fn resolve_type_directive( &self, directive: &ResolvableDirective, ) -> CodamaResult<RegisteredTypeNode>
Resolve a resolvable directive into a type node. Returns an error if no plugin can resolve it.
Sourcefn resolve_value_directive(
&self,
directive: &ResolvableDirective,
) -> CodamaResult<InstructionInputValueNode>
fn resolve_value_directive( &self, directive: &ResolvableDirective, ) -> CodamaResult<InstructionInputValueNode>
Resolve a resolvable directive into an instruction input value node. Returns an error if no plugin can resolve it.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".