`InstructionTextToken` is used to tell the core about the various components in the disassembly views. More...
`InstructionTextToken` is used to tell the core about the various components in the disassembly views.
The below table is provided for documentation purposes but the complete list of TokenTypes is available at `InstructionTextTokenType`. Note that types marked as `Not emitted by architectures` are not intended to be used by Architectures during lifting. Rather, they are added by the core during analysis or display. UI plugins, however, may make use of them as appropriate.
Uses of tokens include plugins that parse the output of an architecture (though parsing IL is recommended), or additionally, applying color schemes appropriately.
| InstructionTextTokenType | Description |
|---|---|
| AddressDisplayToken | Not emitted by architectures |
| AnnotationToken | Not emitted by architectures |
| ArgumentNameToken | Not emitted by architectures |
| BeginMemoryOperandToken | The start of memory operand |
| CharacterConstantToken | A printable character |
| CodeRelativeAddressToken | Not emitted by architectures |
| CodeSymbolToken | Not emitted by architectures |
| DataSymbolToken | Not emitted by architectures |
| EndMemoryOperandToken | The end of a memory operand |
| ExternalSymbolToken | Not emitted by architectures |
| FieldNameToken | Not emitted by architectures |
| FloatingPointToken | Floating point number |
| HexDumpByteValueToken | Not emitted by architectures |
| HexDumpInvalidByteToken | Not emitted by architectures |
| HexDumpSkippedByteToken | Not emitted by architectures |
| HexDumpTextToken | Not emitted by architectures |
| ImportToken | Not emitted by architectures |
| IndirectImportToken | Not emitted by architectures |
| InstructionToken | The instruction mnemonic |
| IntegerToken | Integers |
| KeywordToken | Not emitted by architectures |
| LocalVariableToken | Not emitted by architectures |
| StackVariableToken | Not emitted by architectures |
| NameSpaceSeparatorToken | Not emitted by architectures |
| NameSpaceToken | Not emitted by architectures |
| OpcodeToken | Not emitted by architectures |
| OperandSeparatorToken | The comma or delimiter that separates tokens |
| PossibleAddressToken | Integers that are likely addresses |
| RegisterToken | Registers |
| StringToken | Not emitted by architectures |
| StructOffsetToken | Not emitted by architectures |
| TagToken | Not emitted by architectures |
| TextToken | Used for anything not of another type. |
| CommentToken | Comments |
| TypeNameToken | Not emitted by architectures |
| AddressSeparatorToken | Not emitted by architectures |
Public Types | |
| enum | { WidthIsByteCount = 0 } |
Public Member Functions | |
| InstructionTextToken () | |
| InstructionTextToken (uint8_t confidence, BNInstructionTextTokenType t, const std::string &txt) | |
| InstructionTextToken (BNInstructionTextTokenType type, const std::string &text, uint64_t value=0, size_t size=0, size_t operand=0xffffffff, uint8_t confidence=255, const std::vector< std::string > &typeName={}, uint64_t width=WidthIsByteCount) | |
| InstructionTextToken (BNInstructionTextTokenType type, BNInstructionTextTokenContext context, const std::string &text, uint64_t address, uint64_t value=0, size_t size=0, size_t operand=0xffffffff, uint8_t confidence=255, const std::vector< std::string > &typeName={}, uint64_t width=WidthIsByteCount) | |
| InstructionTextToken (const BNInstructionTextToken &token) | |
| InstructionTextToken | WithConfidence (uint8_t conf) |
| BNInstructionTextToken | GetAPIObject () const |
Static Public Member Functions | |
| static InstructionTextToken | FromAPIObject (const BNInstructionTextToken *token) |
| static void | FreeAPIObject (BNInstructionTextToken *token) |
| static void | ConvertInstructionTextToken (const InstructionTextToken &token, BNInstructionTextToken *result) |
| static BNInstructionTextToken * | CreateInstructionTextTokenList (const std::vector< InstructionTextToken > &tokens) |
| static void | FreeInstructionTextToken (BNInstructionTextToken *token) |
| static void | FreeInstructionTextTokenList (BNInstructionTextToken *tokens, size_t count) |
| static std::vector< InstructionTextToken > | ConvertAndFreeInstructionTextTokenList (BNInstructionTextToken *tokens, size_t count) |
| static std::vector< InstructionTextToken > | ConvertInstructionTextTokenList (const BNInstructionTextToken *tokens, size_t count) |
Public Attributes | |
| BNInstructionTextTokenType | type |
| std::string | text |
| uint64_t | value |
| uint64_t | width |
| size_t | size |
| size_t | operand |
| BNInstructionTextTokenContext | context |
| uint8_t | confidence |
| uint64_t | address |
| std::vector< std::string > | typeNames |
| size_t | exprIndex |
| InstructionTextToken::InstructionTextToken | ( | ) |
| BinaryNinja::InstructionTextToken::InstructionTextToken | ( | uint8_t | confidence, |
| BNInstructionTextTokenType | t, | ||
| const std::string & | txt ) |
| BinaryNinja::InstructionTextToken::InstructionTextToken | ( | BNInstructionTextTokenType | type, |
| const std::string & | text, | ||
| uint64_t | value = 0, | ||
| size_t | size = 0, | ||
| size_t | operand = 0xffffffff, | ||
| uint8_t | confidence = 255, | ||
| const std::vector< std::string > & | typeName = {}, | ||
| uint64_t | width = WidthIsByteCount ) |
| BinaryNinja::InstructionTextToken::InstructionTextToken | ( | BNInstructionTextTokenType | type, |
| BNInstructionTextTokenContext | context, | ||
| const std::string & | text, | ||
| uint64_t | address, | ||
| uint64_t | value = 0, | ||
| size_t | size = 0, | ||
| size_t | operand = 0xffffffff, | ||
| uint8_t | confidence = 255, | ||
| const std::vector< std::string > & | typeName = {}, | ||
| uint64_t | width = WidthIsByteCount ) |
| InstructionTextToken::InstructionTextToken | ( | const BNInstructionTextToken & | token | ) |
| InstructionTextToken InstructionTextToken::WithConfidence | ( | uint8_t | conf | ) |
| BNInstructionTextToken InstructionTextToken::GetAPIObject | ( | ) | const |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| BNInstructionTextTokenType BinaryNinja::InstructionTextToken::type |
| std::string BinaryNinja::InstructionTextToken::text |
| uint64_t BinaryNinja::InstructionTextToken::value |
| uint64_t BinaryNinja::InstructionTextToken::width |
| size_t BinaryNinja::InstructionTextToken::size |
| size_t BinaryNinja::InstructionTextToken::operand |
| BNInstructionTextTokenContext BinaryNinja::InstructionTextToken::context |
| uint8_t BinaryNinja::InstructionTextToken::confidence |
| uint64_t BinaryNinja::InstructionTextToken::address |
| std::vector<std::string> BinaryNinja::InstructionTextToken::typeNames |
| size_t BinaryNinja::InstructionTextToken::exprIndex |