Lines Matching refs:BMH
61 // BMH API and internals
65 // for some type signatures, there exist pre-defined concrete BMH classes
140 * Return the {@link SpeciesData} instance representing this BMH species. All subclasses must provide a
147 return "/BMH="+internalValues();
200 // concrete BMH classes required to close bootstrap loops
326 // BMH species meta-data
330 * Meta-data wrapper for concrete BMH classes.
335 // Bootstrapping requires circular relations MH -> BMH -> SpeciesData -> MH
452 // pre-fill the BMH speciesdata cache with BMH's inner classes
484 * Generation of concrete BMH classes.
486 * A concrete BMH species is fit for binding a number of values adhering to a
489 * BMH species are cached by type pattern.
491 * A BMH species has a number of fields with the concrete (possibly erased) types of
492 * bound values. Setters are provided as an API in BMH. Getters are exposed as MHs,
502 static final String BMH = "java/lang/invoke/BoundMethodHandle";
503 static final String BMH_SIG = "L"+BMH+";";
508 static final String SPECIES_PREFIX_PATH = BMH + "$" + SPECIES_PREFIX_NAME;
522 * Generate a concrete subclass of BMH for a given combination of bound types.
524 * A concrete BMH species adheres to the following schema:
540 * For example, a concrete BMH species for two reference and one integral bound values
579 * @return the generated concrete BMH class
586 cw.visit(V1_6, ACC_PUBLIC + ACC_FINAL + ACC_SUPER, className, null, BMH, null);
609 mv.visitMethodInsn(INVOKESPECIAL, BMH, "<init>", makeSignature("", true));
829 // linker method type replaces initial parameter (BMH species) with BMH to avoid naming a species (anonymous class!)