Documentation

Lean.KeyedDeclsAttribute

A builder for attributes that are applied to declarations of a common type and group them by the given attribute argument (an arbitrary Name, currently). Also creates a second "builtin" attribute used for bootstrapping, which saves the applied declarations in an IO.Ref instead of an environment extension.

Used to register elaborators, macros, tactics, and delaborators.

structure Lean.KeyedDeclsAttribute.Def (γ : Type) :
Type

KeyedDeclsAttribute definition.

Important: mkConst valueTypeName and γ must be definitionally equal.

Equations
  • One or more equations did not get rendered due to their size.
Equations
  • Lean.KeyedDeclsAttribute.instInhabitedExtensionState = { default := { newEntries := default, table := default, declNames := default, erased := default } }
def Lean.KeyedDeclsAttribute.addBuiltin {γ : Type} (attr : Lean.KeyedDeclsAttribute γ) (key : Lean.KeyedDeclsAttribute.Key) (declName : Lean.Name) (value : γ) :
Equations
  • One or more equations did not get rendered due to their size.
Equations
  • One or more equations did not get rendered due to their size.
Equations
  • One or more equations did not get rendered due to their size.
Equations
  • One or more equations did not get rendered due to their size.

Retrieve entries tagged with [attr key] or [builtinAttr key].

Equations
  • One or more equations did not get rendered due to their size.

Retrieve values tagged with [attr key] or [builtinAttr key].

Equations