本文整理汇总了Java中com.sun.tools.javac.parser.Tokens.TokenKind.EOF属性的典型用法代码示例。如果您正苦于以下问题:Java TokenKind.EOF属性的具体用法?Java TokenKind.EOF怎么用?Java TokenKind.EOF使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类com.sun.tools.javac.parser.Tokens.TokenKind
的用法示例。
在下文中一共展示了TokenKind.EOF属性的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: parseParams
List<JCTree> parseParams(String s) throws ParseException {
if (s.trim().isEmpty())
return List.nil();
JavacParser p = fac.newParser(s.replace("...", "[]"), false, false, false);
ListBuffer<JCTree> paramTypes = new ListBuffer<JCTree>();
paramTypes.add(p.parseType());
if (p.token().kind == TokenKind.IDENTIFIER)
p.nextToken();
while (p.token().kind == TokenKind.COMMA) {
p.nextToken();
paramTypes.add(p.parseType());
if (p.token().kind == TokenKind.IDENTIFIER)
p.nextToken();
}
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return paramTypes.toList();
}
示例2: parseParams
private List<JCTree> parseParams(String s) throws ParseException {
if (s.trim().isEmpty())
return List.nil();
JavacParser p = fac.newParser(s.replace("...", "[]"), false, false, false);
ListBuffer<JCTree> paramTypes = new ListBuffer<>();
paramTypes.add(p.parseType());
if (p.token().kind == TokenKind.IDENTIFIER)
p.nextToken();
while (p.token().kind == TokenKind.COMMA) {
p.nextToken();
paramTypes.add(p.parseType());
if (p.token().kind == TokenKind.IDENTIFIER)
p.nextToken();
}
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return paramTypes.toList();
}
示例3: parseParams
List<JCTree> parseParams(String s) throws ParseException {
if (s.trim().isEmpty())
return List.nil();
JavacParser p = fac.newParser(s.replace("...", "[]"), false, false, false);
ListBuffer<JCTree> paramTypes = new ListBuffer<>();
paramTypes.add(p.parseType());
if (p.token().kind == TokenKind.IDENTIFIER)
p.nextToken();
while (p.token().kind == TokenKind.COMMA) {
p.nextToken();
paramTypes.add(p.parseType());
if (p.token().kind == TokenKind.IDENTIFIER)
p.nextToken();
}
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return paramTypes.toList();
}
示例4: parseExpression
private static JCExpression parseExpression(Context context, CharSequence expr, boolean onlyFullInput, SourcePositions[] pos, final List<Diagnostic<? extends JavaFileObject>> errors) {
if (expr == null || (pos != null && pos.length != 1))
throw new IllegalArgumentException();
JavaCompiler compiler = JavaCompiler.instance(context);
JavaFileObject prev = compiler.log.useSource(new DummyJFO());
Log.DiagnosticHandler discardHandler = new Log.DiscardDiagnosticHandler(compiler.log) {
@Override
public void report(JCDiagnostic diag) {
errors.add(diag);
}
};
try {
CharBuffer buf = CharBuffer.wrap((expr+"\u0000").toCharArray(), 0, expr.length());
ParserFactory factory = ParserFactory.instance(context);
ScannerFactory scannerFactory = ScannerFactory.instance(context);
Names names = Names.instance(context);
Scanner scanner = scannerFactory.newScanner(buf, false);
Parser parser = new JackpotJavacParser(context, (NBParserFactory) factory, scanner, false, false, CancelService.instance(context), names);
if (parser instanceof JavacParser) {
if (pos != null)
pos[0] = new ParserSourcePositions((JavacParser)parser);
JCExpression result = parser.parseExpression();
if (!onlyFullInput || scanner.token().kind == TokenKind.EOF) {
return result;
}
}
return null;
} finally {
compiler.log.useSource(prev);
compiler.log.popDiagnosticHandler(discardHandler);
}
}
示例5: parseType
JCTree parseType(String s) throws ParseException {
JavacParser p = fac.newParser(s, false, false, false);
JCTree tree = p.parseType();
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return tree;
}
示例6: parseMember
Name parseMember(String s) throws ParseException {
JavacParser p = fac.newParser(s, false, false, false);
Name name = p.ident();
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return name;
}
示例7: parseType
private JCTree parseType(String s) throws ParseException {
JavacParser p = fac.newParser(s, false, false, false);
JCTree tree = p.parseType();
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return tree;
}
示例8: parseMember
private Name parseMember(String s) throws ParseException {
JavacParser p = fac.newParser(s, false, false, false);
Name name = p.ident();
if (p.token().kind != TokenKind.EOF)
throw new ParseException("dc.ref.unexpected.input");
return name;
}
示例9: getTokens
public ImmutableList<ErrorProneToken> getTokens() {
Scanner scanner = new AccessibleScanner(scannerFactory, commentSavingTokenizer);
ImmutableList.Builder<ErrorProneToken> tokens = ImmutableList.builder();
do {
scanner.nextToken();
tokens.add(new ErrorProneToken(scanner.token()));
} while (scanner.token().kind != TokenKind.EOF);
return tokens.build();
}
示例10: scan
@Override
public Void scan(Tree tree, Context context) {
if (tree == null) {
return null;
}
JCCompilationUnit compilationUnit = context.get(JCCompilationUnit.class);
for (T beforeTemplate : rule().beforeTemplates()) {
matchLoop:
for (M match : beforeTemplate.match((JCTree) tree, context)) {
if (rule().rejectMatchesWithComments()) {
String matchContents = match.getRange(compilationUnit);
JavaTokenizer tokenizer =
new JavaTokenizer(
ScannerFactory.instance(context), CharBuffer.wrap(matchContents)) {};
for (Token token = tokenizer.readToken();
token.kind != TokenKind.EOF;
token = tokenizer.readToken()) {
if (token.comments != null && !token.comments.isEmpty()) {
continue matchLoop;
}
}
}
Description.Builder builder =
Description.builder(
match.getLocation(),
rule().qualifiedTemplateClass(),
"",
SeverityLevel.WARNING,
"");
if (rule().afterTemplates().isEmpty()) {
builder.addFix(SuggestedFix.prefixWith(match.getLocation(), "/* match found */ "));
} else {
for (T afterTemplate : rule().afterTemplates()) {
builder.addFix(afterTemplate.replace(match));
}
}
listener().onDescribed(builder.build());
}
}
return super.scan(tree, context);
}