summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2019-07-23 23:48:05 -0400
committerGlenn Smith <glenn@vector35.com>2019-07-29 16:41:06 -0400
commit53c6d163da2c10fa3643e8e105fee101b31c0396 (patch)
tree382a8a1ecda5e4f5fbd3c09acd1a0322e9f60f0e /binaryninjaapi.h
parent3ab5d0ceebd853147644d6cf1100740ff929e3d2 (diff)
Input completion through python
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 6b8d5fc2..1e5ab511 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -4099,6 +4099,7 @@ namespace BinaryNinja
static void SetCurrentBasicBlockCallback(void* ctxt, BNBasicBlock* block);
static void SetCurrentAddressCallback(void* ctxt, uint64_t addr);
static void SetCurrentSelectionCallback(void* ctxt, uint64_t begin, uint64_t end);
+ static char* CompleteInputCallback(void* ctxt, const char* text, uint64_t state);
virtual void DestroyInstance();
@@ -4110,6 +4111,7 @@ namespace BinaryNinja
virtual void SetCurrentBasicBlock(BasicBlock* block);
virtual void SetCurrentAddress(uint64_t addr);
virtual void SetCurrentSelection(uint64_t begin, uint64_t end);
+ virtual std::string CompleteInput(const std::string& text, uint64_t state);
void Output(const std::string& text);
void Error(const std::string& text);
@@ -4118,6 +4120,9 @@ namespace BinaryNinja
void RegisterOutputListener(ScriptingOutputListener* listener);
void UnregisterOutputListener(ScriptingOutputListener* listener);
+
+ std::string GetDelimiters();
+ void SetDelimiters(const std::string& delimiters);
};
class CoreScriptingInstance: public ScriptingInstance
@@ -4133,6 +4138,7 @@ namespace BinaryNinja
virtual void SetCurrentBasicBlock(BasicBlock* block) override;
virtual void SetCurrentAddress(uint64_t addr) override;
virtual void SetCurrentSelection(uint64_t begin, uint64_t end) override;
+ virtual std::string CompleteInput(const std::string& text, uint64_t state) override;
};
class ScriptingProvider: public StaticCoreRefCountObject<BNScriptingProvider>