Class SemanticContext.Empty

    • Constructor Detail

      • Empty

        public Empty()
    • Method Detail

      • eval

        public boolean eval​(Recognizer<?,​?> parser,
                            RuleContext parserCallStack)
        Description copied from class: SemanticContext
        For context independent predicates, we evaluate them without a local context (i.e., null context). That way, we can evaluate them without having to create proper rule-specific context during prediction (as opposed to the parser, which creates them naturally). In a practical sense, this avoids a cast exception from RuleContext to myruleContext.

        For context dependent predicates, we must pass in a local context so that references such as $arg evaluate properly as _localctx.arg. We only capture context dependent predicates in the context in which we begin prediction, so we passed in the outer context here in case of context dependent predicate evaluation.

        Specified by:
        eval in class SemanticContext