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
public class PairClassType extends ClassType
A class type implemented as a pair of an interface and a class. This is how true multiple inheritance can be implemented.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class gnu.bytecode.Type
Type.NeverReturns
-
-
Field Summary
Fields Modifier and Type Field Description ClassType
instanceType
-
Fields 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 Constructor Description PairClassType()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Object
extractStaticLink(ClassType type)
This method is called from compiled code.Object
getStaticLink()
static PairClassType
make(Class reflectInterface, Class reflectInstanceClass)
static PairClassType
make(Class reflectInterface, Class reflectInstanceClass, Object staticLink)
-
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 Detail
-
instanceType
public ClassType instanceType
-
-
Method Detail
-
make
public static PairClassType make(Class reflectInterface, Class reflectInstanceClass)
-
make
public static PairClassType make(Class reflectInterface, Class reflectInstanceClass, Object staticLink)
-
getStaticLink
public Object getStaticLink()
-
-