Trait formality_core::language::Language
source · pub trait Language: 'static + Copy + Ord + Hash + Debug + Default {
type Kind: Copy + CoreTerm<Self>;
type Parameter: HasKind<Self> + CoreTerm<Self> + UpcastFrom<CoreVariable<Self>> + UpcastFrom<CoreUniversalVar<Self>> + UpcastFrom<CoreExistentialVar<Self>> + UpcastFrom<CoreBoundVar<Self>>;
const NAME: &'static str;
const BINDING_OPEN: char;
const BINDING_CLOSE: char;
}
Expand description
The definition of a “language”
Required Associated Types§
sourcetype Kind: Copy + CoreTerm<Self>
type Kind: Copy + CoreTerm<Self>
An enum defining the kinds of generic parameters (e.g., for Rust, types, lifetimes, and constants).
sourcetype Parameter: HasKind<Self> + CoreTerm<Self> + UpcastFrom<CoreVariable<Self>> + UpcastFrom<CoreUniversalVar<Self>> + UpcastFrom<CoreExistentialVar<Self>> + UpcastFrom<CoreBoundVar<Self>>
type Parameter: HasKind<Self> + CoreTerm<Self> + UpcastFrom<CoreVariable<Self>> + UpcastFrom<CoreUniversalVar<Self>> + UpcastFrom<CoreExistentialVar<Self>> + UpcastFrom<CoreBoundVar<Self>>
An enum defining the value of a generic parameter (e.g., a type, a lifetime, etc)
Required Associated Constants§
sourceconst BINDING_OPEN: char
const BINDING_OPEN: char
The character (typically <
) used to open binders.
sourceconst BINDING_CLOSE: char
const BINDING_CLOSE: char
The character (typically >
) used to open binders.
Object Safety§
This trait is not object safe.