src/share/classes/com/sun/tools/javac/code/Types.java

changeset 3361
3a62189765a8
parent 3348
dc80683c4dd9
child 3446
e468915bad3a
equal deleted inserted replaced
3360:3c0bf89ce69d 3361:3a62189765a8
1065 */ 1065 */
1066 public boolean isSignaturePolymorphic(MethodSymbol msym) { 1066 public boolean isSignaturePolymorphic(MethodSymbol msym) {
1067 List<Type> argtypes = msym.type.getParameterTypes(); 1067 List<Type> argtypes = msym.type.getParameterTypes();
1068 return (msym.flags_field & NATIVE) != 0 && 1068 return (msym.flags_field & NATIVE) != 0 &&
1069 msym.owner == syms.methodHandleType.tsym && 1069 msym.owner == syms.methodHandleType.tsym &&
1070 argtypes.tail.tail == null && 1070 argtypes.length() == 1 &&
1071 argtypes.head.hasTag(TypeTag.ARRAY) && 1071 argtypes.head.hasTag(TypeTag.ARRAY) &&
1072 msym.type.getReturnType().tsym == syms.objectType.tsym && 1072 msym.type.getReturnType().tsym == syms.objectType.tsym &&
1073 ((ArrayType)argtypes.head).elemtype.tsym == syms.objectType.tsym; 1073 ((ArrayType)argtypes.head).elemtype.tsym == syms.objectType.tsym;
1074 } 1074 }
1075 1075

mercurial