Trait Tapi

Source
pub trait Tapi: 'static {
    // Required methods
    fn name() -> &'static str;
    fn kind() -> TypeKind;

    // Provided methods
    fn id() -> TypeId { ... }
    fn dependencies() -> Vec<DynTapi> { ... }
    fn path() -> Vec<&'static str> { ... }
    fn boxed() -> DynTapi
       where Self: Sized + 'static { ... }
    fn all_dependencies() -> Vec<DynTapi>
       where Self: Sized { ... }
}

Required Methods§

Source

fn name() -> &'static str

Source

fn kind() -> TypeKind

Provided Methods§

Source

fn id() -> TypeId

Source

fn dependencies() -> Vec<DynTapi>

Source

fn path() -> Vec<&'static str>

Source

fn boxed() -> DynTapi
where Self: Sized + 'static,

Source

fn all_dependencies() -> Vec<DynTapi>
where Self: Sized,

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.

Implementations on Foreign Types§

Source§

impl Tapi for Value

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for bool

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for char

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for f32

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for f64

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for i8

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for i16

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for i32

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for i64

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for i128

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for u8

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for u16

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for u32

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for u64

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for u128

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for ()

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for usize

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl Tapi for String

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<A: 'static + Tapi, B: 'static + Tapi> Tapi for (A, B)

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<A: 'static + Tapi, B: 'static + Tapi, C: 'static + Tapi> Tapi for (A, B, C)

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<A: 'static + Tapi, B: 'static + Tapi, C: 'static + Tapi, D: 'static + Tapi> Tapi for (A, B, C, D)

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<K: 'static + Tapi, V: 'static + Tapi> Tapi for IndexMap<K, V>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<K: 'static + Tapi, V: 'static + Tapi> Tapi for BTreeMap<K, V>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<K: 'static + Tapi, V: 'static + Tapi> Tapi for HashMap<K, V>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for Option<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for IndexSet<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for Box<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for BTreeSet<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for Rc<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for Arc<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for Vec<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for Cell<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for RefCell<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<T: Tapi + 'static> Tapi for HashSet<T>

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Source§

impl<const N: usize, T: Tapi + 'static> Tapi for [T; N]

Source§

fn name() -> &'static str

Source§

fn id() -> TypeId

Source§

fn kind() -> TypeKind

Source§

fn path() -> Vec<&'static str>

Implementors§