Uses of Class
org.ek9lang.antlr.EK9Parser.ExpressionContext
Packages that use EK9Parser.ExpressionContext
Package
Description
E - Initial Symbol definition by traversing the 'ANTLR' - 'AST'.
G - Full Symbol Resolution can now take place.
I - PRE Intermediate Representation generation checks.
Call graph infrastructure for EK9 compiler static analysis.
THE automatic source repairs - one engine for every door (
ek9 -ff, ek9_format, the MCP editors,
ek9_write_file, ek9_edit_file, ek9_compile).THE string-expression primitives the selection- and cursor-driven editors share (was the one grab-bag
StringExpressionClassifier): the + chain (IsAddExpression,
WholeAddChain), the single String literal
(StringLiteralOf,
IsSingleStringLiteral), and the finders - by selection
(ExpressionSpanningSelection) or by cursor
(ExpressionAtCursor,
ConcatAtCursor,
StringLiteralAtCursor,
TextMethodAtCursor), all over
SmallestExpression.Contains critical general components used in the
Ek9Compiler listeners.THE reading of a statement that stores the object in one of its OWN properties -
me: this,
next := this, this.owner :=? this - a property of the object's own type that refers back to it
(StoredProperty).-
Uses of EK9Parser.ExpressionContext in org.ek9lang.antlr
Fields in org.ek9lang.antlr declared as EK9Parser.ExpressionContextModifier and TypeFieldDescriptionEK9Parser.ExpressionContext.controlEK9Parser.PreFlowAndControlContext.controlEK9Parser.WhileStatementExpressionContext.controlEK9Parser.ExpressionContext.leftEK9Parser.ExpressionContext.rangeFromEK9Parser.ExpressionContext.rightMethods in org.ek9lang.antlr that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionEK9Parser.AssertDoesNotThrowExpressionContext.expression()EK9Parser.AssertPanicExpressionContext.expression()EK9Parser.AssertStatementContext.expression()EK9Parser.AssertThrowsExpressionContext.expression()EK9Parser.AssignmentExpressionContext.expression()EK9Parser.CaseExpressionContext.expression()EK9Parser.ExcludedControlFlowStatementContext.expression()EK9Parser.ExcludedListComprehensionContext.expression(int i) EK9Parser.expression()EK9Parser.ExpressionContext.expression(int i) EK9Parser.ExpressionParamContext.expression()EK9Parser.ForLoopContext.expression()EK9Parser.InitValuePairContext.expression(int i) EK9Parser.ListContext.expression(int i) EK9Parser.PreFlowAndControlContext.expression()EK9Parser.PrimaryContext.expression()EK9Parser.RangeContext.expression(int i) EK9Parser.RequireStatementContext.expression()EK9Parser.StreamCatContext.expression(int i) EK9Parser.StringPartContext.expression()EK9Parser.TernaryPartContext.expression()EK9Parser.WhileStatementExpressionContext.expression()Methods in org.ek9lang.antlr that return types with arguments of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionEK9Parser.ExcludedListComprehensionContext.expression()EK9Parser.ExpressionContext.expression()EK9Parser.InitValuePairContext.expression()EK9Parser.ListContext.expression()EK9Parser.RangeContext.expression()EK9Parser.StreamCatContext.expression()Methods in org.ek9lang.antlr with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionvoidEK9BaseListener.enterExpression(EK9Parser.ExpressionContext ctx) Enter a parse tree produced byEK9Parser.expression().voidEK9Listener.enterExpression(EK9Parser.ExpressionContext ctx) Enter a parse tree produced byEK9Parser.expression().voidEK9BaseListener.exitExpression(EK9Parser.ExpressionContext ctx) Exit a parse tree produced byEK9Parser.expression().voidEK9Listener.exitExpression(EK9Parser.ExpressionContext ctx) Exit a parse tree produced byEK9Parser.expression().EK9BaseVisitor.visitExpression(EK9Parser.ExpressionContext ctx) Visit a parse tree produced byEK9Parser.expression().EK9Visitor.visitExpression(EK9Parser.ExpressionContext ctx) Visit a parse tree produced byEK9Parser.expression(). -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase1
Classes in org.ek9lang.compiler.phase1 that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescription(package private) final classTHE operator token of a binary expression (IsBinaryExpression): the coalescing token, the comparison coalescing token, theoplabel, or - the 'in' alternative has no 'op' label - theintoken.(package private) final classE08269 (Steve, D6, 2026-10-07): a coalescing operator - the Elvis?:and the comparison coalescing family<? >?- may not be an UNPARENTHESISED operand of a DIFFERENT binary operator, nor take one as an operand.(package private) final classE08274 (Steve, 2026-10-08, C1, Q8, Q9): a negation is never applied to a negation -not not b,~~b,- -x,not ~b,- ~x,~ -xand the same PARENTHESISED,not (not b),~(~b),-(-x),-(not b), are compile errors.(package private) final classTHE "is this a binary expression?" of the phase-1 operand rules: anyexpressionalternative with both aleftand arightoperand.(package private) final classTHE "is this a negation applied to one operand?" - wordnot b,~bor unary-x.(package private) final classTHE "is this a prefix expression?" of the phase-1 operand rules (BinaryExpressions): the operator comes first and there is one operand (PrefixOperandOf), and the operator is one ofBinaryExpressions.PREFIX_OPERATORS- so not wordnot(IsWordNot).(package private) final classTHE "is this a literal with its sign folded in?" --5,-2.5,-10#GBP: not a negation - it calls nothing - but SPELT with one, so E08274 counts it when a negation is applied to it (- -5is5).(package private) final classTHE "is this wordnotapplied to an operand?" -not b.(package private) final classTHE operand a negation (IsNegation) is applied to, looking through parentheses (Q8): innot (not b)and-(-x)the operand of the outer negation is the inner one.(package private) final classTHE negation that an expression is the operand of, looking through parentheses (not bis the operand of the~in~((not b))); null when it is not the operand of a negation.(package private) final classTypically used in control expressions to check developer is not doing a while(true).(package private) final classE08273 (Steve, 2026-10-07, P5; 2026-10-08, P6): wordnotis never an UNPARENTHESISED operand of another operator, exceptand,xorandor- so neither of any other binary operator (P5) nor of a prefix operator (P6:~not b,$ not b,#? not b, ...).(package private) final classTHE single operand of a prefix expression (IsPrefixExpression) or of wordnot(IsWordNot), as written - parentheses included (NegatedOperandOflooks through them).(package private) final classE01095 (Steve, 2026-10-21, sameness wave 2, section 4.9 b1): the comparison coalescing operators<=?and>=?were removed.Methods in org.ek9lang.compiler.phase1 that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionNegatedOperandOf.apply(EK9Parser.ExpressionContext negation) NegationApplyingTo.apply(EK9Parser.ExpressionContext ctx) PrefixOperandOf.apply(EK9Parser.ExpressionContext ctx) Methods in org.ek9lang.compiler.phase1 with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionvoidCoalescingOperandParenthesesOrError.accept(EK9Parser.ExpressionContext ctx) voidDoubleNegationOrError.accept(EK9Parser.ExpressionContext ctx) voidNotABooleanLiteralOrError.accept(EK9Parser.ExpressionContext ctx) voidNotOperandParenthesesOrError.accept(EK9Parser.ExpressionContext ctx) voidRemovedCoalescingOperatorOrError.accept(EK9Parser.ExpressionContext ctx) org.antlr.v4.runtime.TokenBinaryOperatorOf.apply(EK9Parser.ExpressionContext ctx) NegatedOperandOf.apply(EK9Parser.ExpressionContext negation) NegationApplyingTo.apply(EK9Parser.ExpressionContext ctx) PrefixOperandOf.apply(EK9Parser.ExpressionContext ctx) voidDefinitionListener.enterExpression(EK9Parser.ExpressionContext ctx) booleanIsBinaryExpression.test(EK9Parser.ExpressionContext ctx) booleanIsNegation.test(EK9Parser.ExpressionContext ctx) booleanIsPrefixExpression.test(EK9Parser.ExpressionContext ctx) booleanIsSignedLiteral.test(EK9Parser.ExpressionContext ctx) booleanIsWordNot.test(EK9Parser.ExpressionContext ctx) -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase3
Classes in org.ek9lang.compiler.phase3 that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescription(package private) final classJust gets the left and right hand side of values in an expression.(package private) final classJust gets both of the ternary expression parts (not the control).(package private) final classChecks that an expression used as a control (if/else if, while, do/while, a ternary) is a condition: a Boolean, or a type that promotes to one with '#^'.(package private) final classChecks that an expression is a condition - a Boolean, or a type that promotes to one with '#^' (IsCondition, THE rule for every condition) - emitting ONLY_COMPATIBLE_WITH_BOOLEAN otherwise.(package private) final classEnsures that 'expression' is now resolved and 'typed' or a not resolved error.(package private) final classReturns the appropriate operator text symbol for the expression.(package private) final classCreate a MethodSearch symbol for an operation that could have a single expression or two expressions.Methods in org.ek9lang.compiler.phase3 with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionvoidControlIsBooleanOrError.accept(EK9Parser.ExpressionContext ctx) voidExpressionIsBooleanResultOrError.accept(EK9Parser.ExpressionContext expression, String statementWord) voidExpressionOrError.accept(EK9Parser.ExpressionContext ctx) (package private) voidInjectedSetCheckOrError.accept(EK9Parser.ExpressionContext ctx) injected?,injected ?: other.AccessLeftAndRightOrError.apply(EK9Parser.ExpressionContext ctx) AccessTernaryExpressionsOrError.apply(EK9Parser.ExpressionContext ctx) MapOperatorText.apply(EK9Parser.ExpressionContext ctx) MethodSymbolSearchForExpression.apply(EK9Parser.ExpressionContext ctx) voidExpressionsListener.exitExpression(EK9Parser.ExpressionContext ctx) (package private) ISymbolRangeOrError.inRangeOf(EK9Parser.ExpressionContext ctx) The range ofx in a ... b: the start israngeFromand the end isrightof the comparison alternative (the range form shares that level, so its end binds like any comparison operand - PRECEDENCE (4), Steve 2026-10-07). -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase5
Classes in org.ek9lang.compiler.phase5 that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescription(package private) final classDetects tautological and contradictory compound conditions using range algebra (E08086/E08087).(package private) final classDetects arithmetic expressions that always produce a constant result (E08083).(package private) final classDetects coalescing expressions whose result is predetermined (E08094).(package private) final classDetects comparisons where both operands are literals (E08082).(package private) final classDetects conditions that are always true or always false based on data flow analysis (E08086/E08087).(package private) final classPredicate to determine if an expression is a Boolean logical operator (and/or) with Boolean type operands.(package private) classWhen looking to calculate complexity of methods/functions it is important to work out if parts of an expression are in some way conditional.(package private) final classDetects logical tautologies and contradictions (E08085).(package private) final classDetects bare literals used as operands in comparison, relational, matching, and range expressions (E11064).(package private) final classDetects string concatenation chains with 3 or more parts and recommends string interpolation instead (E11068).(package private) final classDetects comparisons of a Boolean expression with a Boolean literal (E08084).(package private) final classDetects empty checks that are always true or always false based on data flow analysis (E08092/E08093).(package private) final classDetects isSet checks that are always true or always false based on data flow analysis (E08088/E08089).(package private) final classTHE return-source classifier: whichReturnSourceKindone source of a callable's returning variable is (withIsFreshValueExpression, which decidesReturnSourceKind.NEW).(package private) final classWhat a source of a callable's returning variable may BE, in terms of the callable's own inputs - THE transitive reading of D61 (Steve, 2026-10-21: follow the inner call back): the names of the incoming parameters it may be (or a view of) andReturnSourceOrigins.RECEIVER_ORIGINwhen it may be the receiver's interior.(package private) final classDetects self-comparison expressions where both sides resolve to the same symbol (E08081).Methods in org.ek9lang.compiler.phase5 that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionMutatedOnlyVariables.Deferred.initialiser()Returns the value of theinitialiserrecord component.Methods in org.ek9lang.compiler.phase5 that return types with arguments of type EK9Parser.ExpressionContextModifier and TypeMethodDescription(package private) ConstructSafeAccessMarker<EK9Parser.ExpressionContext> ConstructSafeAccessMarkers.forTernary()A ternary: its control may make the first part safe.MutatedOnlyVariables.ReturningCallable.sources()Returns the value of thesourcesrecord component.Methods in org.ek9lang.compiler.phase5 with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionvoidCompoundConditionOrError.accept(EK9Parser.ExpressionContext ctx) voidConstantArithmeticOrError.accept(EK9Parser.ExpressionContext ctx) voidConstantCoalescingOrError.accept(EK9Parser.ExpressionContext ctx) voidConstantComparisonOrError.accept(EK9Parser.ExpressionContext ctx) voidFlowConditionOrError.accept(EK9Parser.ExpressionContext ctx) voidLogicalTautologyOrError.accept(EK9Parser.ExpressionContext ctx) voidMagicLiteralInComparisonOrError.accept(EK9Parser.ExpressionContext ctx) voidPreferStringInterpolationOrError.accept(EK9Parser.ExpressionContext ctx) voidRedundantBooleanComparisonOrError.accept(EK9Parser.ExpressionContext ctx) voidRedundantEmptyCheckOrError.accept(EK9Parser.ExpressionContext ctx) voidRedundantIsSetCheckOrError.accept(EK9Parser.ExpressionContext ctx) voidSelfComparisonOrError.accept(EK9Parser.ExpressionContext ctx) (package private) voidRedundantIsSetCheckOrError.acceptIdentifierCondition(EK9Parser.ExpressionContext expr) A bare identifier that is the condition (or a conjunct of the condition) of anif/else ifheaded by a Boolean truth guard on that very identifier:if ok <- check() then ok.ReturnSourceClassifier.apply(MutatedOnlyVariables.ReturningCallable returning, EK9Parser.ExpressionContext source) Classify one source of a callable's returning variable.ReturnSourceOrigins.apply(MutatedOnlyVariables.ReturningCallable returning, EK9Parser.ExpressionContext source) The origins of one source.(package private) voidObligationCensus.checkArithmetic(EK9Parser.ExpressionContext ctx) Count a division / modulo / remainder as aDIV_BY_ZEROobligation, discharged when the divisor is provably non-zero from the narrowed flow state.voidPreIRListener.enterExpression(EK9Parser.ExpressionContext ctx) (package private) voidExpressionComplexityCounter.exitCoalescing(EK9Parser.ExpressionContext ctx) Exit a coalescing expression - calculate weighted cost and add to total.voidPreIRListener.exitExpression(EK9Parser.ExpressionContext ctx) voidRetractedComparatorUseOrError.exitExpression(EK9Parser.ExpressionContext ctx) (package private) booleanCompileTimeKnownText.isKnown(EK9Parser.ExpressionContext expression, org.antlr.v4.runtime.tree.ParseTree region) Isexpression, evaluated anywhere withinregion, made only from source text.(package private) voidSafeAccessConjuncts.markProven(EK9Parser.ExpressionContext condition, IScope scopeMadeSafe) Mark everything the top-level conjuncts ofconditionprove as safe inscopeMadeSafe.booleanFormOfBooleanLogic.test(EK9Parser.ExpressionContext ctx) booleanFormOfComparator.test(EK9Parser.ExpressionContext ctx) Constructors in org.ek9lang.compiler.phase5 with parameters of type EK9Parser.ExpressionContextModifierConstructorDescription(package private)Deferred(ParsedModule parsedModule, ISymbol variable, EK9Parser.ExpressionContext initialiser) Creates an instance of aDeferredrecord class.Constructor parameters in org.ek9lang.compiler.phase5 with type arguments of type EK9Parser.ExpressionContextModifierConstructorDescription(package private)ReturningCallable(ParsedModule parsedModule, ScopedSymbol callable, List<EK9Parser.ExpressionContext> sources) Creates an instance of aReturningCallablerecord class. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase5.callgraph
Methods in org.ek9lang.compiler.phase5.callgraph with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionvoidCallGraphCollector.enterExpression(EK9Parser.ExpressionContext ctx) -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase5.flow
Methods in org.ek9lang.compiler.phase5.flow with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionConstructorStateExtractor.extractFromExpression(EK9Parser.ExpressionContext expr) Extract a CollectionStateValue from an expression if it is a collection/container constructor or literal.LiteralExtractor.extractFromExpression(EK9Parser.ExpressionContext expr) Extract a constant value from an expression context.TrackedValues.integerOf(EK9Parser.ExpressionContext expr) The integer the expression is known to hold - a literal, else a tracked integer constant - or null.TrackedValues.knownValueOf(EK9Parser.ExpressionContext expr) The value of the expression: its literal, else its symbol's tracked value but only if that is known, else TOP.TrackedValues.trackedValueOf(EK9Parser.ExpressionContext expr) The value of the expression: its literal, else its symbol's tracked value as it is, else TOP.Constructor parameters in org.ek9lang.compiler.phase5.flow with type arguments of type EK9Parser.ExpressionContextModifierConstructorDescriptionConstructorStateExtractor(SymbolsAndScopes symbolsAndScopes, Ek9Types ek9Types, Predicate<EK9Parser.ExpressionContext> knownSet) Create the extractor. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase7.generator
Methods in org.ek9lang.compiler.phase7.generator with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionAbstractAssertExprGenerator.buildAssertionBody(EK9Parser.ExpressionContext exprCtx, DebugInfo debugInfo) Build the assertion body with proper scope management.(package private) ConditionStatementPrelude.EvaluatedConditionStatementPrelude.evaluate(org.antlr.v4.runtime.tree.ParseTree statement, org.antlr.v4.runtime.Token keyword, EK9Parser.ExpressionContext expression, boolean assertWindow) Evaluate the condition of the statement.GuardedConditionEvaluator.evaluate(EK9Parser.ExpressionContext conditionExpr, EK9Parser.PreFlowStatementContext preFlowStmt, VariableDetails conditionResult, String scopeId, DebugInfo debugInfo) Evaluates a condition expression that may have guard variables.BinaryOperationGenerator.processOperandExpression(EK9Parser.ExpressionContext operandExpr, VariableDetails operandDetails) Process operand expression using exprGenerator from generators struct.UnaryOperationGenerator.processOperandExpression(EK9Parser.ExpressionContext operandExpr, VariableDetails operandDetails) Process operand expression using exprGenerator from generators struct.(package private) StringIterationSourceLowering.sourceValue(EK9Parser.ExpressionContext sourceCtx, IAggregateSymbol sourceType, DebugInfo debugInfo, List<IRInstr> instructions) The source's value in a fresh managed temp: the enumeration instance (IterationSourceLowering.enumInstanceForIteration(IAggregateSymbol, DebugInfo, List)) or the evaluated expression. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.phase7.support
Methods in org.ek9lang.compiler.phase7.support that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionExprProcessingDetails.ctx()Returns the value of thectxrecord component.Methods in org.ek9lang.compiler.phase7.support with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionBooleanCondition.asBoolean(EK9Parser.ExpressionContext condition, String conditionVariable, DebugInfo debugInfo, List<IRInstr> instructions) The Boolean holding the condition: the evaluated variable itself, or - for a type that promotes to Boolean - the result of its_promote(), appended toinstructions(scope-local, released with the scope).BooleanCondition.toPrimitive(EK9Parser.ExpressionContext condition, String conditionVariable, DebugInfo debugInfo, List<IRInstr> instructions) The primitive boolean a branch reads: the condition as a Boolean (BooleanCondition.asBoolean(EK9Parser.ExpressionContext, String, DebugInfo, List)), then_true().Constructors in org.ek9lang.compiler.phase7.support with parameters of type EK9Parser.ExpressionContextModifierConstructorDescriptionExprProcessingDetails(EK9Parser.ExpressionContext ctx, VariableDetails variableDetails) Creates an instance of aExprProcessingDetailsrecord class. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.repair
Methods in org.ek9lang.compiler.repair that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionConcatChainRenderer.ChainRendering.offender()Returns the value of theoffenderrecord component.Methods in org.ek9lang.compiler.repair with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescription(package private) ConcatChainRenderer.ChainRenderingConcatChainRenderer.apply(EK9Parser.ExpressionContext chain, String sourceText, Function<EK9Parser.ExpressionContext, String> typeProblem) The chain rendered, or the first operand refused - see the class javadoc.(package private) static ConcatChainRenderer.ChainRenderingConcatChainRenderer.ChainRendering.refused(String kind, String reason, EK9Parser.ExpressionContext offender, String suggestedRewrite) Method parameters in org.ek9lang.compiler.repair with type arguments of type EK9Parser.ExpressionContextModifier and TypeMethodDescription(package private) ConcatChainRenderer.ChainRenderingConcatChainRenderer.apply(EK9Parser.ExpressionContext chain, String sourceText, Function<EK9Parser.ExpressionContext, String> typeProblem) The chain rendered, or the first operand refused - see the class javadoc.Constructors in org.ek9lang.compiler.repair with parameters of type EK9Parser.ExpressionContextModifierConstructorDescription(package private)ChainRendering(String rendered, int operandCount, int substitutionCount, String conflictKind, String reason, EK9Parser.ExpressionContext offender, String suggestedRewrite) Creates an instance of aChainRenderingrecord class. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.repair.expressions
Classes in org.ek9lang.compiler.repair.expressions that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescriptionfinal classIs this expression's outer operator a binary+with two operand expressions? THE "this is a concat chain" gate of the string-expression editors (wasStringExpressionClassifier.isAddExpression).final classIs this expression a single string-literal primary - double-quoted or backtick interpolation? The rewriter's idempotency check and the extractor's admission gate (wasStringExpressionClassifier.isSingleStringLiteral).(package private) final classTHE walk every string-expression finder shares: the smallestEK9Parser.ExpressionContextunder a root that passes a test, or null.(package private) final classTHE walk every string-expression finder shares: the smallestEK9Parser.ExpressionContextunder a root that passes a test, or null.final classTHEstringLitof an expression that is a single string literal (double-quoted or backtick), or null when the expression is not one (wasStringExpressionClassifier.extractStringLit).final classTHE token-range bounds of an expression as 1-based (line, col) coordinates,[startLine, startCol, endLine, endCol], inclusive on both ends - the shape MCP-tool selection parameters expect; null when the expression has missing token data (wasStringExpressionClassifier.tokenRange).final classTHE whole+chain a+expression is part of - use it, never a private climb:+groups left to right, so"Hello " + name + "!"is("Hello " + name) + "!", and the chain is the outermost+reached by climbing while the parent is still one.Methods in org.ek9lang.compiler.repair.expressions that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionConcatAtCursor.apply(org.antlr.v4.runtime.tree.ParseTree root, int line, int col) The whole concat chain round the cursor, or null.ExpressionAtCursor.apply(org.antlr.v4.runtime.tree.ParseTree root, int line, int col) The smallest expression containing the cursor, or null.ExpressionSpanningSelection.apply(org.antlr.v4.runtime.tree.ParseTree root, int startLine, int startCol, int endLine, int endCol) The smallest expression spanning exactly the selection, or null.SmallestExpression.apply(org.antlr.v4.runtime.tree.ParseTree root, Predicate<EK9Parser.ExpressionContext> matches) StringLiteralAtCursor.apply(org.antlr.v4.runtime.tree.ParseTree root, int line, int col) The smallest single string literal round the cursor, or null.WholeAddChain.apply(EK9Parser.ExpressionContext add) Methods in org.ek9lang.compiler.repair.expressions with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionStringLiteralOf.apply(EK9Parser.ExpressionContext expr) int[]TokenRangeOf.apply(EK9Parser.ExpressionContext expr) WholeAddChain.apply(EK9Parser.ExpressionContext add) booleanIsAddExpression.test(EK9Parser.ExpressionContext expr) booleanIsSingleStringLiteral.test(EK9Parser.ExpressionContext expr) Method parameters in org.ek9lang.compiler.repair.expressions with type arguments of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionSmallestExpression.apply(org.antlr.v4.runtime.tree.ParseTree root, Predicate<EK9Parser.ExpressionContext> matches) -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.support
Classes in org.ek9lang.compiler.support that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescriptionfinal classExtracts the literal an expression resolves to, or null if it is not a (possibly negated) literal.final classTHE rule for "is this expression a whole CONDITION": the control of anif/else if/switchhead, of awhile, or the expression of arequireorassert.final classTHE "fresh value" predicate: true iff an expression evaluates to a NEW object - one nothing else holds a reference to.final classTHE expression inside any number of enclosing parentheses:basefor((base)).Methods in org.ek9lang.compiler.support that return EK9Parser.ExpressionContextModifier and TypeMethodDescriptionWithoutParentheses.apply(EK9Parser.ExpressionContext expression) ReferenceAssignment.source()Returns the value of thesourcerecord component.Methods in org.ek9lang.compiler.support with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionExtractLiteralOperand.apply(EK9Parser.ExpressionContext expr) WithoutParentheses.apply(EK9Parser.ExpressionContext expression) OperationFactory.newOperatorCall(String operator, EK9Parser.ExpressionContext ctx, IScope scope) Create a CallSymbol for an operator in an expression.SymbolFactory.newOperatorCall(String operator, EK9Parser.ExpressionContext ctx, IScope scope) Create a new CallSymbol for an operator in an expression.booleanIsConditionExpression.test(EK9Parser.ExpressionContext ctx) True if the expression, as a whole, is the condition of a control statement, arequireor anassert.booleanIsFreshValueExpression.test(EK9Parser.ExpressionContext exprCtx) Constructors in org.ek9lang.compiler.support with parameters of type EK9Parser.ExpressionContextModifierConstructorDescriptionReferenceAssignment(ISymbol target, EK9Parser.ExpressionContext source) Creates an instance of aReferenceAssignmentrecord class. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.support.retention
Classes in org.ek9lang.compiler.support.retention that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescriptionfinal classTHE method, operator or function an expression CALLS when the whole expression is that call -a.get(k),first(),a + b,(a.get(k))- so its value is whatever the call handed back.Methods in org.ek9lang.compiler.support.retention with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionCalleeOfExpression.apply(EK9Parser.ExpressionContext expression, Function<org.antlr.v4.runtime.tree.ParseTree, ISymbol> recorded) The callee of the expression. -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.support.selfreference
Classes in org.ek9lang.compiler.support.selfreference that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescription(package private) final classThe expression isthisitself.Methods in org.ek9lang.compiler.support.selfreference with parameters of type EK9Parser.ExpressionContext -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.support.sharing
Classes in org.ek9lang.compiler.support.sharing that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescriptionfinal classTHE coalescing test:?:,<?,>?(??,<=?/>=?keep their grammar tokens only so phase 1 can report E01096/E01095 - they never reach here).(package private) final classA variable (never a constant: each read of one is a copy) orthis/super.final classMay the value of this expression BE an object that exists already - rather than a fresh one: a variable (not a constant, which is read as a copy),this/super, a call whose RETAINS says its result may be its receiver's interior or an argument (MayAlias), or a coalescing operator's result or a ternary's when EITHER operand may be (the result is one of them: the same routeObjectSharingfollows for the operand itself).final classIs the expression, looking through parentheses, of a SHAPE whose value may be an object that already exists - a variable,this/super, a call, or a coalescing operator or ternary (whose result IS one of its operands) - so onlyMayBeExistingObject, once phase 5 has derived the RETAINS of the program's own callables, can say whether it is.(package private) final class((base))isbase: climb the parentheses.(package private) final classThe objects an expression given to a call (or written into an object, or iterated) gives it: a name,this, what a call that makes one, a list, a Dict, a coalescing operator or a ternary holds; any other expression builds a new value from its operands.final classWhat aforloop overiteratedcan reach (D66, the same reading asReachOfCallgives a call): the value iterated - a name,this, or something no name is given to - and what it is made from.(package private) final classTHE retention walk ofObjectSharing(D61): the object an expression evaluates to (or contains) - what keeps it? The variable it is stored in, a container it is added to or put in a literal of, a call or constructor that may keep its argument, aforloop's variable, a stream's holders, or the returning variable of a construct whose value is assigned -ObjectSharing.Kind.SHAREDwith a nameable holder, elseObjectSharing.Kind.ESCAPES.Methods in org.ek9lang.compiler.support.sharing that return EK9Parser.ExpressionContextMethods in org.ek9lang.compiler.support.sharing with parameters of type EK9Parser.ExpressionContextModifier and TypeMethodDescriptionvoidReachedByExpression.accept(EK9Parser.ExpressionContext expression, ReachSoFar reach) Outermost.apply(EK9Parser.ExpressionContext expression) ReachOfIteration.apply(EK9Parser.ExpressionContext iterated, Function<org.antlr.v4.runtime.tree.ParseTree, ISymbol> recorded) RetainedBy.apply(EK9Parser.ExpressionContext expression, Function<org.antlr.v4.runtime.tree.ParseTree, ISymbol> recorded) The objectexpressionevaluates to (or contains) - what keeps it?booleanIsCoalescingOperator.test(EK9Parser.ExpressionContext binary) booleanIsExistingNamedObject.test(EK9Parser.ExpressionContext expression, Function<org.antlr.v4.runtime.tree.ParseTree, ISymbol> recorded) booleanMayBeExistingObject.test(EK9Parser.ExpressionContext expression, Function<org.antlr.v4.runtime.tree.ParseTree, ISymbol> recorded) booleanMayBeExistingObjectByShape.test(EK9Parser.ExpressionContext expression, Function<org.antlr.v4.runtime.tree.ParseTree, ISymbol> recorded) -
Uses of EK9Parser.ExpressionContext in org.ek9lang.compiler.symbolic
Classes in org.ek9lang.compiler.symbolic that implement interfaces with type arguments of type EK9Parser.ExpressionContextModifier and TypeClassDescriptionfinal classTHE integer-literal reader for a relational operand, shared byRequirePredicateReaderandSymbolicEngine's division, guard and constraint paths: the literal's value, or null when the operand is not an integer literal.Methods in org.ek9lang.compiler.symbolic with parameters of type EK9Parser.ExpressionContext