aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java
diff options
context:
space:
mode:
authorGravatar brandjon <brandjon@google.com>2017-06-27 18:14:54 +0200
committerGravatar Marcel Hlopko <hlopko@google.com>2017-06-28 10:17:45 +0200
commite2ffd5d3eb8a24efc26568543ae32637c6d26380 (patch)
tree63ec3358f98aa758b8d2a83c3d5e6218e6a37c03 /src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java
parent3bc1547a5cd78bd6639d968b3cfddbe26b1c31d5 (diff)
Add a pretty printer for Skylark ASTs
This can be used to canonically compare ASTs for equality, e.g. in tests. RELNOTES: None PiperOrigin-RevId: 160283160
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java b/src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java
index 97588c0c9a..4672af11c0 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/DotExpression.java
@@ -18,6 +18,7 @@ import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.syntax.FuncallExpression.MethodDescriptor;
import com.google.devtools.build.lib.util.SpellChecker;
+import java.io.IOException;
/** Syntax node for a dot expression. e.g. obj.field, but not obj.method() */
public final class DotExpression extends Expression {
@@ -40,8 +41,10 @@ public final class DotExpression extends Expression {
}
@Override
- public String toString() {
- return obj + "." + field;
+ public void prettyPrint(Appendable buffer) throws IOException {
+ obj.prettyPrint(buffer);
+ buffer.append('.');
+ field.prettyPrint(buffer);
}
@Override