Class CliAbstractSig
- java.lang.Object
-
- ghidra.app.util.bin.format.pe.cli.blobs.CliBlob
-
- ghidra.app.util.bin.format.pe.cli.blobs.CliAbstractSig
-
- All Implemented Interfaces:
CliRepresentable
,StructConverter
- Direct Known Subclasses:
CliSigAssembly
,CliSigAssemblyRef
,CliSigConstant
,CliSigField
,CliSigLocalVar
,CliSigMethodDef
,CliSigMethodRef
,CliSigMethodSpec
,CliSigProperty
,CliSigStandAloneMethod
,CliSigTypeSpec
public abstract class CliAbstractSig extends CliBlob implements CliRepresentable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
CliAbstractSig.CliArrayShape
static class
CliAbstractSig.CliByRef
static class
CliAbstractSig.CliConstraint
static class
CliAbstractSig.CliCustomMod
static class
CliAbstractSig.CliElementType
class
CliAbstractSig.CliParam
class
CliAbstractSig.CliRetType
class
CliAbstractSig.CliSigType
class
CliAbstractSig.CliTypeArray
class
CliAbstractSig.CliTypeBase
class
CliAbstractSig.CliTypeClass
static class
CliAbstractSig.CliTypeCodeDataType
class
CliAbstractSig.CliTypeFnPtr
class
CliAbstractSig.CliTypeGenericInst
class
CliAbstractSig.CliTypePrimitive
class
CliAbstractSig.CliTypePtr
class
CliAbstractSig.CliTypeSzArray
class
CliAbstractSig.CliTypeValueType
class
CliAbstractSig.CliTypeVarOrMvar
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PATH
-
Fields inherited from class ghidra.app.util.bin.format.pe.cli.blobs.CliBlob
blobOffset, contentsOffset, contentsSize
-
-
Constructor Summary
Constructors Constructor Description CliAbstractSig(CliBlob blob)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static DataType
convertTypeCodeToDataType(CliAbstractSig.CliElementType typeCode)
abstract java.lang.String
getContentsComment()
Gets the comment associated with this blob's contents.abstract DataType
getContentsDataType()
Gets the data type associated with this blob's contents.abstract java.lang.String
getContentsName()
Gets the name associated with this blob's contents.java.lang.String
getRepresentation()
Gets the string representation of this blob.java.lang.String
getRepresentation(CliStreamMetadata stream)
protected abstract java.lang.String
getRepresentationCommon(CliStreamMetadata stream, boolean isShort)
This is the method that subclasses should override.protected java.lang.String
getRepresentationOf(CliRepresentable obj, CliStreamMetadata stream, boolean isShort)
java.lang.String
getShortRepresentation()
java.lang.String
getShortRepresentation(CliStreamMetadata stream)
CliAbstractSig.CliSigType
readCliType(BinaryReader reader)
-
Methods inherited from class ghidra.app.util.bin.format.pe.cli.blobs.CliBlob
decodeCompressedSigned, decodeCompressedSigned, decodeCompressedSigned, decodeCompressedSignedInt, decodeCompressedUnsigned, decodeCompressedUnsigned, decodeCompressedUnsigned, decodeCompressedUnsignedInt, getContents, getContentsReader, getContentsSize, getDataTypeForBytes, getName, getSize, getSizeDataType, getStreamIndex, isLittleEndian, testSizeDecoding, toDataType
-
-
-
-
Field Detail
-
PATH
public static final java.lang.String PATH
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CliAbstractSig
public CliAbstractSig(CliBlob blob)
-
-
Method Detail
-
getContentsDataType
public abstract DataType getContentsDataType()
Description copied from class:CliBlob
Gets the data type associated with this blob's contents.- Overrides:
getContentsDataType
in classCliBlob
- Returns:
- The data type associated with this blob's contents.
-
getContentsName
public abstract java.lang.String getContentsName()
Description copied from class:CliBlob
Gets the name associated with this blob's contents.- Overrides:
getContentsName
in classCliBlob
- Returns:
- The name associated with this blob's contents.
-
getContentsComment
public abstract java.lang.String getContentsComment()
Description copied from class:CliBlob
Gets the comment associated with this blob's contents.- Overrides:
getContentsComment
in classCliBlob
- Returns:
- The comment associated with this blob's contents.
-
getRepresentationCommon
protected abstract java.lang.String getRepresentationCommon(CliStreamMetadata stream, boolean isShort)
This is the method that subclasses should override. If stream is null, the method must not cause a NullPointerException, i.e. it must handle this as if there was no stream to begin with.
-
getRepresentation
public final java.lang.String getRepresentation()
Description copied from class:CliBlob
Gets the string representation of this blob.- Specified by:
getRepresentation
in interfaceCliRepresentable
- Overrides:
getRepresentation
in classCliBlob
- Returns:
- The string representation of this blob.
-
getShortRepresentation
public final java.lang.String getShortRepresentation()
- Specified by:
getShortRepresentation
in interfaceCliRepresentable
-
getRepresentation
public final java.lang.String getRepresentation(CliStreamMetadata stream)
- Specified by:
getRepresentation
in interfaceCliRepresentable
-
getShortRepresentation
public final java.lang.String getShortRepresentation(CliStreamMetadata stream)
- Specified by:
getShortRepresentation
in interfaceCliRepresentable
-
getRepresentationOf
protected java.lang.String getRepresentationOf(CliRepresentable obj, CliStreamMetadata stream, boolean isShort)
-
convertTypeCodeToDataType
public static DataType convertTypeCodeToDataType(CliAbstractSig.CliElementType typeCode)
-
readCliType
public CliAbstractSig.CliSigType readCliType(BinaryReader reader) throws java.io.IOException, InvalidInputException
- Throws:
java.io.IOException
InvalidInputException
-
-