public void insertToken(int token, int completedToken, int position) { insertTokens(new int []{token}, completedToken, position); }
public void replaceTokens(int token, int start, int end) { replaceTokens(new int []{token}, start, end); }
public void insertTokens(int[] tokens, int completedToken, int position) { if(!this.record) return; if(completedToken > -1 && Parser.statements_recovery_filter[completedToken] != 0) return; this.data.insertedTokensPtr++; if(this.data.insertedTokens == null) { this.data.insertedTokens = new int[10][]; this.data.insertedTokensPosition = new int[10]; this.data.insertedTokenUsed = new boolean[10]; } else if(this.data.insertedTokens.length == this.data.insertedTokensPtr) { int length = this.data.insertedTokens.length; System.arraycopy(this.data.insertedTokens, 0, this.data.insertedTokens = new int[length * 2][], 0, length); System.arraycopy(this.data.insertedTokensPosition, 0, this.data.insertedTokensPosition = new int[length * 2], 0, length); System.arraycopy(this.data.insertedTokenUsed, 0, this.data.insertedTokenUsed = new boolean[length * 2], 0, length); } this.data.insertedTokens[this.data.insertedTokensPtr] = reverse(tokens); this.data.insertedTokensPosition[this.data.insertedTokensPtr] = position; this.data.insertedTokenUsed[this.data.insertedTokensPtr] = false; }
if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.insertToken(addedToken, -1, errorStart); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.insertTokens(template, -1, errorStart); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.insertToken(addedToken, -1, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.insertTokens(template, -1, errorEnd); case DELETION_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if (name.length() == 0) { if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken);
this.recoveryScanner = new RecoveryScanner(this.scanner, data); } else { this.recoveryScanner.setData(data); this.recoveryScanner.setSource(this.scanner.source); this.recoveryScanner.lineEnds = this.scanner.lineEnds; this.recoveryScanner.linePtr = this.scanner.linePtr; this.recoveryScanner.getData();
case MISPLACED_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); this.recoveryScanner.insertTokens(addedTokens, completedToken, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.replaceTokens(template, errorStart, errorEnd); case DELETION_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if (name.length() == 0) { if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.replaceTokens(template, errorStart, errorEnd);
RecoveryScannerData data = this.recoveryScanner.getData(); int position = data.insertedTokensPtr; while (position > 0) { this.recoveryScanner.insertTokenAhead(TerminalTokens.TokenNameEQUAL, position);
} else { scanner = new RecoveryScanner( false,/*tokenizeWhiteSpace*/ false,/*checkNonExternalizedStringLiterals*/
public RecoveryScanner(Scanner scanner, RecoveryScannerData data) { super(false, scanner.tokenizeWhiteSpace, scanner.checkNonExternalizedStringLiterals, scanner.sourceLevel, scanner.complianceLevel, scanner.taskTags, scanner.taskPriorities, scanner.isTaskCaseSensitive); setData(data); }
((RecoveryScanner)this.scanner).setPendingTokens(new int[]{TokenNameSEMICOLON, TokenNamebreak}); } else { ((RecoveryScanner)this.scanner).setPendingTokens(new int[]{TokenNameIdentifier, TokenNameEQUAL, TokenNameIdentifier});
if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.insertToken(addedToken, -1, errorStart); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.insertTokens(template, -1, errorStart); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.insertToken(addedToken, -1, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.insertTokens(template, -1, errorEnd); case DELETION_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if (name.length() == 0) { if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken);
this.recoveryScanner = new RecoveryScanner(this.scanner, data); } else { this.recoveryScanner.setData(data); this.recoveryScanner.setSource(this.scanner.source); this.recoveryScanner.lineEnds = this.scanner.lineEnds; this.recoveryScanner.linePtr = this.scanner.linePtr; this.recoveryScanner.getData();
case MISPLACED_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); this.recoveryScanner.insertTokens(addedTokens, completedToken, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.replaceTokens(template, errorStart, errorEnd); case DELETION_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if (name.length() == 0) { if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.replaceTokens(template, errorStart, errorEnd);
RecoveryScannerData data = this.recoveryScanner.getData(); int position = data.insertedTokensPtr; while (position > 0) { this.recoveryScanner.insertTokenAhead(TerminalTokens.TokenNameEQUAL, position);
} else { scanner = new RecoveryScanner( false,/*tokenizeWhiteSpace*/ false,/*checkNonExternalizedStringLiterals*/
public RecoveryScanner(Scanner scanner, RecoveryScannerData data) { super(false, scanner.tokenizeWhiteSpace, scanner.checkNonExternalizedStringLiterals, scanner.sourceLevel, scanner.complianceLevel, scanner.taskTags, scanner.taskPriorities, scanner.isTaskCaseSensitive); setData(data); }
((RecoveryScanner)this.scanner).setPendingTokens(new int[]{TokenNameSEMICOLON, TokenNamebreak}); } else { ((RecoveryScanner)this.scanner).setPendingTokens(new int[]{TokenNameIdentifier, TokenNameEQUAL, TokenNameIdentifier});
if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.insertToken(addedToken, -1, errorStart); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.insertTokens(template, -1, errorStart); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.insertToken(addedToken, -1, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.insertTokens(template, -1, errorEnd); case DELETION_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if (name.length() == 0) { if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken);
this.recoveryScanner = new RecoveryScanner(this.scanner, data); } else { this.recoveryScanner.setData(data); this.recoveryScanner.setSource(this.scanner.source); this.recoveryScanner.lineEnds = this.scanner.lineEnds; this.recoveryScanner.linePtr = this.scanner.linePtr; this.recoveryScanner.getData();
case MISPLACED_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); this.recoveryScanner.insertTokens(addedTokens, completedToken, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.replaceTokens(template, errorStart, errorEnd); case DELETION_CODE: if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if (name.length() == 0) { if(this.recoveryScanner != null) { this.recoveryScanner.removeTokens(errorStart, errorEnd); if(this.recoveryScanner != null) { if(addedToken > -1) { this.recoveryScanner.replaceTokens(addedToken, errorStart, errorEnd); } else { int[] template = getNTermTemplate(-addedToken); if(template != null) { this.recoveryScanner.replaceTokens(template, errorStart, errorEnd);