diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/FunctionDefStatement.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/syntax/FunctionDefStatement.java | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/FunctionDefStatement.java b/src/main/java/com/google/devtools/build/lib/syntax/FunctionDefStatement.java index 994f6f2b3d..31b16f0eba 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/FunctionDefStatement.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/FunctionDefStatement.java @@ -109,37 +109,4 @@ public final class FunctionDefStatement extends Statement { public void accept(SyntaxTreeVisitor visitor) { visitor.visit(this); } - - @Override - void validate(final ValidationEnvironment env) throws EvalException { - FunctionSignature sig = signature.getSignature(); - FunctionSignature.Shape shape = sig.getShape(); - ImmutableList<String> names = sig.getNames(); - List<Expression> defaultExpressions = signature.getDefaultValues(); - - int positionals = shape.getPositionals(); - int mandatoryPositionals = shape.getMandatoryPositionals(); - int namedOnly = shape.getNamedOnly(); - int mandatoryNamedOnly = shape.getMandatoryNamedOnly(); - boolean starArg = shape.hasStarArg(); - boolean kwArg = shape.hasKwArg(); - int named = positionals + namedOnly; - int args = named + (starArg ? 1 : 0) + (kwArg ? 1 : 0); - int startOptionals = mandatoryPositionals; - int endOptionals = named - mandatoryNamedOnly; - - env.openScope(); - int j = 0; // index for the defaultExpressions - for (int i = 0; i < args; i++) { - String name = names.get(i); - if (startOptionals <= i && i < endOptionals) { - defaultExpressions.get(j++).validate(env); - } - env.declare(name, getLocation()); - } - for (Statement stmts : statements) { - stmts.validate(env); - } - env.closeScope(); - } } |