Class GoName
java.lang.Object
ghidra.app.util.bin.format.golang.rtti.GoName
- All Implemented Interfaces:
StructureMarkup<GoName>
,StructureReader<GoName>
Represents a golang "name" construct, which isn't represented in go as a normal structure
since it is full of variable length and optional fields.
struct { byte flag; varint strlen; char[strlen] chars; (optional: varint tag_strlen; char [tag_strlen];) (optional: int32 pkgpath) }Because this type has variable length fields (@FieldOutput(isVariableLength=true)), there will be unique structure data types produced for each size combination of a GoName structure, and will be named "GoName_N_M", where N and M are the lengths of the variable fields [name, tag]
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface ghidra.app.util.bin.format.golang.structmapping.StructureMarkup
additionalMarkup, getExternalInstancesToMarkup, getStructureLabel
-
Constructor Details
-
GoName
public GoName()
-
-
Method Details
-
readStructure
Description copied from interface:StructureReader
Called after an instance has been created and its context has been initialized.- Specified by:
readStructure
in interfaceStructureReader<GoName>
- Throws:
IOException
-
getName
-
getTag
-
getPkgPath
- Throws:
IOException
-
getPkgPathDataType
-
getFullNameString
- Throws:
IOException
-
getFlags
public int getFlags() -
getFlagsSet
-
getStructureContext
- Specified by:
getStructureContext
in interfaceStructureMarkup<GoName>
-
getStructureName
Description copied from interface:StructureMarkup
Returns the name of the instance, typically retrieved from data found inside the instance.- Specified by:
getStructureName
in interfaceStructureMarkup<GoName>
- Returns:
- string name, or null if this instance does not have a name
- Throws:
IOException
- if error getting name
-