diff options
| author | Peter LaFosse <peter@vector35.com> | 2020-04-24 14:06:45 -0400 |
|---|---|---|
| committer | Peter LaFosse <peter@vector35.com> | 2020-04-25 14:24:02 -0400 |
| commit | 8947d620ff982ac5a40e925cce5d95637618a688 (patch) | |
| tree | bb0f01643ac4ecb81ba87277b4fa0088a6e31f2b | |
| parent | 38fcbfcf6eac86e8191667d5cabc467f6ee48579 (diff) | |
Add GetDisplayStringForInteger API
| -rw-r--r-- | architecture.cpp | 10 | ||||
| -rw-r--r-- | binaryninjaapi.h | 1 | ||||
| -rw-r--r-- | binaryninjacore.h | 1 |
3 files changed, 12 insertions, 0 deletions
diff --git a/architecture.cpp b/architecture.cpp index 09ef2013..42323a6c 100644 --- a/architecture.cpp +++ b/architecture.cpp @@ -2159,6 +2159,16 @@ void ArchitectureHook::Register(BNCustomArchitecture* callbacks) } +string DisassemblyTextRenderer::GetDisplayStringForInteger(Ref<BinaryView> binaryView, BNIntegerDisplayType type, + uint64_t value, size_t inputWidth) +{ + char* str = BNGetDisplayStringForInteger(binaryView->GetObject(), type, value, inputWidth); + string s(str); + BNFreeString(str); + return s; +} + + DisassemblyTextRenderer::DisassemblyTextRenderer(Function* func, DisassemblySettings* settings) { m_object = BNCreateDisassemblyTextRenderer(func->GetObject(), settings ? settings->GetObject() : nullptr); diff --git a/binaryninjaapi.h b/binaryninjaapi.h index bcc4b0cc..7a864b58 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -5225,6 +5225,7 @@ __attribute__ ((format (printf, 1, 2))) bool hasAutoAnnotations, const std::string& leadingSpaces=" ", const std::string& indentSpaces=""); + static std::string GetDisplayStringForInteger(Ref<BinaryView> binaryView, BNIntegerDisplayType type, uint64_t value, size_t inputWidth); }; struct LinearViewObjectIdentifier diff --git a/binaryninjacore.h b/binaryninjacore.h index a268e23e..0632b62d 100644 --- a/binaryninjacore.h +++ b/binaryninjacore.h @@ -2961,6 +2961,7 @@ __attribute__ ((format (printf, 1, 2))) BNDisassemblySettings* settings, size_t* count); BINARYNINJACOREAPI void BNFreeDisassemblyTextLines(BNDisassemblyTextLine* lines, size_t count); + BINARYNINJACOREAPI char* BNGetDisplayStringForInteger(BNBinaryView* binaryView, BNIntegerDisplayType type, uint64_t value, size_t inputWidth); BINARYNINJACOREAPI BNDisassemblyTextRenderer* BNCreateDisassemblyTextRenderer(BNFunction* func, BNDisassemblySettings* settings); BINARYNINJACOREAPI BNDisassemblyTextRenderer* BNCreateLowLevelILDisassemblyTextRenderer(BNLowLevelILFunction* func, |
