src/share/classes/java/lang/invoke/BoundMethodHandle.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File jdk Sdiff src/share/classes/java/lang/invoke

src/share/classes/java/lang/invoke/BoundMethodHandle.java

Print this page
rev 9091 : [mq]: 8027827.catchException.ver03


 844             }
 845             // extend arguments array
 846             Object[] newArgs = Arrays.copyOf(initName.arguments, initName.arguments.length + 1);
 847             newArgs[newArgs.length - 1] = ctorMN;
 848             // replace function
 849             final NamedFunction nf = new NamedFunction(linkerMN);
 850             final Name linkedCtor = new Name(nf, newArgs);
 851             linkedCtor.initIndex(initNameIndex);
 852             lf.names[initNameIndex] = linkedCtor;
 853             return cmh;
 854         }
 855 
 856     }
 857 
 858     private static final Lookup LOOKUP = Lookup.IMPL_LOOKUP;
 859 
 860     /**
 861      * All subclasses must provide such a value describing their type signature.
 862      */
 863     static final SpeciesData SPECIES_DATA = SpeciesData.EMPTY;











 864 }


 844             }
 845             // extend arguments array
 846             Object[] newArgs = Arrays.copyOf(initName.arguments, initName.arguments.length + 1);
 847             newArgs[newArgs.length - 1] = ctorMN;
 848             // replace function
 849             final NamedFunction nf = new NamedFunction(linkerMN);
 850             final Name linkedCtor = new Name(nf, newArgs);
 851             linkedCtor.initIndex(initNameIndex);
 852             lf.names[initNameIndex] = linkedCtor;
 853             return cmh;
 854         }
 855 
 856     }
 857 
 858     private static final Lookup LOOKUP = Lookup.IMPL_LOOKUP;
 859 
 860     /**
 861      * All subclasses must provide such a value describing their type signature.
 862      */
 863     static final SpeciesData SPECIES_DATA = SpeciesData.EMPTY;
 864 
 865     private static final SpeciesData[] SPECIES_DATA_CACHE = new SpeciesData[4];
 866     private static SpeciesData checkCache(int index, String types) {
 867         SpeciesData data = SPECIES_DATA_CACHE[index];
 868         if (data != null)  return data;
 869         SPECIES_DATA_CACHE[index] = data = getSpeciesData(types);
 870         return data;
 871     }
 872     static SpeciesData speciesData_L()     { return checkCache(1, "L"); }
 873     static SpeciesData speciesData_LL()    { return checkCache(2, "LL"); }
 874     static SpeciesData speciesData_LLL()   { return checkCache(3, "LLL"); }
 875 }
src/share/classes/java/lang/invoke/BoundMethodHandle.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File