Equations
Instances For
Two names are from the same lexical scope if their scoping information modulo MacroScopesView.name
is equal.
Equations
Instances For
If ref
does not have position information, then try to use macroStack
Equations
Instances For
Equations
Instances For
Equations
Instances For
Equations
Instances For
Equations
Instances For
Equations
Instances For
Equations
Instances For
Equations
Instances For
Registers a macro expander for a given syntax node kind.
A macro expander should have type Lean.Macro
(which is Lean.Syntax → Lean.MacroM Lean.Syntax
),
i.e. should take syntax of the given syntax node kind as a parameter and produce different syntax
in the same syntax category.
The macro_rules
and macro
commands should usually be preferred over using this attribute
directly.
Try to expand macro at syntax tree root and return macro declaration name and new syntax if successful.
Return none if all macros threw Macro.Exception.unsupportedSyntax
.
Equations
Instances For
- getCurrMacroScope : m MacroScope
- getNextMacroScope : m MacroScope
- setNextMacroScope : MacroScope → m Unit
Instances
Equations
Equations
Instances For
Equations
Instances For
Equations
Instances For
If x
throws an exception, catch it and turn it into a log message (using logException
).