1.1 --- a/src/share/classes/com/sun/tools/javac/code/Symbol.java Tue Sep 25 11:52:37 2012 +0100 1.2 +++ b/src/share/classes/com/sun/tools/javac/code/Symbol.java Tue Sep 25 11:53:18 2012 +0100 1.3 @@ -1068,6 +1068,10 @@ 1.4 } 1.5 } 1.6 1.7 + public boolean isDynamic() { 1.8 + return false; 1.9 + } 1.10 + 1.11 /** find a symbol that this (proxy method) symbol implements. 1.12 * @param c The class whose members are searched for 1.13 * implementations 1.14 @@ -1356,6 +1360,27 @@ 1.15 } 1.16 } 1.17 1.18 + /** A class for invokedynamic method calls. 1.19 + */ 1.20 + public static class DynamicMethodSymbol extends MethodSymbol { 1.21 + 1.22 + public Object[] staticArgs; 1.23 + public Symbol bsm; 1.24 + public int bsmKind; 1.25 + 1.26 + public DynamicMethodSymbol(Name name, Symbol owner, int bsmKind, MethodSymbol bsm, Type type, Object[] staticArgs) { 1.27 + super(0, name, type, owner); 1.28 + this.bsm = bsm; 1.29 + this.bsmKind = bsmKind; 1.30 + this.staticArgs = staticArgs; 1.31 + } 1.32 + 1.33 + @Override 1.34 + public boolean isDynamic() { 1.35 + return true; 1.36 + } 1.37 + } 1.38 + 1.39 /** A class for predefined operators. 1.40 */ 1.41 public static class OperatorSymbol extends MethodSymbol {