Trait reflection::Reflection[][src]

pub trait Reflection {
    fn schema(id: Id) -> Schema;

    fn ty() -> Type { ... }
fn name() -> Name { ... }
fn members() -> Schemas { ... }
fn schemata() -> Schema { ... } }

Reflects type's fields' names and their type names.

Required Methods

Reflects field name, its type name and its members, by a tree of degree 1.

Provided Methods

Returns type construct.

Returns type name.

Reflects members' schema() by a forest of degree 1.

Reflects type's fields' names and their type names, by expanding schema() recursively.

Implementations on Foreign Types

impl Reflection for bool
[src]

impl Reflection for i8
[src]

impl Reflection for u8
[src]

impl Reflection for i16
[src]

impl Reflection for u16
[src]

impl Reflection for i32
[src]

impl Reflection for u32
[src]

impl Reflection for i64
[src]

impl Reflection for u64
[src]

impl Reflection for i128
[src]

impl Reflection for u128
[src]

impl Reflection for f32
[src]

impl Reflection for f64
[src]

impl<T: Reflection> Reflection for Range<T>
[src]

impl<'a> Reflection for &'a str
[src]

impl Reflection for String
[src]

impl<T: ?Sized> Reflection for *const T where
    T: Reflection
[src]

impl<T: ?Sized> Reflection for *mut T where
    T: Reflection
[src]

impl<T: ?Sized> Reflection for NonNull<T> where
    T: Reflection
[src]

impl<'a, T: ?Sized> Reflection for &'a T where
    T: 'a + Reflection
[src]

impl<'a, T: ?Sized> Reflection for &'a mut T where
    T: 'a + Reflection
[src]

impl<T: ?Sized> Reflection for Box<T> where
    T: Reflection
[src]

impl<T: ?Sized> Reflection for Rc<T> where
    T: Reflection
[src]

impl<T> Reflection for Vec<T> where
    T: Reflection
[src]

impl<T> Reflection for Option<T> where
    T: Reflection
[src]

impl<T, E> Reflection for Result<T, E> where
    T: Reflection,
    E: Reflection
[src]

impl<T: Reflection> Reflection for BTreeSet<T>
[src]

impl<T: Reflection> Reflection for HashSet<T>
[src]

impl<K, V> Reflection for BTreeMap<K, V> where
    K: Reflection,
    V: Reflection
[src]

impl<K, V> Reflection for HashMap<K, V> where
    K: Reflection,
    V: Reflection
[src]

impl<T> Reflection for [T] where
    T: Reflection
[src]

impl<T> Reflection for [T; 1] where
    T: Reflection
[src]

impl<T> Reflection for [T; 2] where
    T: Reflection
[src]

impl<T> Reflection for [T; 3] where
    T: Reflection
[src]

impl<T> Reflection for [T; 4] where
    T: Reflection
[src]

impl<T> Reflection for [T; 5] where
    T: Reflection
[src]

impl<T> Reflection for [T; 6] where
    T: Reflection
[src]

impl<T> Reflection for [T; 7] where
    T: Reflection
[src]

impl<T> Reflection for [T; 8] where
    T: Reflection
[src]

impl<T> Reflection for [T; 9] where
    T: Reflection
[src]

impl<T> Reflection for [T; 10] where
    T: Reflection
[src]

impl<T> Reflection for [T; 11] where
    T: Reflection
[src]

impl<T> Reflection for [T; 12] where
    T: Reflection
[src]

impl<T> Reflection for [T; 13] where
    T: Reflection
[src]

impl<T> Reflection for [T; 14] where
    T: Reflection
[src]

impl<T> Reflection for [T; 15] where
    T: Reflection
[src]

impl<T> Reflection for [T; 16] where
    T: Reflection
[src]

impl<T> Reflection for [T; 17] where
    T: Reflection
[src]

impl<T> Reflection for [T; 18] where
    T: Reflection
[src]

impl<T> Reflection for [T; 19] where
    T: Reflection
[src]

impl<T> Reflection for [T; 20] where
    T: Reflection
[src]

impl<T> Reflection for [T; 21] where
    T: Reflection
[src]

impl<T> Reflection for [T; 22] where
    T: Reflection
[src]

impl<T> Reflection for [T; 23] where
    T: Reflection
[src]

impl<T> Reflection for [T; 24] where
    T: Reflection
[src]

impl<T> Reflection for [T; 25] where
    T: Reflection
[src]

impl<T> Reflection for [T; 26] where
    T: Reflection
[src]

impl<T> Reflection for [T; 27] where
    T: Reflection
[src]

impl<T> Reflection for [T; 28] where
    T: Reflection
[src]

impl<T> Reflection for [T; 29] where
    T: Reflection
[src]

impl<T> Reflection for [T; 30] where
    T: Reflection
[src]

impl<T> Reflection for [T; 31] where
    T: Reflection
[src]

impl<T> Reflection for [T; 32] where
    T: Reflection
[src]

impl Reflection for ()
[src]

impl<T0> Reflection for (T0,) where
    T0: Reflection
[src]

impl<T0, T1> Reflection for (T0, T1) where
    T0: Reflection,
    T1: Reflection
[src]

impl<T0, T1, T2> Reflection for (T0, T1, T2) where
    T0: Reflection,
    T1: Reflection,
    T2: Reflection
[src]

impl<T0, T1, T2, T3> Reflection for (T0, T1, T2, T3) where
    T0: Reflection,
    T1: Reflection,
    T2: Reflection,
    T3: Reflection
[src]

impl<T0, T1, T2, T3, T4> Reflection for (T0, T1, T2, T3, T4) where
    T0: Reflection,
    T1: Reflection,
    T2: Reflection,
    T3: Reflection,
    T4: Reflection
[src]

impl<T0, T1, T2, T3, T4, T5> Reflection for (T0, T1, T2, T3, T4, T5) where
    T0: Reflection,
    T1: Reflection,
    T2: Reflection,
    T3: Reflection,
    T4: Reflection,
    T5: Reflection
[src]

Implementors