JavaParser Source Viewer

Home|JavaParser/com/github/javaparser/version/Java10PostProcessor.java
1/*
2 * Copyright (C) 2007-2010 JĂșlio Vilmar Gesser.
3 * Copyright (C) 2011, 2013-2020 The JavaParser Team.
4 *
5 * This file is part of JavaParser.
6 *
7 * JavaParser can be used either under the terms of
8 * a) the GNU Lesser General Public License as published by
9 *     the Free Software Foundation, either version 3 of the License, or
10 *     (at your option) any later version.
11 * b) the terms of the Apache License
12 *
13 * You should have received a copy of both licenses in LICENCE.LGPL and
14 * LICENCE.APACHE. Please refer to those files for details.
15 *
16 * JavaParser is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 * GNU Lesser General Public License for more details.
20 */
21
22package com.github.javaparser.version;
23
24import com.github.javaparser.ast.type.ClassOrInterfaceType;
25import com.github.javaparser.ast.type.VarType;
26
27import static com.github.javaparser.ParseResult.PostProcessor;
28
29/**
30 * Processes the generic AST into a Java 10 AST and validates it.
31 */
32public class Java10PostProcessor extends PostProcessors {
33    protected final PostProcessor varNodeCreator = (resultconfiguration) ->
34            result.getResult().ifPresent(node -> {
35                node.findAll(ClassOrInterfaceType.class).forEach(n -> {
36                    if (n.getNameAsString().equals("var")) {
37                        n.replace(new VarType(n.getTokenRange().orElse(null)));
38                    }
39                });
40            });
41
42    public Java10PostProcessor() {
43        add(varNodeCreator);
44    }
45}
46
MembersX
Java10PostProcessor:Java10PostProcessor
Java10PostProcessor:varNodeCreator
Members
X