Visitor

Trait Visitor 

Source
pub trait Visitor: Sized {
    type Output: Combine;

Show 13 methods // Provided methods fn visit_schema_inputs( &mut self, s: &mut Schema, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_schema_outputs( &mut self, s: &mut Schema, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_function_inputs( &mut self, f: &mut Function, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_function_outputs( &mut self, f: &mut Function, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_type( &mut self, t: &mut Type, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_enum( &mut self, e: &mut Enum, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_variant( &mut self, v: &mut Variant, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_struct( &mut self, s: &mut Struct, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_primitive( &mut self, p: &mut Primitive, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_type_parameter( &mut self, _p: &mut TypeParameter, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_field( &mut self, f: &mut Field, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_type_ref( &mut self, type_ref: &mut TypeReference, ) -> ControlFlow<Self::Output, Self::Output> { ... } fn visit_top_level_name( &mut self, _name: &mut String, ) -> ControlFlow<Self::Output, Self::Output> { ... }
}
Expand description

A trait for traversing a Schema and its children.

Required Associated Types§

Source

type Output: Combine

Provided Methods§

Source

fn visit_schema_inputs( &mut self, s: &mut Schema, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_schema_outputs( &mut self, s: &mut Schema, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_function_inputs( &mut self, f: &mut Function, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_function_outputs( &mut self, f: &mut Function, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_type( &mut self, t: &mut Type, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_enum( &mut self, e: &mut Enum, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_variant( &mut self, v: &mut Variant, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_struct( &mut self, s: &mut Struct, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_primitive( &mut self, p: &mut Primitive, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_type_parameter( &mut self, _p: &mut TypeParameter, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_field( &mut self, f: &mut Field, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_type_ref( &mut self, type_ref: &mut TypeReference, ) -> ControlFlow<Self::Output, Self::Output>

Source

fn visit_top_level_name( &mut self, _name: &mut String, ) -> ControlFlow<Self::Output, Self::Output>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§