diff options
author | Enrico Granata <granata.enrico@gmail.com> | 2011-07-24 00:14:56 +0000 |
---|---|---|
committer | Enrico Granata <granata.enrico@gmail.com> | 2011-07-24 00:14:56 +0000 |
commit | a37a065c3392ab52abd6a896ac1e95b4878cafad (patch) | |
tree | 87687e7cf49c92f298ba9f8c9a65fc0cecb81b0f /lldb/source/Interpreter/ScriptInterpreter.cpp | |
parent | fb66d5cc9c236d0f6b07177e42509244d9b9d5d5 (diff) | |
download | bcm5719-llvm-a37a065c3392ab52abd6a896ac1e95b4878cafad.tar.gz bcm5719-llvm-a37a065c3392ab52abd6a896ac1e95b4878cafad.zip |
Python synthetic children:
- you can now define a Python class as a synthetic children producer for a type
the class must adhere to this "interface":
def __init__(self, valobj, dict):
def get_child_at_index(self, index):
def get_child_index(self, name):
then using type synth add -l className typeName
(e.g. type synth add -l fooSynthProvider foo)
(This is still WIP with lots to be added)
A small test case is available also as reference
llvm-svn: 135865
Diffstat (limited to 'lldb/source/Interpreter/ScriptInterpreter.cpp')
-rw-r--r-- | lldb/source/Interpreter/ScriptInterpreter.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lldb/source/Interpreter/ScriptInterpreter.cpp b/lldb/source/Interpreter/ScriptInterpreter.cpp index 294aeec3517..27c7badca38 100644 --- a/lldb/source/Interpreter/ScriptInterpreter.cpp +++ b/lldb/source/Interpreter/ScriptInterpreter.cpp @@ -93,11 +93,21 @@ ScriptInterpreter::LanguageToString (lldb::ScriptLanguage language) void ScriptInterpreter::InitializeInterpreter (SWIGInitCallback python_swig_init_callback, SWIGBreakpointCallbackFunction python_swig_breakpoint_callback, - SWIGPythonTypeScriptCallbackFunction python_swig_typescript_callback) + SWIGPythonTypeScriptCallbackFunction python_swig_typescript_callback, + SWIGPythonCreateSyntheticProvider python_swig_synthetic_script, + SWIGPythonCalculateNumChildren python_swig_calc_children, + SWIGPythonGetChildAtIndex python_swig_get_child_index, + SWIGPythonGetIndexOfChildWithName python_swig_get_index_child, + SWIGPythonCastPyObjectToSBValue python_swig_cast_to_sbvalue) { ScriptInterpreterPython::InitializeInterpreter (python_swig_init_callback, python_swig_breakpoint_callback, - python_swig_typescript_callback); + python_swig_typescript_callback, + python_swig_synthetic_script, + python_swig_calc_children, + python_swig_get_child_index, + python_swig_get_index_child, + python_swig_cast_to_sbvalue); } void |