Class WithoutParentheses

java.lang.Object
org.ek9lang.compiler.support.WithoutParentheses
All Implemented Interfaces:
Function<EK9Parser.ExpressionContext, EK9Parser.ExpressionContext>, UnaryOperator<EK9Parser.ExpressionContext>

public final class WithoutParentheses extends Object implements UnaryOperator<EK9Parser.ExpressionContext>
THE expression inside any number of enclosing parentheses: base for ((base)). Hold one; never a hand-written walk through primary().expression().

Only the LPAREN expression RPAREN alternative of primary has an expression child, so this descends exactly through parentheses. It was support.sharing.WithoutParentheses and phase 1's BinaryExpressions.withoutParentheses (an LPAREN() != null test - the same alternative); no-statics lane P1 (2026-10-29) made the two one.