aboutsummaryrefslogtreecommitdiffstats
path: root/javaparser-core/src/main/java/com/github/javaparser/version/Java10PostProcessor.java
diff options
context:
space:
mode:
Diffstat (limited to 'javaparser-core/src/main/java/com/github/javaparser/version/Java10PostProcessor.java')
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/version/Java10PostProcessor.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/javaparser-core/src/main/java/com/github/javaparser/version/Java10PostProcessor.java b/javaparser-core/src/main/java/com/github/javaparser/version/Java10PostProcessor.java
new file mode 100644
index 000000000..7130870e7
--- /dev/null
+++ b/javaparser-core/src/main/java/com/github/javaparser/version/Java10PostProcessor.java
@@ -0,0 +1,24 @@
+package com.github.javaparser.version;
+
+import com.github.javaparser.ast.type.ClassOrInterfaceType;
+import com.github.javaparser.ast.type.VarType;
+
+import static com.github.javaparser.ParseResult.PostProcessor;
+
+/**
+ * Processes the generic AST into a Java 10 AST and validates it.
+ */
+public class Java10PostProcessor extends PostProcessors {
+ protected final PostProcessor varNodeCreator = (result, configuration) ->
+ result.getResult().ifPresent(node -> {
+ node.findAll(ClassOrInterfaceType.class).forEach(n -> {
+ if (n.getNameAsString().equals("var")) {
+ n.replace(new VarType(n.getTokenRange().orElse(null)));
+ }
+ });
+ });
+
+ public Java10PostProcessor() {
+ add(varNodeCreator);
+ }
+}