aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanny van Bruggen <hexagonaal@gmail.com>2017-05-07 15:29:22 +0200
committerDanny van Bruggen <hexagonaal@gmail.com>2017-05-07 15:29:22 +0200
commit76e39b577d214f742802155231331b349e80d095 (patch)
treee37db5cf7e0c040eb703d5245436a5224389e9e9
parentc488992f411bcc74916da0643426795e29ce0852 (diff)
downloadplatform_external_javaparser-76e39b577d214f742802155231331b349e80d095.tar.gz
platform_external_javaparser-76e39b577d214f742802155231331b349e80d095.tar.bz2
platform_external_javaparser-76e39b577d214f742802155231331b349e80d095.zip
Make field access scope not optional
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java43
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithOptionalScope.java13
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericListVisitorAdapter.java4
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitorAdapter.java4
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/visitor/HashCodeVisitor.java2
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/visitor/ModifierVisitor.java4
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/visitor/VoidVisitorAdapter.java2
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/metamodel/JavaParserMetaModel.java2
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/printer/PrettyPrintVisitor.java3
9 files changed, 27 insertions, 50 deletions
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java
index 50ff830a9..389430ffa 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/FieldAccessExpr.java
@@ -23,7 +23,6 @@ package com.github.javaparser.ast.expr;
import com.github.javaparser.Range;
import com.github.javaparser.ast.AllFieldsConstructor;
import com.github.javaparser.ast.NodeList;
-import com.github.javaparser.ast.nodeTypes.NodeWithOptionalScope;
import com.github.javaparser.ast.nodeTypes.NodeWithSimpleName;
import com.github.javaparser.ast.nodeTypes.NodeWithTypeArguments;
import com.github.javaparser.ast.observer.ObservableProperty;
@@ -46,7 +45,7 @@ import javax.annotation.Generated;
*
* @author Julio Vilmar Gesser
*/
-public final class FieldAccessExpr extends Expression implements NodeWithSimpleName<FieldAccessExpr>, NodeWithTypeArguments<FieldAccessExpr>, NodeWithOptionalScope<FieldAccessExpr> {
+public final class FieldAccessExpr extends Expression implements NodeWithSimpleName<FieldAccessExpr>, NodeWithTypeArguments<FieldAccessExpr> {
private Expression scope;
@@ -115,8 +114,8 @@ public final class FieldAccessExpr extends Expression implements NodeWithSimpleN
}
@Generated("com.github.javaparser.generator.core.node.PropertyGenerator")
- public Optional<Expression> getScope() {
- return Optional.ofNullable(scope);
+ public Expression getScope() {
+ return scope;
}
/**
@@ -144,6 +143,7 @@ public final class FieldAccessExpr extends Expression implements NodeWithSimpleN
*/
@Generated("com.github.javaparser.generator.core.node.PropertyGenerator")
public FieldAccessExpr setScope(final Expression scope) {
+ assertNotNull(scope);
if (scope == this.scope) {
return (FieldAccessExpr) this;
}
@@ -186,16 +186,22 @@ public final class FieldAccessExpr extends Expression implements NodeWithSimpleN
}
@Override
+ @Generated("com.github.javaparser.generator.core.node.CloneGenerator")
+ public FieldAccessExpr clone() {
+ return (FieldAccessExpr) accept(new CloneVisitor(), null);
+ }
+
+ @Override
+ @Generated("com.github.javaparser.generator.core.node.GetMetaModelGenerator")
+ public FieldAccessExprMetaModel getMetaModel() {
+ return JavaParserMetaModel.fieldAccessExprMetaModel;
+ }
+
+ @Override
@Generated("com.github.javaparser.generator.core.node.RemoveMethodGenerator")
public boolean remove(Node node) {
if (node == null)
return false;
- if (scope != null) {
- if (node == scope) {
- removeScope();
- return true;
- }
- }
if (typeArguments != null) {
for (int i = 0; i < typeArguments.size(); i++) {
if (typeArguments.get(i) == node) {
@@ -206,21 +212,4 @@ public final class FieldAccessExpr extends Expression implements NodeWithSimpleN
}
return super.remove(node);
}
-
- @Generated("com.github.javaparser.generator.core.node.RemoveMethodGenerator")
- public FieldAccessExpr removeScope() {
- return setScope((Expression) null);
- }
-
- @Override
- @Generated("com.github.javaparser.generator.core.node.CloneGenerator")
- public FieldAccessExpr clone() {
- return (FieldAccessExpr) accept(new CloneVisitor(), null);
- }
-
- @Override
- @Generated("com.github.javaparser.generator.core.node.GetMetaModelGenerator")
- public FieldAccessExprMetaModel getMetaModel() {
- return JavaParserMetaModel.fieldAccessExprMetaModel;
- }
}
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithOptionalScope.java b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithOptionalScope.java
index d7dd88033..b21c07061 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithOptionalScope.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithOptionalScope.java
@@ -27,22 +27,11 @@ import com.github.javaparser.ast.expr.Expression;
import java.util.Optional;
/**
- * Represents a node which can have a scope expression eg. method calls or
- * field accesses (object.method(), object.field).
+ * Represents a node which can have a scope expression eg. method calls (object.method()).
*/
public interface NodeWithOptionalScope<N extends Node> {
Optional<Expression> getScope();
N setScope(Expression scope);
-
- /**
- * Removes the scope by calling {@link #setScope} with null.
- *
- * @return this node
- */
- default N removeScope() {
- return setScope(null);
- }
-
}
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericListVisitorAdapter.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericListVisitorAdapter.java
index 35cec3d0f..edb74532f 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericListVisitorAdapter.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericListVisitorAdapter.java
@@ -881,8 +881,8 @@ public abstract class GenericListVisitorAdapter<R, A> implements GenericVisitor<
if (tmp != null)
result.addAll(tmp);
}
- if (n.getScope().isPresent()) {
- tmp = n.getScope().get().accept(this, arg);
+ {
+ tmp = n.getScope().accept(this, arg);
if (tmp != null)
result.addAll(tmp);
}
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitorAdapter.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitorAdapter.java
index 69f8559ce..6bbdef630 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitorAdapter.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitorAdapter.java
@@ -744,8 +744,8 @@ public abstract class GenericVisitorAdapter<R, A> implements GenericVisitor<R, A
if (result != null)
return result;
}
- if (n.getScope().isPresent()) {
- result = n.getScope().get().accept(this, arg);
+ {
+ result = n.getScope().accept(this, arg);
if (result != null)
return result;
}
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/HashCodeVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/HashCodeVisitor.java
index f6ca4bd2b..39682d8a5 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/HashCodeVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/HashCodeVisitor.java
@@ -214,7 +214,7 @@ public class HashCodeVisitor implements GenericVisitor<Integer, Void> {
@Generated("com.github.javaparser.generator.core.visitor.HashCodeVisitorGenerator")
public Integer visit(FieldAccessExpr n, Void arg) {
- return (n.getName().accept(this, arg)) * 31 + (n.getScope().isPresent() ? n.getScope().get().accept(this, arg) : 0) * 31 + (n.getTypeArguments().isPresent() ? n.getTypeArguments().get().accept(this, arg) : 0) * 31 + (n.getComment().isPresent() ? n.getComment().get().accept(this, arg) : 0);
+ return (n.getName().accept(this, arg)) * 31 + (n.getScope().accept(this, arg)) * 31 + (n.getTypeArguments().isPresent() ? n.getTypeArguments().get().accept(this, arg) : 0) * 31 + (n.getComment().isPresent() ? n.getComment().get().accept(this, arg) : 0);
}
@Generated("com.github.javaparser.generator.core.visitor.HashCodeVisitorGenerator")
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/ModifierVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/ModifierVisitor.java
index 0e835f2d6..bb539e279 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/ModifierVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/ModifierVisitor.java
@@ -462,10 +462,10 @@ public class ModifierVisitor<A> implements GenericVisitor<Visitable, A> {
@Generated("com.github.javaparser.generator.core.visitor.ModifierVisitorGenerator")
public Visitable visit(final FieldAccessExpr n, final A arg) {
SimpleName name = (SimpleName) n.getName().accept(this, arg);
- Expression scope = n.getScope().map(s -> (Expression) s.accept(this, arg)).orElse(null);
+ Expression scope = (Expression) n.getScope().accept(this, arg);
NodeList<Type> typeArguments = modifyList(n.getTypeArguments(), arg);
Comment comment = n.getComment().map(s -> (Comment) s.accept(this, arg)).orElse(null);
- if (name == null)
+ if (name == null || scope == null)
return null;
n.setName(name);
n.setScope(scope);
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/VoidVisitorAdapter.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/VoidVisitorAdapter.java
index d50a69dd5..24669bc25 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/VoidVisitorAdapter.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/VoidVisitorAdapter.java
@@ -294,7 +294,7 @@ public abstract class VoidVisitorAdapter<A> implements VoidVisitor<A> {
@Generated("com.github.javaparser.generator.core.visitor.VoidVisitorAdapterGenerator")
public void visit(final FieldAccessExpr n, final A arg) {
n.getName().accept(this, arg);
- n.getScope().ifPresent(l -> l.accept(this, arg));
+ n.getScope().accept(this, arg);
n.getTypeArguments().ifPresent(l -> l.forEach(v -> v.accept(this, arg)));
n.getComment().ifPresent(l -> l.accept(this, arg));
}
diff --git a/javaparser-core/src/main/java/com/github/javaparser/metamodel/JavaParserMetaModel.java b/javaparser-core/src/main/java/com/github/javaparser/metamodel/JavaParserMetaModel.java
index 228ebc8e4..8eefde385 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/metamodel/JavaParserMetaModel.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/metamodel/JavaParserMetaModel.java
@@ -501,7 +501,7 @@ public final class JavaParserMetaModel {
enclosedExprMetaModel.getDeclaredPropertyMetaModels().add(enclosedExprMetaModel.innerPropertyMetaModel);
fieldAccessExprMetaModel.namePropertyMetaModel = new PropertyMetaModel(fieldAccessExprMetaModel, "name", com.github.javaparser.ast.expr.SimpleName.class, Optional.of(simpleNameMetaModel), false, false, false, false, false);
fieldAccessExprMetaModel.getDeclaredPropertyMetaModels().add(fieldAccessExprMetaModel.namePropertyMetaModel);
- fieldAccessExprMetaModel.scopePropertyMetaModel = new PropertyMetaModel(fieldAccessExprMetaModel, "scope", com.github.javaparser.ast.expr.Expression.class, Optional.of(expressionMetaModel), true, false, false, false, false);
+ fieldAccessExprMetaModel.scopePropertyMetaModel = new PropertyMetaModel(fieldAccessExprMetaModel, "scope", com.github.javaparser.ast.expr.Expression.class, Optional.of(expressionMetaModel), false, false, false, false, false);
fieldAccessExprMetaModel.getDeclaredPropertyMetaModels().add(fieldAccessExprMetaModel.scopePropertyMetaModel);
fieldAccessExprMetaModel.typeArgumentsPropertyMetaModel = new PropertyMetaModel(fieldAccessExprMetaModel, "typeArguments", com.github.javaparser.ast.type.Type.class, Optional.of(typeMetaModel), true, false, true, false, false);
fieldAccessExprMetaModel.getDeclaredPropertyMetaModels().add(fieldAccessExprMetaModel.typeArgumentsPropertyMetaModel);
diff --git a/javaparser-core/src/main/java/com/github/javaparser/printer/PrettyPrintVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/printer/PrettyPrintVisitor.java
index 174912cee..7582b24d1 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/printer/PrettyPrintVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/printer/PrettyPrintVisitor.java
@@ -577,8 +577,7 @@ public class PrettyPrintVisitor implements VoidVisitor<Void> {
@Override
public void visit(final FieldAccessExpr n, final Void arg) {
printJavaComment(n.getComment(), arg);
- if (n.getScope().isPresent())
- n.getScope().get().accept(this, arg);
+ n.getScope().accept(this, arg);
printer.print(".");
n.getName().accept(this, arg);
}