public abstract class RVMMember extends AnnotatedElement
Modifier and Type | Field and Description |
---|---|
private TypeReference |
declaringClass
The class that declared this member, available by calling
getDeclaringClass once the class is loaded.
|
protected MemberReference |
memRef
The canonical MemberReference for this member
|
protected short |
modifiers
The modifiers associated with this member.
|
private static int |
NO_OFFSET
Initial value for a field offset - indicates field not laid out.
|
protected int |
offset
The member's jtoc/obj/tib offset in bytes.
|
private Atom |
signature
The signature is a string representing the generic type for this
field or method declaration, may be null
|
declaredAnnotationDatas
Modifier | Constructor and Description |
---|---|
protected |
RVMMember(TypeReference declaringClass,
MemberReference memRef,
short modifiers,
Atom signature,
RVMAnnotation[] annotations)
NOTE: Only
RVMClass is allowed to create an instance of a RVMMember. |
Modifier and Type | Method and Description |
---|---|
RVMClass |
getDeclaringClass() |
Atom |
getDescriptor() |
int |
getId()
Gets a unique id for this member.
|
MemberReference |
getMemberRef() |
int |
getModifiers() |
Atom |
getName() |
Offset |
getOffset()
Offset of this field or method, in bytes.
|
Atom |
getSignature() |
int |
hashCode() |
boolean |
hasOffset()
Has the field been laid out in the object yet ?
|
boolean |
isPrivate() |
boolean |
isProtected() |
boolean |
isPublic() |
void |
setOffset(Offset off)
Only meant to be used by ObjectModel.layoutInstanceFields.
|
String |
toString() |
getAnnotation, getAnnotations, getAnnotationsInternal, getDeclaredAnnotations, getDeclaredAnnotationsInternal, hasAnnotations, hasBaselineNoRegistersAnnotation, hasBaselineSaveLSRegistersAnnotation, hasInlineAnnotation, hasInterruptibleAnnotation, hasLogicallyUninterruptibleAnnotation, hasNoBoundsCheckAnnotation, hasNoCheckStoreAnnotation, hasNoEscapesAnnotation, hasNoInlineAnnotation, hasNonMovingAllocationAnnotation, hasNonMovingAnnotation, hasNoNullCheckAnnotation, hasNoOptCompileAnnotation, hasPreemptibleAnnotation, hasPureAnnotation, hasRuntimeFinalAnnotation, hasRuntimePureAnnotation, hasUninterruptibleAnnotation, hasUninterruptibleNoWarnAnnotation, hasUnpreemptibleAnnotation, hasUnpreemptibleNoWarnAnnotation, hasUntracedAnnotation, isAnnotationDeclared, isAnnotationPresent, readAnnotations, toAnnotations
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
getAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotationsByType
private static final int NO_OFFSET
private final TypeReference declaringClass
protected final MemberReference memRef
protected final short modifiers
private final Atom signature
protected int offset
RVMClass.resolve()
protected RVMMember(TypeReference declaringClass, MemberReference memRef, short modifiers, Atom signature, RVMAnnotation[] annotations)
RVMClass
is allowed to create an instance of a RVMMember.declaringClass
- the TypeReference object of the class that declared this membermemRef
- the canonical memberReference for this member.modifiers
- modifiers associated with this member.signature
- generic type of this memberannotations
- array of runtime visible annotationspublic final RVMClass getDeclaringClass()
public final MemberReference getMemberRef()
public final Atom getDescriptor()
public final Atom getSignature()
public final int getId()
public final boolean isPublic()
true
if the member is usable from classes outside its
package?public final boolean isPrivate()
true
if the member is usable only from this classpublic final boolean isProtected()
true
if the member is usable from subclassespublic final int getModifiers()
ClassLoaderConstants
public final boolean hasOffset()
true
if the field has been assigned an offset, false
if notpublic final Offset getOffset()