Package gnu.expr
Class PairClassType
java.lang.Object
gnu.bytecode.Type
gnu.bytecode.ObjectType
gnu.bytecode.ClassType
gnu.expr.PairClassType
- All Implemented Interfaces:
AttrContainer
,Member
,Externalizable
,Serializable
,Type
A class type implemented as a pair of an interface and a class.
This is how true multiple inheritance can be implemented.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class gnu.bytecode.Type
Type.NeverReturns
-
Field Summary
FieldsFields inherited from class gnu.bytecode.ClassType
constructor, JAVA_10_VERSION, JAVA_9_VERSION, JDK_1_1_VERSION, JDK_1_2_VERSION, JDK_1_3_VERSION, JDK_1_4_VERSION, JDK_1_5_VERSION, JDK_1_6_VERSION, JDK_1_7_VERSION, JDK_1_8_VERSION, noClasses
Fields inherited from class gnu.bytecode.ObjectType
flags
Fields inherited from class gnu.bytecode.Type
boolean_ctype, boolean_type, booleanType, booleanValue_method, byte_type, byteType, char_type, charType, clone_method, double_type, doubleType, doubleValue_method, errorType, float_type, floatType, floatValue_method, int_type, intType, intValue_method, java_lang_Class_type, javalangannotationAnnotationType, javalangBooleanType, javalangCharacterType, javalangClassType, javalanginvokeMethodHandleType, javalangNumberType, javalangObjectType, javalangStringType, javalangThrowableType, long_type, longType, longValue_method, neverReturnsType, nullType, number_type, objectType, pointer_type, reflectClass, short_type, shortType, string_type, throwable_type, toString_method, tostring_type, toStringType, typeArray0, void_type, voidType
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Object
extractStaticLink
(ClassType type) This method is called from compiled code.static PairClassType
static PairClassType
Methods inherited from class gnu.bytecode.ClassType
addField, addField, addField, addField, addFields, addInterface, addMemberClass, addMemberClasses, addMethod, addMethod, addMethod, addMethod, addMethod, addMethod, addMethod, addMethods, addModifiers, checkSingleAbstractMethod, cleanupAfterCompilation, compare, countMethods, doFixups, getAbstractMethods, getAllInterfaces, getAnnotation, getAttributes, getClassfileMajorVersion, getClassfileMinorVersion, getClassfileVersion, getConstant, getConstants, getDeclaredClass, getDeclaredField, getDeclaredMethod, getDeclaredMethod, getDeclaredMethods, getDeclaredStaticMethod, getDeclaringClass, getDefaultConstructor, getEnclosingMember, getField, getField, getFieldCount, getFields, getInterfaces, getMatchingMethods, getMethod, getMethod, getMethodCount, getMethods, getMethods, getMethods, getMethods, getMethods, getModifiers, getOuterLinkType, getPackageName, getSimpleName, getStaticFlag, getSuperclass, getTypeParameters, hasOuterLink, implementsInterface, isAccessible, isAccessible, isAnnotation, isCompatibleWithValue, isFinal, isInterface, isSubclass, isSubclass, make, make, nameToSignature, readExternal, readResolve, removeField, setAttributes, setClassfileVersion, setClassfileVersion, setClassfileVersionJava5, setEnclosingMember, setInterface, setInterfaces, setModifiers, setName, setOuterLink, setSourceFile, setStratum, setSuper, setSuper, to_utf8, toString, writeExternal, writeToArray, writeToFile, writeToFile, writeToStream
Methods inherited from class gnu.bytecode.ObjectType
coerceFromObject, emitCoerceFromObject, getContextClass, getContextClassLoader, getInternalName, getMethods, getReflectClass, isExisting, isInstance, setExisting
Methods inherited from class gnu.bytecode.Type
coerceToObject, emitCoerceToObject, emitConvertFromPrimitive, emitIsInstance, getGenericSignature, getImplementationType, getMaybeGenericSignature, getName, getRawType, getRealType, getSignature, getSize, getSizeInWords, getType, hashCode, isCompatibleWithValue, isMoreSpecific, isSame, isSubtype, isValidJavaTypeName, isVoid, lookupType, lowestCommonSharedType, lowestCommonSuperType, make, make, printSignature, promote, promoteIfUnsigned, registerTypeForClass, setGenericSignature, setReflectClass, setSignature, signatureLength, signatureLength, signatureToName, signatureToPrimitive, signatureToType, signatureToType, swappedCompareResult
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.reflect.Type
getTypeName
-
Field Details
-
instanceType
-
-
Constructor Details
-
PairClassType
public PairClassType()
-
-
Method Details
-
make
-
make
public static PairClassType make(Class reflectInterface, Class reflectInstanceClass, Object staticLink) -
getStaticLink
-
extractStaticLink
This method is called from compiled code.
-