本文整理汇总了Java中org.antlr.v4.runtime.CharStream.getText方法的典型用法代码示例。如果您正苦于以下问题:Java CharStream.getText方法的具体用法?Java CharStream.getText怎么用?Java CharStream.getText使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.antlr.v4.runtime.CharStream
的用法示例。
在下文中一共展示了CharStream.getText方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: recover
import org.antlr.v4.runtime.CharStream; //导入方法依赖的package包/类
@Override
public void recover(final LexerNoViableAltException lnvae) {
final CharStream charStream = lnvae.getInputStream();
final int startIndex = lnvae.getStartIndex();
final String text = charStream.getText(Interval.of(startIndex, charStream.index()));
Location location = new Location(sourceName, _tokenStartCharIndex);
String message = "unexpected character [" + getErrorDisplay(text) + "].";
char firstChar = text.charAt(0);
if ((firstChar == '\'' || firstChar == '"') && text.length() - 2 > 0 && text.charAt(text.length() - 2) == '\\') {
/* Use a simple heuristic to guess if the unrecognized characters were trying to be a string but has a broken escape sequence.
* If it was add an extra message about valid string escape sequences. */
message += " The only valid escape sequences in strings starting with [" + firstChar + "] are [\\\\] and [\\"
+ firstChar + "].";
}
throw location.createError(new IllegalArgumentException(message, lnvae));
}
示例2: getSourceText
import org.antlr.v4.runtime.CharStream; //导入方法依赖的package包/类
public static String getSourceText(ParserRuleContext ctx){
if (ctx.start == null || ctx.stop == null) {
return ctx.getText();
}
int startIndex = ctx.start.getStartIndex();
int stopIndex = ctx.stop.getStopIndex();
if (stopIndex < startIndex) {
return ""; // Just return the empty string.
}
CharStream inputStream = ctx.start.getInputStream();
return inputStream.getText(new Interval(startIndex, stopIndex));
}
示例3: getStatementString
import org.antlr.v4.runtime.CharStream; //导入方法依赖的package包/类
public static String getStatementString(
final SqlBaseParser.SingleStatementContext singleStatementContext) {
CharStream charStream = singleStatementContext.start.getInputStream();
return charStream.getText(new Interval(
singleStatementContext.start.getStartIndex(),
singleStatementContext.stop.getStopIndex()
));
}