public FAState(NFAState state) { this.stateNumber = state.stateNumber; this.acceptedState = state.isAcceptState(); this.enclosingRuleName = state.enclosingRule.name; }
/** This method returns true if the state can be skipped, using several criteria. * */ public boolean canBeSkipped(NFAState state) { if(!optimize) return false; // Cannot skip first state if(state.stateNumber == 0) return false; // Cannot skip accepted state if(state.isAcceptState()) return false; // Cannot skip alternative state if(state.getDecisionNumber() > 0) return false; // Cannot skip start of block state if(state.endOfBlockStateNumber != State.INVALID_STATE_NUMBER) return false; // Cannot skip state with more than one incoming transition (often an end-of-alternative state) if(analysis.numberOfIncomingTransition(state)>1) return false; return hasOneOrMoreEpsilonTransitionOnly(state); }
List<Set<Rule>> listOfRecursiveCycles) if ( s.isAcceptState() ) {
List<Set<Rule>> listOfRecursiveCycles) if ( s.isAcceptState() ) {
List<Set<Rule>> listOfRecursiveCycles) if ( s.isAcceptState() ) {
List<Set<Rule>> listOfRecursiveCycles) if ( s.isAcceptState() ) {
if ( state.isAcceptState() ) { NFAState invokingState = (NFAState)ruleInvocationStack.pop(); if ( debug ) System.out.println("pop invoking state "+invokingState);
if ( state.isAcceptState() ) { NFAState invokingState = ruleInvocationStack.pop(); if ( debug ) System.out.println("pop invoking state "+invokingState);
if ( state.isAcceptState() ) { NFAState invokingState = ruleInvocationStack.pop(); if ( debug ) System.out.println("pop invoking state "+invokingState);
if ( state.isAcceptState() ) { NFAState invokingState = (NFAState)ruleInvocationStack.pop(); if ( debug ) System.out.println("pop invoking state "+invokingState);
currentPath.add(state); if(state.isAcceptState()) {
protected SemanticContext _getPredicates(NFAState s, NFAState altStartState) { if ( s.isAcceptState() ) { return null;
protected SemanticContext _getPredicates(NFAState s, NFAState altStartState) { if ( s.isAcceptState() ) { return null;
protected SemanticContext _getPredicates(NFAState s, NFAState altStartState) { if ( s.isAcceptState() ) { return null;
protected SemanticContext _getPredicates(NFAState s, NFAState altStartState) { if ( s.isAcceptState() ) { return null;
if ( !chaseFollowTransitions && s.isAcceptState() ) { if ( grammar.type==Grammar.LEXER ) {
if ( !chaseFollowTransitions && s.isAcceptState() ) { if ( grammar.type==Grammar.LEXER ) {
if ( !chaseFollowTransitions && s.isAcceptState() ) { if ( grammar.type==Grammar.LEXER ) {
if ( !chaseFollowTransitions && s.isAcceptState() ) { if ( grammar.type==Grammar.LEXER ) {
if ( !chaseFollowTransitions && s.isAcceptState() ) { if ( grammar.type==Grammar.LEXER ) {