Uses of Interface
org.ek9lang.compiler.symbols.ConstraintExpr
Packages that use ConstraintExpr
Package
Description
I - PRE Intermediate Representation generation checks.
Contains critical general components used in the
Ek9Compiler listeners.
This is the main source of EK9 Symbols used within the compiler.
-
Uses of ConstraintExpr in org.ek9lang.compiler.phase5
Methods in org.ek9lang.compiler.phase5 that return ConstraintExprModifier and TypeMethodDescriptionConstrainedConstructionResolver.Site.constraint()Returns the value of theconstraintrecord component.Constructors in org.ek9lang.compiler.phase5 with parameters of type ConstraintExprModifierConstructorDescription(package private)Site(AggregateSymbol constrainedType, ConstraintExpr constraint, ISymbol argSymbol, ISymbol constructorParamType) Creates an instance of aSiterecord class. -
Uses of ConstraintExpr in org.ek9lang.compiler.support
Methods in org.ek9lang.compiler.support with parameters of type ConstraintExprModifier and TypeMethodDescriptionCompileTimeConstraintEvaluator.evaluate(String subjectText, String subjectTypeFqn, String promoteToTypeFqn, ConstraintExpr constraint) As above, but first applies the type's#^PROMOTION when the argument's own type is not the constrained base type.CompileTimeConstraintEvaluator.evaluate(String subjectText, String subjectTypeFqn, ConstraintExpr constraint) Evaluate the constraint against a constant subject. -
Uses of ConstraintExpr in org.ek9lang.compiler.support.inputvariety
Methods in org.ek9lang.compiler.support.inputvariety with parameters of type ConstraintExprModifier and TypeMethodDescription(package private) intEquivalenceClassModel.admissibleClassCount(String baseSimpleName, String baseFqn, ConstraintExpr constraint) How many ofbaseSimpleName's value-classes the constraint admits — the name-keyed core ofEquivalenceClassModel.constrainedVariety(IAggregateSymbol), package-private so it is unit-testable without constructing symbols (the same split asEquivalenceClassModel.varietyOf(String, String)). -
Uses of ConstraintExpr in org.ek9lang.compiler.symbolic
Methods in org.ek9lang.compiler.symbolic with parameters of type ConstraintExprModifier and TypeMethodDescriptionConstraintValueSearch.admissibleValues(String baseTypeFqn, ConstraintExpr constraint) Values ofbaseTypeFqnthat provably satisfyconstraint, most useful first, or an empty list when probing found none.static booleanConstraintSatisfiability.admitsNoValue(String baseTypeFqn, ConstraintExpr constraint) Whether no value ofbaseTypeFqncan possibly satisfyconstraint.ConstraintLiterals.distinctSuffixes(ConstraintExpr expr) Every distinct non-empty suffix the constraint's literals carry, in first-seen order.static StringConstraintSatisfiability.whyNoValue(String baseTypeFqn, ConstraintExpr constraint) A human-readable proof for the error message, or null when the constraint is not provably empty.static long[]ConstraintWindows.windowOf(ConstraintExpr constraint) The inclusive numeric window[lo,hi]an Integer constraint narrows to, or null when it is not a decidable numeric window. -
Uses of ConstraintExpr in org.ek9lang.compiler.symbols
Classes in org.ek9lang.compiler.symbols that implement ConstraintExprModifier and TypeClassDescriptionstatic final recordA boolean combination of two constraints.static final recordA leaf: the implicit subject value compared against a literal viaoperator(default==;!=normalised to<>, matching phase 3 / IR lowering).Methods in org.ek9lang.compiler.symbols that return ConstraintExprModifier and TypeMethodDescriptionAggregateSymbol.getConstraint()The constraint model for a CLASS_CONSTRAINED aggregate, or null if none/not modellable.ConstraintExpr.Combination.left()Returns the value of theleftrecord component.ConstraintExpr.Combination.right()Returns the value of therightrecord component.Methods in org.ek9lang.compiler.symbols with parameters of type ConstraintExprModifier and TypeMethodDescriptionstatic StringConstraintExpr.render(ConstraintExpr expr) THE rendering of a constraint back to its EK9 source form —>= 16 and <= 100.voidAggregateSymbol.setConstraint(ConstraintExpr constraint) Constructors in org.ek9lang.compiler.symbols with parameters of type ConstraintExprModifierConstructorDescriptionCombination(String booleanOp, ConstraintExpr left, ConstraintExpr right) Creates an instance of aCombinationrecord class.