Refactor comprehensions and other AST nodes
* Cleanup ForClause and IfClause to be static classes
* Add missing/non-visible accessors and constructors
* Make use of final modifiers more consistent
* Make LValue an ASTNode.
RELNOTES: None
PiperOrigin-RevId: 156050683
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Parameter.java b/src/main/java/com/google/devtools/build/lib/syntax/Parameter.java
index 52bf299..1b74dcd 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/Parameter.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/Parameter.java
@@ -69,7 +69,7 @@
}
/** mandatory parameter (positional or key-only depending on position): Ident */
- public static class Mandatory<V, T> extends Parameter<V, T> {
+ public static final class Mandatory<V, T> extends Parameter<V, T> {
public Mandatory(String name) {
super(name);
@@ -90,7 +90,7 @@
}
/** optional parameter (positional or key-only depending on position): Ident = Value */
- public static class Optional<V, T> extends Parameter<V, T> {
+ public static final class Optional<V, T> extends Parameter<V, T> {
public final V defaultValue;
public Optional(String name, @Nullable V defaultValue) {
@@ -118,7 +118,7 @@
}
/** extra positionals parameter (star): *identifier */
- public static class Star<V, T> extends Parameter<V, T> {
+ public static final class Star<V, T> extends Parameter<V, T> {
public Star(@Nullable String name, @Nullable T type) {
super(name, type);
}
@@ -146,7 +146,7 @@
}
/** extra keywords parameter (star_star): **identifier */
- public static class StarStar<V, T> extends Parameter<V, T> {
+ public static final class StarStar<V, T> extends Parameter<V, T> {
public StarStar(String name, @Nullable T type) {
super(name, type);
}