All Classes and Interfaces
Class
Description
Incremental and non-stopping compiler for SCCs.
Tyck statements in SCC.
Expression: where am I?
Top-level expression may not need parentheses, stone free!
An argument of an application! Stay in parentheses!
An operand of a binary application! Applications within are safe,
but other binary applications are in danger!
Codomain of a telescope
We think of all cubical reductions as beta reductions.
Introduces a locally bound variable to the context.
This exists solely for simplifying code in the tycker.
Resolve calls and build call graph of recursive functions,
after
StmtTycker.Concrete classable definitions, corresponding to
ClassDef.A capture group, see
CodeShape.CtorShape and ShapeMatcher.captures()Typed capture name, rather than plain strings
The shape to Sort term, I am not very work well at type theory, so improve this feel free!
Do not need to use
Doc,
because we do not care about output format.Common parts of concrete definitions.
The .ayac file representation.
This is the 2.5-th base class of a tycker.
IApplyConfluence lmaoIt's the pretty printer.
core data definition, corresponding to
TeleDecl.DataDeclGeneric concrete definitions, corresponding to
GenericDef.Denotes that the definition can be defined at top-level
Signature of a definition, used in concrete and tycking.
Elimination rules.
A convenient interface to obtain an endomorphism on `Expr`.
A convenient interface to obtain an endomorphism on `Term`.
A lift but in American English.
subst all binding to corresponding MetaPat
A traversal that disallow Pat.Meta
Not an IntelliJ Renamer.
Performs capture-avoiding substitution.
Array Expr
Array Comp(?)
calls to
PrimDef.ID.COE
PrimDef.ID.COEFILL
PrimDef.ID.COEINV
PrimDef.ID.COEINVFILL
desugared from Expr.RawProj for simplicity.Let Expression
partial element
generalized path type
Sugared overloaded projection as coercion syntax
def infix + add (a b : Nat) => ...
Resolves bindings.
Term formers, definitely.
Not generated
This is the third base-base class of a tycker.
A code snippet.
A code block.
Constraints on a meta variable.
The meta variable is a type.
The meta variable is the domain of a pi type which is of a known type.
The type of the meta is known.
This is the 2.25-th base class of a tycker.
CheckedTriConsumer
A data class that contains all public definitions/re-exports of some module.
This interface represents a name to some module,
which can be a relative `
ModuleName.ThisRef` or a qualified name `ModuleName.Qualified`.An absolute path to a module.
A container of symbols.
Partial elements.
Type of partial elements.
Patterns in the core syntax.
Meta for Hole
It's 'pre' because there are also impossible clauses, which are removed after tycking.
'Generalized path' syntax.
Matches a term with a pattern.
Patterns in the concrete syntax.
Represent a
(Pattern) as bind patternSugared List Pattern
A Pattern Tycker for only one use.
The unification of patterns.
This is the fifth base-base class of a tycker.
Result.Default.type is the type of Result.Default.wellTyped.serialized
AyaShapeSerialized version of
BindBlockSerialized version of
OpDecl.OpInfoTo use serialized operators in
AyaBinOpSetSerialized version of
ResolveInfo.RenamedOpDeclserialized
ShapeRecognition What should I do after I creating a new Shape?
Concrete version of RefFinder but only header is searched.
Cubical-stable WHNF: those who will not change to other term formers
after a substitution (this usually happens under face restrictions (aka cofibrations)).
This is the second base-base class of a tycker.
Resolves expressions inside stmts, after
StmtShallowResolversimply adds all top-level names to the context
core struct definition, corresponding to
TeleDecl.StructDeclFields or constructors, in contrast to
TopLevelDef."Substitution object"
Similar to
GetTypeVisitor in Arend.Concrete telescopic definition, corresponding to
Def.Concrete data definition
Concrete function definition
Concrete structure definition
A well-typed and terminating term.
Bidirectional unification of terms, with abstract
TermComparator.solveMeta(org.aya.core.term.MetaTerm, org.aya.core.term.Term, org.aya.tyck.unify.TermComparator.Sub, org.aya.tyck.unify.TermComparator.Sub, org.aya.core.term.Term).A convenient interface to consume a `Term`.
Top-level definitions.
This is the base-base class of a tycker.
body order
header order
Currently we only deal with ambiguous equations (so no 'stuck' equations).
This is the fourth base-base class of a tycker.
This class implements pattern unification with delayed constraints solving.
Definitions by user.
YouTrack checks confluence.
Instantiates holes (assuming all holes are solved).