org.antlr.v4.runtime.Parser.triggerEnterRuleEvent()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(6.9k)|赞(0)|评价(0)|浏览(101)

本文整理了Java中org.antlr.v4.runtime.Parser.triggerEnterRuleEvent()方法的一些代码示例,展示了Parser.triggerEnterRuleEvent()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Parser.triggerEnterRuleEvent()方法的具体详情如下:
包路径:org.antlr.v4.runtime.Parser
类名称:Parser
方法名:triggerEnterRuleEvent

Parser.triggerEnterRuleEvent介绍

[英]Notify any parse listeners of an enter rule event.
[中]将enter规则事件通知所有解析侦听器。

代码示例

代码示例来源:origin: org.antlr/antlr4-runtime

/** Like {@link #enterRule} but for recursive rules.
 *  Make the current context the child of the incoming localctx.
 */
public void pushNewRecursionContext(ParserRuleContext localctx, int state, int ruleIndex) {
  ParserRuleContext previous = _ctx;
  previous.parent = localctx;
  previous.invokingState = state;
  previous.stop = _input.LT(-1);
  _ctx = localctx;
  _ctx.start = previous.start;
  if (_buildParseTrees) {
    _ctx.addChild(previous);
  }
  if ( _parseListeners != null ) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: org.antlr/antlr4-runtime

/**
 * Always called by generated parsers upon entry to a rule. Access field
 * {@link #_ctx} get the current context.
 */
public void enterRule(ParserRuleContext localctx, int state, int ruleIndex) {
  setState(state);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_buildParseTrees) addContextToParseTree();
  if ( _parseListeners != null) triggerEnterRuleEvent();
}

代码示例来源:origin: org.antlr/antlr4-runtime

public void enterRecursionRule(ParserRuleContext localctx, int state, int ruleIndex, int precedence) {
  setState(state);
  _precedenceStack.push(precedence);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_parseListeners != null) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: uk.co.nichesolutions/antlr4-runtime

/** Like {@link #enterRule} but for recursive rules.
 *  Make the current context the child of the incoming localctx.
 */
public void pushNewRecursionContext(ParserRuleContext localctx, int state, int ruleIndex) {
  ParserRuleContext previous = _ctx;
  previous.parent = localctx;
  previous.invokingState = state;
  previous.stop = _input.LT(-1);
  _ctx = localctx;
  _ctx.start = previous.start;
  if (_buildParseTrees) {
    _ctx.addChild(previous);
  }
  if ( _parseListeners != null ) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: io.virtdata/virtdata-lib-realer

/** Like {@link #enterRule} but for recursive rules.
 *  Make the current context the child of the incoming localctx.
 */
public void pushNewRecursionContext(ParserRuleContext localctx, int state, int ruleIndex) {
  ParserRuleContext previous = _ctx;
  previous.parent = localctx;
  previous.invokingState = state;
  previous.stop = _input.LT(-1);
  _ctx = localctx;
  _ctx.start = previous.start;
  if (_buildParseTrees) {
    _ctx.addChild(previous);
  }
  if ( _parseListeners != null ) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: com.tunnelvisionlabs/antlr4-runtime

/** Like {@link #enterRule} but for recursive rules.
 *  Make the current context the child of the incoming localctx.
 */
public void pushNewRecursionContext(ParserRuleContext localctx, int state, int ruleIndex) {
  ParserRuleContext previous = _ctx;
  previous.parent = localctx;
  previous.invokingState = state;
  previous.stop = _input.LT(-1);
  _ctx = localctx;
  _ctx.start = previous.start;
  if (_buildParseTrees) {
    _ctx.addChild(previous);
  }
  if ( _parseListeners != null ) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: com.impetus.fabric/fabric-jdbc-driver-shaded

/**
 * Like {@link #enterRule} but for recursive rules.
 */
public void pushNewRecursionContext(ParserRuleContext localctx, int state, int ruleIndex) {
  ParserRuleContext previous = _ctx;
  previous.parent = localctx;
  previous.invokingState = state;
  previous.stop = _input.LT(-1);
  _ctx = localctx;
  _ctx.start = previous.start;
  if (_buildParseTrees) {
    _ctx.addChild(previous);
  }
  if ( _parseListeners != null ) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: uk.co.nichesolutions/antlr4-runtime

public void enterRecursionRule(ParserRuleContext localctx, int state, int ruleIndex, int precedence) {
  setState(state);
  _precedenceStack.push(precedence);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_parseListeners != null) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: com.impetus.fabric/fabric-jdbc-driver-shaded

/**
 * Always called by generated parsers upon entry to a rule. Access field
 * {@link #_ctx} get the current context.
 */
public void enterRule(ParserRuleContext localctx, int state, int ruleIndex) {
  setState(state);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_buildParseTrees) addContextToParseTree();
  if ( _parseListeners != null) triggerEnterRuleEvent();
}

代码示例来源:origin: io.virtdata/virtdata-lib-realer

/**
 * Always called by generated parsers upon entry to a rule. Access field
 * {@link #_ctx} get the current context.
 */
public void enterRule(ParserRuleContext localctx, int state, int ruleIndex) {
  setState(state);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_buildParseTrees) addContextToParseTree();
  if ( _parseListeners != null) triggerEnterRuleEvent();
}

代码示例来源:origin: com.tunnelvisionlabs/antlr4-runtime

public void enterRecursionRule(ParserRuleContext localctx, int state, int ruleIndex, int precedence) {
  setState(state);
  _precedenceStack.push(precedence);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_parseListeners != null) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: uk.co.nichesolutions/antlr4-runtime

/**
 * Always called by generated parsers upon entry to a rule. Access field
 * {@link #_ctx} get the current context.
 */
public void enterRule(ParserRuleContext localctx, int state, int ruleIndex) {
  setState(state);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_buildParseTrees) addContextToParseTree();
  if ( _parseListeners != null) triggerEnterRuleEvent();
}

代码示例来源:origin: com.impetus.fabric/fabric-jdbc-driver-shaded

public void enterRecursionRule(ParserRuleContext localctx, int state, int ruleIndex, int precedence) {
  setState(state);
  _precedenceStack.push(precedence);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_parseListeners != null) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: io.virtdata/virtdata-lib-realer

public void enterRecursionRule(ParserRuleContext localctx, int state, int ruleIndex, int precedence) {
  setState(state);
  _precedenceStack.push(precedence);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_parseListeners != null) {
    triggerEnterRuleEvent(); // simulates rule entry for left-recursive rules
  }
}

代码示例来源:origin: com.tunnelvisionlabs/antlr4-runtime

/**
 * Always called by generated parsers upon entry to a rule. Access field
 * {@link #_ctx} get the current context.
 */
public void enterRule(@NotNull ParserRuleContext localctx, int state, int ruleIndex) {
  setState(state);
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_buildParseTrees) addContextToParseTree();
  if ( _parseListeners != null) triggerEnterRuleEvent();
}

代码示例来源:origin: com.tunnelvisionlabs/antlr4-runtime

public void enterLeftFactoredRule(ParserRuleContext localctx, int state, int ruleIndex) {
  setState(state);
  if (_buildParseTrees) {
    ParserRuleContext factoredContext = (ParserRuleContext)_ctx.getChild(_ctx.getChildCount() - 1);
    _ctx.removeLastChild();
    factoredContext.parent = localctx;
    localctx.addChild(factoredContext);
  }
  _ctx = localctx;
  _ctx.start = _input.LT(1);
  if (_buildParseTrees) {
    addContextToParseTree();
  }
  if (_parseListeners != null) {
    triggerEnterRuleEvent();
  }
}

相关文章