diff options
author | 2015-11-09 17:05:29 +0000 | |
---|---|---|
committer | 2015-11-10 10:23:08 +0000 | |
commit | a1c377b0a6e7ecc3ad69c1577aec3706ca2a7512 (patch) | |
tree | 8698f193c334fc5a687fd7e22da9c673a5df502f /src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java | |
parent | 277fb52f716ff154ac0ea6934fb9c9a5407ef6d1 (diff) |
Compile for loops with break/continue to byte code
--
MOS_MIGRATED_REVID=107389651
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java b/src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java index 3f15d03d51..5c9a03aded 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/ExpressionStatement.java @@ -14,6 +14,13 @@ package com.google.devtools.build.lib.syntax; +import com.google.common.base.Optional; +import com.google.devtools.build.lib.syntax.compiler.DebugInfo; +import com.google.devtools.build.lib.syntax.compiler.LoopLabels; +import com.google.devtools.build.lib.syntax.compiler.VariableScope; + +import net.bytebuddy.implementation.bytecode.ByteCodeAppender; + /** * Syntax node for a function call statement. Used for build rules. */ @@ -48,4 +55,11 @@ public final class ExpressionStatement extends Statement { void validate(ValidationEnvironment env) throws EvalException { expr.validate(env); } + + @Override + ByteCodeAppender compile( + VariableScope scope, Optional<LoopLabels> loopLabels, DebugInfo debugInfo) + throws EvalException { + return expr.compile(scope, debugInfo); + } } |