equal
deleted
inserted
replaced
118 * @author John Rose, JSR 292 EG |
118 * @author John Rose, JSR 292 EG |
119 */ |
119 */ |
120 class LambdaForm { |
120 class LambdaForm { |
121 final int arity; |
121 final int arity; |
122 final int result; |
122 final int result; |
123 final Name[] names; |
123 @Stable final Name[] names; |
124 final String debugName; |
124 final String debugName; |
125 MemberName vmentry; // low-level behavior, or null if not yet prepared |
125 MemberName vmentry; // low-level behavior, or null if not yet prepared |
126 private boolean isCompiled; |
126 private boolean isCompiled; |
127 |
127 |
128 // Caches for common structural transforms: |
128 // Caches for common structural transforms: |
969 return true; |
969 return true; |
970 } |
970 } |
971 |
971 |
972 static class NamedFunction { |
972 static class NamedFunction { |
973 final MemberName member; |
973 final MemberName member; |
974 MethodHandle resolvedHandle; |
974 @Stable MethodHandle resolvedHandle; |
975 MethodHandle invoker; |
975 @Stable MethodHandle invoker; |
976 |
976 |
977 NamedFunction(MethodHandle resolvedHandle) { |
977 NamedFunction(MethodHandle resolvedHandle) { |
978 this(resolvedHandle.internalMemberName(), resolvedHandle); |
978 this(resolvedHandle.internalMemberName(), resolvedHandle); |
979 } |
979 } |
980 NamedFunction(MemberName member, MethodHandle resolvedHandle) { |
980 NamedFunction(MemberName member, MethodHandle resolvedHandle) { |
1265 |
1265 |
1266 static final class Name { |
1266 static final class Name { |
1267 final char type; |
1267 final char type; |
1268 private short index; |
1268 private short index; |
1269 final NamedFunction function; |
1269 final NamedFunction function; |
1270 final Object[] arguments; |
1270 @Stable final Object[] arguments; |
1271 |
1271 |
1272 private Name(int index, char type, NamedFunction function, Object[] arguments) { |
1272 private Name(int index, char type, NamedFunction function, Object[] arguments) { |
1273 this.index = (short)index; |
1273 this.index = (short)index; |
1274 this.type = type; |
1274 this.type = type; |
1275 this.function = function; |
1275 this.function = function; |