Skip to main content

Visitable

Trait Visitable 

Source
pub trait Visitable: Normalize + Validate {
    // Provided methods
    fn type_identity(&self) -> &'static str { ... }
    fn drive(&self, _: &mut dyn VisitorCore) { ... }
    fn drive_mut(&mut self, _: &mut dyn VisitorMutCore) { ... }
}
Expand description

A node that participates in visitor-based traversal.

Invariants:

  • Traversal is owned by the visitor, not by normalize/validate hooks.
  • drive / drive_mut describe structure only.
  • No validation or normalization logic lives here.

Provided Methods§

Source

fn type_identity(&self) -> &'static str

Return the concrete Rust application-value type used for callback diagnostics.

Source

fn drive(&self, _: &mut dyn VisitorCore)

Source

fn drive_mut(&mut self, _: &mut dyn VisitorMutCore)

Dyn Compatibility§

This trait is dyn compatible.

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

Implementations on Foreign Types§

Source§

impl Visitable for String

Source§

impl Visitable for bool

Source§

impl Visitable for f32

Source§

impl Visitable for f64

Source§

impl Visitable for i8

Source§

impl Visitable for i16

Source§

impl Visitable for i32

Source§

impl Visitable for i64

Source§

impl Visitable for i128

Source§

impl Visitable for u8

Source§

impl Visitable for u16

Source§

impl Visitable for u32

Source§

impl Visitable for u64

Source§

impl Visitable for u128

Source§

impl<T: Visitable> Visitable for Box<T>

Source§

fn type_identity(&self) -> &'static str

Source§

fn drive(&self, visitor: &mut dyn VisitorCore)

Source§

fn drive_mut(&mut self, visitor: &mut dyn VisitorMutCore)

Source§

impl<T: Visitable> Visitable for Option<T>

Source§

fn drive(&self, visitor: &mut dyn VisitorCore)

Source§

fn drive_mut(&mut self, visitor: &mut dyn VisitorMutCore)

Source§

impl<T: Visitable> Visitable for Vec<T>

Source§

fn drive(&self, visitor: &mut dyn VisitorCore)

Source§

fn drive_mut(&mut self, visitor: &mut dyn VisitorMutCore)

Implementors§

Source§

impl Visitable for Account

Source§

impl Visitable for AddressLine

Source§

impl Visitable for Blob

Source§

impl Visitable for CityName

Source§

impl Visitable for Code

Source§

impl Visitable for Constant

Source§

impl Visitable for CountryCode

Source§

impl Visitable for Date

Source§

impl Visitable for Decimal

Source§

impl Visitable for DecimalRange

Source§

impl Visitable for Degrees

Source§

impl Visitable for Duration

Source§

impl Visitable for DurationRange

Source§

impl Visitable for E8s

Source§

impl Visitable for E18s

Source§

impl Visitable for Field

Source§

impl Visitable for Float32

Source§

impl Visitable for Float64

Source§

impl Visitable for Function

Source§

impl Visitable for Int32Range

Source§

impl Visitable for IntBig

Source§

impl Visitable for LanguageCode

Source§

impl Visitable for Map

Source§

impl Visitable for Memo

Source§

impl Visitable for Milliseconds

Source§

impl Visitable for MimeType

Source§

impl Visitable for Minutes

Source§

impl Visitable for Nat32Range

Source§

impl Visitable for NatBig

Source§

impl Visitable for icydb_model::base::types::ic::icp::Payment

Source§

impl Visitable for icydb_model::base::types::ic::icrc1::Payment

Source§

impl Visitable for Percent

Source§

impl Visitable for PercentModifier

Source§

impl Visitable for PhoneNumber

Source§

impl Visitable for PostalCode

Source§

impl Visitable for Principal

Source§

impl Visitable for RegionName

Source§

impl Visitable for Rgb

Source§

impl Visitable for RgbHex

Source§

impl Visitable for Rgba

Source§

impl Visitable for RgbaHex

Source§

impl Visitable for Seconds

Source§

impl Visitable for Sha256

Source§

impl Visitable for Subaccount

Source§

impl Visitable for Timestamp

Source§

impl Visitable for TokenAmount

Source§

impl Visitable for icydb_model::base::types::ic::icp::Tokens

Source§

impl Visitable for icydb_model::base::types::ic::icrc1::Tokens

Source§

impl Visitable for Ulid

Source§

impl Visitable for Unit

Source§

impl Visitable for Url

Source§

impl Visitable for Usd

Source§

impl Visitable for Utf8

Source§

impl Visitable for Value

Source§

impl Visitable for Variable

Source§

impl Visitable for Variant