java.lang.Object
org.aya.normalize.Normalizer
- All Implemented Interfaces:
Function<org.aya.syntax.core.term.Term,,org.aya.syntax.core.term.Term> UnaryOperator<org.aya.syntax.core.term.Term>
public final class Normalizer
extends Object
implements UnaryOperator<org.aya.syntax.core.term.Term>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.aya.syntax.core.term.Termapply(org.aya.syntax.core.term.Term term) @NotNull org.aya.syntax.core.term.Termnormalize(org.aya.syntax.core.term.Term term, org.aya.syntax.literate.CodeOptions.NormalizeMode mode) Do NOT use this in the type checker.@NotNull kala.control.Option<org.aya.syntax.core.term.Term> tryUnfoldClauses(@NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.term.Term.Matching> clauses, @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.term.Term> args, int ulift, boolean orderIndependent)
-
Field Details
-
state
-
opaque
@NotNull public @NotNull kala.collection.immutable.ImmutableSet<org.aya.syntax.ref.AnyVar> opaque
-
-
Constructor Details
-
Normalizer
-
-
Method Details
-
apply
public org.aya.syntax.core.term.Term apply(org.aya.syntax.core.term.Term term) -
tryUnfoldClauses
@NotNull public @NotNull kala.control.Option<org.aya.syntax.core.term.Term> tryUnfoldClauses(@NotNull @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.term.Term.Matching> clauses, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.term.Term> args, int ulift, boolean orderIndependent) -
normalize
@NotNull public @NotNull org.aya.syntax.core.term.Term normalize(org.aya.syntax.core.term.Term term, org.aya.syntax.literate.CodeOptions.NormalizeMode mode) Do NOT use this in the type checker. This is for REPL/literate mode and testing.
-