Skip to main content

TypeResolver

Trait TypeResolver 

Source
pub trait TypeResolver: Send + Sync {
    // Required method
    fn resolve_named_type(
        &self,
        name: &str,
        args: &[ResolvedType],
    ) -> Option<ResolvedLeafType>;
}
Expand description

Resolves one named leaf type for CEL type expressions.

Implementations return None when name is unknown. Recursive array and tuple composition is performed by TypeExpr::resolve, so a resolver only needs to recognize leaf names.

Required Methods§

Source

fn resolve_named_type( &self, name: &str, args: &[ResolvedType], ) -> Option<ResolvedLeafType>

Returns the registered leaf type named name applying args (already resolved), or None if name/args is unrecognized. args is empty for a plain (non-generic) name.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<const N: usize> TypeResolver for [(&'static str, ResolvedLeafType); N]

Implementors§