Structure methods that require MetaM infrastructure #
If struct is an application of the form S .. with S a constant for a structure,
returns the name of the structure, otherwise throws an error.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Structure projection declaration for mkProjections.
Instances For
Adds projection functions to the environment for the one-constructor inductive type named n.
- The
projNames in eachStructProjDeclare used for the names of the declarations added to the environment. - If
instImplicitis true, then generates projections withselfbeing instance implicit.
Notes:
- This function supports everything that
Expr.projsupports (seelean::type_checker::infer_proj). This means we can generate projections for inductive types with one-constructor, even if it is an indexed family (which is not supported by thestructurecommand). - We throw errors in the cases that
Expr.projis not type-correct.
Equations
- One or more equations did not get rendered due to their size.