private void addOptionalSuffixToName(ParserRuleContext dataTypeContext, DataTypeEntry dataTypeEntry, DataTypeBuilder dataTypeBuilder) { if (dataTypeEntry.getSuffixTokens() != null) { for (Integer suffixTokenIdentifier : dataTypeEntry.getSuffixTokens()) { if (dataTypeContext.getToken(suffixTokenIdentifier, 0) != null) { dataTypeBuilder.addToName(dataTypeContext.getToken(suffixTokenIdentifier, 0).getText()); } } } }
boolean correctDataType = true; for (Integer mainTokenIdentifier : dataTypeEntry.getDbmsDataTypeTokenIdentifiers()) { TerminalNode token = dataTypeContext.getToken(mainTokenIdentifier, 0); if (correctDataType) { if (token == null) {
private String getLeftHandSidePath(ParserRuleContext ctx) { TerminalNode pathToken = ctx.getToken(EQLLexer.PATH_VARIABLE, 0); return pathToken.getText(); }
private String getLeftHandSidePath(ParserRuleContext ctx) { TerminalNode pathToken = ctx.getToken(EQLLexer.PATH_VARIABLE, 0); return pathToken.getText(); }
private String getLeftHandSidePath(ParserRuleContext ctx) { TerminalNode pathToken = ctx.getToken(EQLLexer.PATH_VARIABLE, 0); return pathToken.getText(); }
private void addOptionalSuffixToName(ParserRuleContext dataTypeContext, DataTypeEntry dataTypeEntry, DataTypeBuilder dataTypeBuilder) { if (dataTypeEntry.getSuffixTokens() != null) { for (Integer suffixTokenIdentifier : dataTypeEntry.getSuffixTokens()) { if (dataTypeContext.getToken(suffixTokenIdentifier, 0) != null) { dataTypeBuilder.addToName(dataTypeContext.getToken(suffixTokenIdentifier, 0).getText()); } } } }
boolean correctDataType = true; for (Integer mainTokenIdentifier : dataTypeEntry.getDbmsDataTypeTokenIdentifiers()) { TerminalNode token = dataTypeContext.getToken(mainTokenIdentifier, 0); if (correctDataType) { if (token == null) {
/** Get start/stop of an entire rule including semi and then clean up * WS at end. */ public static String getRuleText(CommonTokenStream tokens, ParserRuleContext ruleDefNode) { Token stop = ruleDefNode.getStop(); Token semi = stop; TerminalNode colonNode = ruleDefNode.getToken(ANTLRv4Parser.COLON, 0); Token colon = colonNode.getSymbol(); Token beforeSemi = tokens.get(stop.getTokenIndex()-1); Token afterColon = tokens.get(colon.getTokenIndex()+1); // trim whitespace/comments before / after rule text List<Token> ignoreBefore = tokens.getHiddenTokensToRight(colon.getTokenIndex()); List<Token> ignoreAfter = tokens.getHiddenTokensToLeft(semi.getTokenIndex()); Token textStart = afterColon; Token textStop = beforeSemi; if ( ignoreBefore!=null ) { Token lastWSAfterColon = ignoreBefore.get(ignoreBefore.size()-1); textStart = tokens.get(lastWSAfterColon.getTokenIndex()+1); } if ( ignoreAfter!=null ) { int firstWSAtEndOfRule = ignoreAfter.get(0).getTokenIndex()-1; textStop = tokens.get(firstWSAtEndOfRule); // stop before 1st ignore token at end } return tokens.getText(textStart, textStop); }