/** Create a normal parser except wrap the token stream in a debug * proxy that fires consume events. */ public DebugParser(TokenStream input, DebugEventListener dbg, RecognizerSharedState state) { super(input instanceof DebugTokenStream?input:new DebugTokenStream(input,dbg), state); setDebugListener(dbg); }
/** Get num hidden tokens between i..j inclusive */ public int getNumberOfHiddenTokens(int i, int j) { int n = 0; TokenStream input = parser.getTokenStream(); for (int ti = i; ti<input.size() && ti <= j; ti++) { Token t = input.get(ti); if ( t.getChannel()!=Token.DEFAULT_CHANNEL ) { n++; } } return n; }
/** Get num hidden tokens between i..j inclusive */ public int getNumberOfHiddenTokens(int i, int j) { int n = 0; TokenStream input = parser.getTokenStream(); for (int ti = i; ti<input.size() && ti <= j; ti++) { Token t = input.get(ti); if ( t.getChannel()!=Token.DEFAULT_CHANNEL ) { n++; } } return n; }
/** Get num hidden tokens between i..j inclusive */ public int getNumberOfHiddenTokens(int i, int j) { int n = 0; TokenStream input = parser.getTokenStream(); for (int ti = i; ti<input.size() && ti <= j; ti++) { Token t = input.get(ti); if ( t.getChannel()!=Token.DEFAULT_CHANNEL ) { n++; } } return n; }
/** Create a normal parser except wrap the token stream in a debug * proxy that fires consume events. */ public DebugParser(TokenStream input, DebugEventListener dbg, RecognizerSharedState state) { super(input instanceof DebugTokenStream?input:new DebugTokenStream(input,dbg), state); setDebugListener(dbg); }
/** Get num hidden tokens between i..j inclusive */ public int getNumberOfHiddenTokens(int i, int j) { int n = 0; TokenStream input = parser.getTokenStream(); for (int ti = i; ti<input.size() && ti <= j; ti++) { Token t = input.get(ti); if ( t.getChannel()!=Token.DEFAULT_CHANNEL ) { n++; } } return n; }
/** Create a normal parser except wrap the token stream in a debug * proxy that fires consume events. */ public DebugParser(TokenStream input, DebugEventListener dbg, RecognizerSharedState state) { super(input instanceof DebugTokenStream?input:new DebugTokenStream(input,dbg), state); setDebugListener(dbg); }
/** Get num hidden tokens between i..j inclusive */ public int getNumberOfHiddenTokens(int i, int j) { int n = 0; TokenStream input = parser.getTokenStream(); for (int ti = i; ti<input.size() && ti <= j; ti++) { Token t = input.get(ti); if ( t.getChannel()!=Token.DEFAULT_CHANNEL ) { n++; } } return n; }
/** Create a normal parser except wrap the token stream in a debug * proxy that fires consume events. */ public DebugParser(TokenStream input, DebugEventListener dbg, RecognizerSharedState state) { super(input instanceof DebugTokenStream?input:new DebugTokenStream(input,dbg), state); setDebugListener(dbg); }
/** Get num hidden tokens between i..j inclusive */ public int getNumberOfHiddenTokens(int i, int j) { int n = 0; TokenStream input = parser.getTokenStream(); for (int ti = i; ti<input.size() && ti <= j; ti++) { Token t = input.get(ti); if ( t.getChannel()!=Token.DEFAULT_CHANNEL ) { n++; } } return n; }
/** Create a normal parser except wrap the token stream in a debug * proxy that fires consume events. */ public DebugParser(TokenStream input, DebugEventListener dbg, RecognizerSharedState state) { super(input instanceof DebugTokenStream?input:new DebugTokenStream(input,dbg), state); setDebugListener(dbg); }
public void enterDecision(int decisionNumber, boolean couldBacktrack) { lastRealTokenTouchedInDecision = null; stats.numDecisionEvents++; int startingLookaheadIndex = parser.getTokenStream().index(); TokenStream input = parser.getTokenStream(); if ( dump ) System.out.println("enterDecision canBacktrack="+couldBacktrack+" "+ decisionNumber + " backtrack depth " + backtrackDepth + " @ " + input.get(input.index()) + " rule " +locationDescription()); String g = (String) currentGrammarFileName.peek(); DecisionDescriptor descriptor = decisions.get(g, decisionNumber); if ( descriptor == null ) { descriptor = new DecisionDescriptor(); decisions.put(g, decisionNumber, descriptor); descriptor.decision = decisionNumber; descriptor.fileName = (String)currentGrammarFileName.peek(); descriptor.ruleName = (String)currentRuleName.peek(); descriptor.line = (Integer)currentLine.peek(); descriptor.pos = (Integer)currentPos.peek(); descriptor.couldBacktrack = couldBacktrack; } descriptor.n++; DecisionEvent d = new DecisionEvent(); decisionStack.push(d); d.decision = descriptor; d.startTime = System.currentTimeMillis(); d.startIndex = startingLookaheadIndex; }
/** Create a normal parser except wrap the token stream in a debug * proxy that fires consume events. */ public DebugParser(TokenStream input, DebugEventListener dbg, RecognizerSharedState state) { super(input instanceof DebugTokenStream?input:new DebugTokenStream(input,dbg), state); setDebugListener(dbg); }
@Override public void enterDecision(int decisionNumber, boolean couldBacktrack) { lastRealTokenTouchedInDecision = null; stats.numDecisionEvents++; int startingLookaheadIndex = parser.getTokenStream().index(); TokenStream input = parser.getTokenStream(); if ( dump ) System.out.println("enterDecision canBacktrack="+couldBacktrack+" "+ decisionNumber + " backtrack depth " + backtrackDepth + " @ " + input.get(input.index()) + " rule " +locationDescription()); String g = currentGrammarFileName.peek(); DecisionDescriptor descriptor = decisions.get(g, decisionNumber); if ( descriptor == null ) { descriptor = new DecisionDescriptor(); decisions.put(g, decisionNumber, descriptor); descriptor.decision = decisionNumber; descriptor.fileName = currentGrammarFileName.peek(); descriptor.ruleName = currentRuleName.peek(); descriptor.line = currentLine.peek(); descriptor.pos = currentPos.peek(); descriptor.couldBacktrack = couldBacktrack; } descriptor.n++; DecisionEvent d = new DecisionEvent(); decisionStack.push(d); d.decision = descriptor; d.startTime = System.currentTimeMillis(); d.startIndex = startingLookaheadIndex; }
@Override public void enterDecision(int decisionNumber, boolean couldBacktrack) { lastRealTokenTouchedInDecision = null; stats.numDecisionEvents++; int startingLookaheadIndex = parser.getTokenStream().index(); TokenStream input = parser.getTokenStream(); if ( dump ) System.out.println("enterDecision canBacktrack="+couldBacktrack+" "+ decisionNumber + " backtrack depth " + backtrackDepth + " @ " + input.get(input.index()) + " rule " +locationDescription()); String g = currentGrammarFileName.peek(); DecisionDescriptor descriptor = decisions.get(g, decisionNumber); if ( descriptor == null ) { descriptor = new DecisionDescriptor(); decisions.put(g, decisionNumber, descriptor); descriptor.decision = decisionNumber; descriptor.fileName = currentGrammarFileName.peek(); descriptor.ruleName = currentRuleName.peek(); descriptor.line = currentLine.peek(); descriptor.pos = currentPos.peek(); descriptor.couldBacktrack = couldBacktrack; } descriptor.n++; DecisionEvent d = new DecisionEvent(); decisionStack.push(d); d.decision = descriptor; d.startTime = System.currentTimeMillis(); d.startIndex = startingLookaheadIndex; }
@Override public void enterDecision(int decisionNumber, boolean couldBacktrack) { lastRealTokenTouchedInDecision = null; stats.numDecisionEvents++; int startingLookaheadIndex = parser.getTokenStream().index(); TokenStream input = parser.getTokenStream(); if ( dump ) System.out.println("enterDecision canBacktrack="+couldBacktrack+" "+ decisionNumber + " backtrack depth " + backtrackDepth + " @ " + input.get(input.index()) + " rule " +locationDescription()); String g = currentGrammarFileName.peek(); DecisionDescriptor descriptor = decisions.get(g, decisionNumber); if ( descriptor == null ) { descriptor = new DecisionDescriptor(); decisions.put(g, decisionNumber, descriptor); descriptor.decision = decisionNumber; descriptor.fileName = currentGrammarFileName.peek(); descriptor.ruleName = currentRuleName.peek(); descriptor.line = currentLine.peek(); descriptor.pos = currentPos.peek(); descriptor.couldBacktrack = couldBacktrack; } descriptor.n++; DecisionEvent d = new DecisionEvent(); decisionStack.push(d); d.decision = descriptor; d.startTime = System.currentTimeMillis(); d.startIndex = startingLookaheadIndex; }
@Override public void enterDecision(int decisionNumber, boolean couldBacktrack) { lastRealTokenTouchedInDecision = null; stats.numDecisionEvents++; int startingLookaheadIndex = parser.getTokenStream().index(); TokenStream input = parser.getTokenStream(); if ( dump ) System.out.println("enterDecision canBacktrack="+couldBacktrack+" "+ decisionNumber + " backtrack depth " + backtrackDepth + " @ " + input.get(input.index()) + " rule " +locationDescription()); String g = currentGrammarFileName.peek(); DecisionDescriptor descriptor = decisions.get(g, decisionNumber); if ( descriptor == null ) { descriptor = new DecisionDescriptor(); decisions.put(g, decisionNumber, descriptor); descriptor.decision = decisionNumber; descriptor.fileName = currentGrammarFileName.peek(); descriptor.ruleName = currentRuleName.peek(); descriptor.line = currentLine.peek(); descriptor.pos = currentPos.peek(); descriptor.couldBacktrack = couldBacktrack; } descriptor.n++; DecisionEvent d = new DecisionEvent(); decisionStack.push(d); d.decision = descriptor; d.startTime = System.currentTimeMillis(); d.startIndex = startingLookaheadIndex; }
@Override public void enterDecision(int decisionNumber, boolean couldBacktrack) { lastRealTokenTouchedInDecision = null; stats.numDecisionEvents++; int startingLookaheadIndex = parser.getTokenStream().index(); TokenStream input = parser.getTokenStream(); if ( dump ) System.out.println("enterDecision canBacktrack="+couldBacktrack+" "+ decisionNumber + " backtrack depth " + backtrackDepth + " @ " + input.get(input.index()) + " rule " +locationDescription()); String g = currentGrammarFileName.peek(); DecisionDescriptor descriptor = decisions.get(g, decisionNumber); if ( descriptor == null ) { descriptor = new DecisionDescriptor(); decisions.put(g, decisionNumber, descriptor); descriptor.decision = decisionNumber; descriptor.fileName = currentGrammarFileName.peek(); descriptor.ruleName = currentRuleName.peek(); descriptor.line = currentLine.peek(); descriptor.pos = currentPos.peek(); descriptor.couldBacktrack = couldBacktrack; } descriptor.n++; DecisionEvent d = new DecisionEvent(); decisionStack.push(d); d.decision = descriptor; d.startTime = System.currentTimeMillis(); d.startIndex = startingLookaheadIndex; }