Enum Primitive

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<Primitive>, org.objectweb.asm.Opcodes

    enum Primitive
    extends java.lang.Enum<Primitive>
    implements org.objectweb.asm.Opcodes
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) java.lang.Class<?> boxedJavaType  
      (package private) java.lang.Class<?> javaEquivalent  
      (package private) int loadOpcode  
      (package private) int returnOpcode  
      (package private) int sizeInBytes  
      • Fields inherited from interface org.objectweb.asm.Opcodes

        AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_RECORD, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM10_EXPERIMENTAL, ASM4, ASM5, ASM6, ASM7, ASM8, ASM9, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SOURCE_DEPRECATED, SOURCE_MASK, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V9
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private Primitive​(int size, java.lang.Class<?> javaType, java.lang.Class<?> boxedJavaType, int loadOpcode, int returnOpcode)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) static Primitive of​(java.lang.Class<?> type)  
      (package private) static java.lang.Class<?> replaceWithPrimitive​(java.lang.Class<?> boxedJavaType)  
      static java.lang.Class<?> simplifyType​(java.lang.Class<?> type)  
      (package private) java.lang.String unsafeMethodSuffix()  
      private static java.lang.Class<?> usePublicApiClass​(java.lang.Class<?> type)  
      static Primitive valueOf​(java.lang.String name)
      Returns the enum constant of this type with the specified name.
      static Primitive[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      • Methods inherited from class java.lang.Enum

        clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • sizeInBytes

        final int sizeInBytes
      • javaEquivalent

        final java.lang.Class<?> javaEquivalent
      • boxedJavaType

        final java.lang.Class<?> boxedJavaType
      • loadOpcode

        final int loadOpcode
      • returnOpcode

        final int returnOpcode
    • Constructor Detail

      • Primitive

        private Primitive​(int size,
                          java.lang.Class<?> javaType,
                          java.lang.Class<?> boxedJavaType,
                          int loadOpcode,
                          int returnOpcode)
    • Method Detail

      • values

        public static Primitive[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (Primitive c : Primitive.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static Primitive valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • unsafeMethodSuffix

        java.lang.String unsafeMethodSuffix()
      • of

        static Primitive of​(java.lang.Class<?> type)
      • replaceWithPrimitive

        static java.lang.Class<?> replaceWithPrimitive​(java.lang.Class<?> boxedJavaType)
      • simplifyType

        public static java.lang.Class<?> simplifyType​(java.lang.Class<?> type)
      • usePublicApiClass

        private static java.lang.Class<?> usePublicApiClass​(java.lang.Class<?> type)