pub enum AttributeKind {
Simp,
Ext,
Instance,
Reducible,
Irreducible,
Inline,
NoInline,
SpecializeAttr,
Custom(String),
}Expand description
Typed attribute kinds for declarations.
In Lean 4, attributes like @[simp], @[ext], @[reducible] control
how the elaborator and tactics treat definitions.
Variants§
Simp
@[simp] - add to the simp set
Ext
@[ext] - extensionality lemma
Instance
@[instance] - typeclass instance
Reducible
@[reducible] - mark as reducible for definitional equality
Irreducible
@[irreducible] - mark as irreducible
Inline
@[inline] - inline during compilation
NoInline
@[noinline] - do not inline
SpecializeAttr
@[specialize] - specialization hint
Custom(String)
Custom user attribute
Implementations§
Trait Implementations§
Source§impl Clone for AttributeKind
impl Clone for AttributeKind
Source§fn clone(&self) -> AttributeKind
fn clone(&self) -> AttributeKind
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AttributeKind
impl Debug for AttributeKind
Source§impl Display for AttributeKind
impl Display for AttributeKind
Source§impl PartialEq for AttributeKind
impl PartialEq for AttributeKind
impl Eq for AttributeKind
impl StructuralPartialEq for AttributeKind
Auto Trait Implementations§
impl Freeze for AttributeKind
impl RefUnwindSafe for AttributeKind
impl Send for AttributeKind
impl Sync for AttributeKind
impl Unpin for AttributeKind
impl UnsafeUnpin for AttributeKind
impl UnwindSafe for AttributeKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more