MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / InstructionTextToken

Class InstructionTextToken

binaryninjaapi.h:2433–2472  ·  view source on GitHub ↗

! `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

Source from the content-addressed store, hash-verified

2431 ========================== ============================================
2432 */
2433 struct InstructionTextToken
2434 {
2435 enum
2436 {
2437 WidthIsByteCount = 0
2438 };
2439
2440 BNInstructionTextTokenType type;
2441 std::string text;
2442 uint64_t value;
2443 uint64_t width;
2444 size_t size, operand;
2445 BNInstructionTextTokenContext context;
2446 uint8_t confidence;
2447 uint64_t address;
2448 std::vector<std::string> typeNames;
2449 size_t exprIndex;
2450
2451 InstructionTextToken();
2452 InstructionTextToken(uint8_t confidence, BNInstructionTextTokenType t, const std::string& txt);
2453 InstructionTextToken(BNInstructionTextTokenType type, const std::string& text, uint64_t value = 0,
2454 size_t size = 0, size_t operand = BN_INVALID_OPERAND, uint8_t confidence = BN_FULL_CONFIDENCE,
2455 const std::vector<std::string>& typeName = {}, uint64_t width = WidthIsByteCount);
2456 InstructionTextToken(BNInstructionTextTokenType type, BNInstructionTextTokenContext context,
2457 const std::string& text, uint64_t address, uint64_t value = 0, size_t size = 0,
2458 size_t operand = BN_INVALID_OPERAND, uint8_t confidence = BN_FULL_CONFIDENCE,
2459 const std::vector<std::string>& typeName = {}, uint64_t width = WidthIsByteCount);
2460 InstructionTextToken(const BNInstructionTextToken& token);
2461
2462 InstructionTextToken WithConfidence(uint8_t conf);
2463 static void ConvertInstructionTextToken(const InstructionTextToken& token, BNInstructionTextToken* result);
2464 static BNInstructionTextToken* CreateInstructionTextTokenList(const std::vector<InstructionTextToken>& tokens);
2465 static void FreeInstructionTextToken(BNInstructionTextToken* token);
2466 static void FreeInstructionTextTokenList(
2467 BNInstructionTextToken* tokens, size_t count);
2468 static std::vector<InstructionTextToken> ConvertAndFreeInstructionTextTokenList(
2469 BNInstructionTextToken* tokens, size_t count);
2470 static std::vector<InstructionTextToken> ConvertInstructionTextTokenList(
2471 const BNInstructionTextToken* tokens, size_t count);
2472 };
2473
2474 class UndoEntry;
2475

Callers 9

perform_get_expr_textMethod · 0.90
resolve_funcMethod · 0.90
function_type_tokensMethod · 0.90
apply_to_linesMethod · 0.90
WithConfidenceMethod · 0.70
GetInstructionTextMethod · 0.50

Calls

no outgoing calls

Tested by

no test coverage detected