pub trait BinVisitor {
    type Error;

Show 30 methods // Provided methods fn traverse_entry(&mut self, value: &BinEntry) -> Result<(), Self::Error> { ... } fn visit_type(&mut self, _btype: BinType) -> bool { ... } fn visit_entry(&mut self, _value: &BinEntry) -> Result<bool, Self::Error> { ... } fn visit_field(&mut self, value: &BinField) -> Result<bool, Self::Error> { ... } fn visit_none(&mut self, _value: &BinNone) -> Result<(), Self::Error> { ... } fn visit_bool(&mut self, _value: &BinBool) -> Result<(), Self::Error> { ... } fn visit_s8(&mut self, _value: &BinS8) -> Result<(), Self::Error> { ... } fn visit_u8(&mut self, _value: &BinU8) -> Result<(), Self::Error> { ... } fn visit_s16(&mut self, _value: &BinS16) -> Result<(), Self::Error> { ... } fn visit_u16(&mut self, _value: &BinU16) -> Result<(), Self::Error> { ... } fn visit_s32(&mut self, _value: &BinS32) -> Result<(), Self::Error> { ... } fn visit_u32(&mut self, _value: &BinU32) -> Result<(), Self::Error> { ... } fn visit_s64(&mut self, _value: &BinS64) -> Result<(), Self::Error> { ... } fn visit_u64(&mut self, _value: &BinU64) -> Result<(), Self::Error> { ... } fn visit_float(&mut self, _value: &BinFloat) -> Result<(), Self::Error> { ... } fn visit_vec2(&mut self, _value: &BinVec2) -> Result<(), Self::Error> { ... } fn visit_vec3(&mut self, _value: &BinVec3) -> Result<(), Self::Error> { ... } fn visit_vec4(&mut self, _value: &BinVec4) -> Result<(), Self::Error> { ... } fn visit_matrix(&mut self, _value: &BinMatrix) -> Result<(), Self::Error> { ... } fn visit_color(&mut self, _value: &BinColor) -> Result<(), Self::Error> { ... } fn visit_string(&mut self, _value: &BinString) -> Result<(), Self::Error> { ... } fn visit_hash(&mut self, _value: &BinHash) -> Result<(), Self::Error> { ... } fn visit_path(&mut self, _value: &BinPath) -> Result<(), Self::Error> { ... } fn visit_list(&mut self, value: &BinList) -> Result<bool, Self::Error> { ... } fn visit_struct(&mut self, _value: &BinStruct) -> Result<bool, Self::Error> { ... } fn visit_embed(&mut self, _value: &BinEmbed) -> Result<bool, Self::Error> { ... } fn visit_link(&mut self, _value: &BinLink) -> Result<(), Self::Error> { ... } fn visit_option(&mut self, value: &BinOption) -> Result<bool, Self::Error> { ... } fn visit_map(&mut self, _value: &BinMap) -> Result<bool, Self::Error> { ... } fn visit_flag(&mut self, _value: &BinFlag) -> Result<(), Self::Error> { ... }
}
Expand description

Interface to visit values of nested bin values

Visit methods of nested types can return false to not visit nested values. By default, everything is visited.

visit_type() can be used to easily ignore some types. It is used for default implementations and internal shortcuts.

Required Associated Types§

Provided Methods§

source

fn traverse_entry(&mut self, value: &BinEntry) -> Result<(), Self::Error>

Called to visit an entry

This method exists so an implementation can execute code after an entry has been visited.

source

fn visit_type(&mut self, _btype: BinType) -> bool

Return true to visit given type

source

fn visit_entry(&mut self, _value: &BinEntry) -> Result<bool, Self::Error>

source

fn visit_field(&mut self, value: &BinField) -> Result<bool, Self::Error>

source

fn visit_none(&mut self, _value: &BinNone) -> Result<(), Self::Error>

source

fn visit_bool(&mut self, _value: &BinBool) -> Result<(), Self::Error>

source

fn visit_s8(&mut self, _value: &BinS8) -> Result<(), Self::Error>

source

fn visit_u8(&mut self, _value: &BinU8) -> Result<(), Self::Error>

source

fn visit_s16(&mut self, _value: &BinS16) -> Result<(), Self::Error>

source

fn visit_u16(&mut self, _value: &BinU16) -> Result<(), Self::Error>

source

fn visit_s32(&mut self, _value: &BinS32) -> Result<(), Self::Error>

source

fn visit_u32(&mut self, _value: &BinU32) -> Result<(), Self::Error>

source

fn visit_s64(&mut self, _value: &BinS64) -> Result<(), Self::Error>

source

fn visit_u64(&mut self, _value: &BinU64) -> Result<(), Self::Error>

source

fn visit_float(&mut self, _value: &BinFloat) -> Result<(), Self::Error>

source

fn visit_vec2(&mut self, _value: &BinVec2) -> Result<(), Self::Error>

source

fn visit_vec3(&mut self, _value: &BinVec3) -> Result<(), Self::Error>

source

fn visit_vec4(&mut self, _value: &BinVec4) -> Result<(), Self::Error>

source

fn visit_matrix(&mut self, _value: &BinMatrix) -> Result<(), Self::Error>

source

fn visit_color(&mut self, _value: &BinColor) -> Result<(), Self::Error>

source

fn visit_string(&mut self, _value: &BinString) -> Result<(), Self::Error>

source

fn visit_hash(&mut self, _value: &BinHash) -> Result<(), Self::Error>

source

fn visit_path(&mut self, _value: &BinPath) -> Result<(), Self::Error>

source

fn visit_list(&mut self, value: &BinList) -> Result<bool, Self::Error>

source

fn visit_struct(&mut self, _value: &BinStruct) -> Result<bool, Self::Error>

source

fn visit_embed(&mut self, _value: &BinEmbed) -> Result<bool, Self::Error>

source

fn visit_option(&mut self, value: &BinOption) -> Result<bool, Self::Error>

source

fn visit_map(&mut self, _value: &BinMap) -> Result<bool, Self::Error>

source

fn visit_flag(&mut self, _value: &BinFlag) -> Result<(), Self::Error>

Implementors§