java.lang.Object
de.grogra.reflect.MemberBase
- All Implemented Interfaces:
Member
- Direct Known Subclasses:
ASMType
,FieldBase
,Local
,PersistenceField
,TypeImpl
-
Field Summary
Modifier and TypeFieldDescriptionprotected ObjectList<Annotation>
protected Type
protected String
protected int
protected String
Fields inherited from interface de.grogra.reflect.Member
ABSTRACT, ACCESS_MODIFIERS, ARRAY, BRIDGE, CONSTANT, FINAL, INTERFACE, JAVA_MODIFIERS, LOCAL_CLASS, MIN_UNUSED_MODIFIER, NATIVE, PRIVATE, PROTECTED, PUBLIC, STATIC, STRICT, SYNCHRONIZED, SYNTHETIC, TRANSIENT, VARARGS, VOLATILE
-
Constructor Summary
ConstructorDescriptionMemberBase
(String name, String descriptor, int modifiers, Type declaringType) -
Method Summary
Modifier and TypeMethodDescriptiongetDeclaredAnnotation
(int index) int
final Type
Returns the declaring type of which this is a member.Returns a descriptor for this member.final int
Returns the modifiers of this member as a combination of the bit masks which are defined in this interface.getName()
Returns the name of this member.Returns the simple name of this member.toString()
-
Field Details
-
declaringType
-
name
-
modifiers
protected int modifiers -
descriptor
-
annots
-
-
Constructor Details
-
MemberBase
-
MemberBase
public MemberBase()
-
-
Method Details
-
getModifiers
public final int getModifiers()Description copied from interface:Member
Returns the modifiers of this member as a combination of the bit masks which are defined in this interface.- Specified by:
getModifiers
in interfaceMember
- Returns:
- modifiers of this member
-
getDeclaringType
Description copied from interface:Member
Returns the declaring type of which this is a member. May benull
if such a type does not exist.- Specified by:
getDeclaringType
in interfaceMember
- Returns:
- this member's declaring type
-
getName
Description copied from interface:Member
Returns the name of this member. For types, this is the canonical name of the type, e.g,java.lang.Object
,java.util.Map.Entry
. Otherwise, it equalsMember.getSimpleName()
. -
getSimpleName
Description copied from interface:Member
Returns the simple name of this member. This is the single identifier with which the member is declared in source code, e.g.,Object
,out
,println
.- Specified by:
getSimpleName
in interfaceMember
- Returns:
- simple name of the member
-
getDescriptor
Description copied from interface:Member
Returns a descriptor for this member. Descriptors are constructed as follows:- For types, descriptors are defined as for the Java Virtual
Machine. For primitive types these are the single characters
'Z', 'B', 'S', 'C', 'I', 'J', 'F', 'D', 'V'
for
boolean
,byte
,short
,char
,int
,long
,float
,double
,void
. For array types, the descriptor is the character '[' plus the descriptor of its component type, e.g.,[[I
forint[][]
. For non-array reference types, the descriptor is the character 'L', followed by the binary name (seeType.getBinaryName()
) of the type, where '.' has to be replaced by '/', followed by ';', e.g.,Ljava/lang/Object;
. - For fields, the descriptor is the character 'f', followed by the
simple name of the field, followed by the character ';', followed
by the descriptor of the field's type. E.g.,
fout;Ljava/io/PrintStream;
for the fieldSystem.out
. - For methods and constructors, the descriptor is the character
'm', followed by the simple name of the method (which is
<init>
for constructors), followed by the characters ';' and '(', followed by the descriptors of the method's parameter types, followed by ')', followed by the descriptor of the return type. E.g.mprintln;(Ljava/lang/String;)V
for the methodPrintStream.println(String)
.
- Specified by:
getDescriptor
in interfaceMember
- Returns:
- the member's descriptor
- For types, descriptors are defined as for the Java Virtual
Machine. For primitive types these are the single characters
'Z', 'B', 'S', 'C', 'I', 'J', 'F', 'D', 'V'
for
-
getDeclaredAnnotationCount
public int getDeclaredAnnotationCount()- Specified by:
getDeclaredAnnotationCount
in interfaceMember
-
getDeclaredAnnotation
- Specified by:
getDeclaredAnnotation
in interfaceMember
-
toString
-