summaryrefslogtreecommitdiff
path: root/sources/scalac/atree/ATreePrinter.java
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scalac/atree/ATreePrinter.java')
-rw-r--r--sources/scalac/atree/ATreePrinter.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/sources/scalac/atree/ATreePrinter.java b/sources/scalac/atree/ATreePrinter.java
index 26ebdd46f5..2371be4702 100644
--- a/sources/scalac/atree/ATreePrinter.java
+++ b/sources/scalac/atree/ATreePrinter.java
@@ -368,6 +368,25 @@ public class ATreePrinter {
}
}
+ /** Prints the function. */
+ public ATreePrinter printFunction(AFunction function) {
+ switch (function) {
+ case Method(This(Symbol clasz), Symbol method, true):
+ printSymbol(clasz).print('.').print("super").print('.');
+ return printSymbol(method);
+ case Method(Void, Symbol method, true):
+ return printSymbol(method.owner()).print('.').printSymbol(method);
+ case Method(ACode object, Symbol method, boolean isStatic):
+ printCode(object).print('.');
+ if (isStatic) print("<static>").space();
+ return printSymbol(method);
+ case Primitive(APrimitive primitive):
+ return printPrimitive(primitive);
+ default:
+ throw Debug.abort("unknown case", function);
+ }
+ }
+
/** Prints the primitive. */
public ATreePrinter printPrimitive(APrimitive primitive) {
switch (primitive) {