Instances For
Instances For
- ref : Lean.Syntax
- modifiers : Lean.Elab.Modifiers
- declName : Lake.Name
- binders : Lean.Syntax
- type? : Option Lean.Syntax
Instances For
- ref : Lean.Syntax
- modifiers : Lean.Syntax
- fieldId : Lake.Name
- type : Lean.Term
- matchAlts : Lean.TSyntax `Lean.Parser.Term.matchAlts
Instances For
- ref : Lean.Syntax
- declId : Lean.Syntax
- modifiers : Lean.Elab.Modifiers
- shortDeclName : Lake.Name
- declName : Lake.Name
- binders : Lean.Syntax
- type? : Option Lean.Syntax
- ctors : Array Lean.Elab.Command.CtorView
- derivingClasses : Array Lean.Elab.DerivingClassView
- computedFields : Array Lean.Elab.Command.ComputedFieldView
Instances For
- lctx : Lean.LocalContext
- localInsts : Lean.LocalInstances
- type : Lean.Expr
Instances For
Return some ?m
if u
is of the form ?m + k
.
Return none if u
does not contain universe metavariables.
Throw exception otherwise.
Instances For
Instances For
Auxiliary function for updateResultingUniverse
accLevel u r rOffset
add u
to state if it is not already there and
it is different from the resulting universe level r+rOffset
.
If u
is a max
, then its components are recursively processed.
If u
is a succ
and rOffset > 0
, we process the u
s child using rOffset-1
.
This method is used to infer the resulting universe level of an inductive datatype.
Instances For
Instances For
Auxiliary function for updateResultingUniverse
accLevelAtCtor ctor ctorParam r rOffset
add u
(ctorParam
's universe) to state if it is not already there and
it is different from the resulting universe level r+rOffset
.
See accLevel
.
Instances For
Execute k
using the Syntax
reference associated with constructor ctorName
.