Package org.benf.cfr.reader.entities
Class Field
- java.lang.Object
-
- org.benf.cfr.reader.entities.Field
-
- All Implemented Interfaces:
KnowsRawSize,TypeUsageCollectable
public class Field extends java.lang.Object implements KnowsRawSize, TypeUsageCollectable
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<AccessFlag>accessFlagsprivate AttributeMapattributesprivate JavaTypeInstancecachedDecodedTypeprivate TypedLiteralconstantValueprivate ConstantPoolcpprivate intdescriptorIndexprivate booleandisambiguateprivate java.lang.StringfieldNameprivate longlengthprivate static longOFFSET_OF_ACCESS_FLAGSprivate static longOFFSET_OF_ATTRIBUTESprivate static longOFFSET_OF_ATTRIBUTES_COUNTprivate static longOFFSET_OF_DESCRIPTOR_INDEXprivate static longOFFSET_OF_NAME_INDEX
-
Constructor Summary
Constructors Constructor Description Field(ByteData raw, ConstantPool cp, ClassFileVersion classFileVersion)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcollectTypeUsages(TypeUsageCollector collector)voiddump(Dumper d, java.lang.String name, ClassFile owner, boolean asRecordField)private JavaTypeInstancegenerateTypeInstance()java.util.Set<AccessFlag>getAccessFlags()TypedLiteralgetConstantValue()java.lang.StringgetFieldName()JavaTypeInstancegetJavaTypeInstance()longgetRawByteLength()private AttributeSignaturegetSignatureAttribute()booleanisAccessibleFrom(JavaRefTypeInstance maybeCaller, ClassFile classFile)(package private) voidsetDisambiguate()booleantestAccessFlag(AccessFlag accessFlag)
-
-
-
Field Detail
-
OFFSET_OF_ACCESS_FLAGS
private static final long OFFSET_OF_ACCESS_FLAGS
- See Also:
- Constant Field Values
-
OFFSET_OF_NAME_INDEX
private static final long OFFSET_OF_NAME_INDEX
- See Also:
- Constant Field Values
-
OFFSET_OF_DESCRIPTOR_INDEX
private static final long OFFSET_OF_DESCRIPTOR_INDEX
- See Also:
- Constant Field Values
-
OFFSET_OF_ATTRIBUTES_COUNT
private static final long OFFSET_OF_ATTRIBUTES_COUNT
- See Also:
- Constant Field Values
-
OFFSET_OF_ATTRIBUTES
private static final long OFFSET_OF_ATTRIBUTES
- See Also:
- Constant Field Values
-
cp
private final ConstantPool cp
-
length
private final long length
-
descriptorIndex
private final int descriptorIndex
-
accessFlags
private final java.util.Set<AccessFlag> accessFlags
-
attributes
private final AttributeMap attributes
-
constantValue
private final TypedLiteral constantValue
-
fieldName
private final java.lang.String fieldName
-
disambiguate
private boolean disambiguate
-
cachedDecodedType
private transient JavaTypeInstance cachedDecodedType
-
-
Constructor Detail
-
Field
public Field(ByteData raw, ConstantPool cp, ClassFileVersion classFileVersion)
-
-
Method Detail
-
getRawByteLength
public long getRawByteLength()
- Specified by:
getRawByteLengthin interfaceKnowsRawSize
-
getSignatureAttribute
private AttributeSignature getSignatureAttribute()
-
generateTypeInstance
private JavaTypeInstance generateTypeInstance()
-
getJavaTypeInstance
public JavaTypeInstance getJavaTypeInstance()
-
setDisambiguate
void setDisambiguate()
-
getFieldName
public java.lang.String getFieldName()
-
testAccessFlag
public boolean testAccessFlag(AccessFlag accessFlag)
-
getAccessFlags
public java.util.Set<AccessFlag> getAccessFlags()
-
getConstantValue
public TypedLiteral getConstantValue()
-
collectTypeUsages
public void collectTypeUsages(TypeUsageCollector collector)
- Specified by:
collectTypeUsagesin interfaceTypeUsageCollectable
-
isAccessibleFrom
public boolean isAccessibleFrom(JavaRefTypeInstance maybeCaller, ClassFile classFile)
-
-