aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
diff options
context:
space:
mode:
authorVassil Vassilev <v.g.vassilev@gmail.com>2024-09-23 12:00:43 +0200
committerGitHub <noreply@github.com>2024-09-23 12:00:43 +0200
commita72d7eea5413444249670579fecea6823fb3c564 (patch)
tree57f27bfea34590ed7790022dcead0a73c612c388 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
parent7a181980b900683fd3e1ac9601a627c758f19a61 (diff)
downloadllvm-a72d7eea5413444249670579fecea6823fb3c564.zip
llvm-a72d7eea5413444249670579fecea6823fb3c564.tar.gz
llvm-a72d7eea5413444249670579fecea6823fb3c564.tar.bz2
[clang-repl] Simplify the value printing logic to enable out-of-process. (#107737)
This patch improves the design of the IncrementalParser and Interpreter classes. Now the incremental parser is only responsible for building the partial translation unit declaration and the AST, while the Interpreter fills in the lower level llvm::Module and other JIT-related infrastructure. Finally the Interpreter class now orchestrates the AST and the LLVM IR with the IncrementalParser and IncrementalExecutor classes. The design improvement allows us to rework some of the logic that extracts an interpreter value into the clang::Value object. The new implementation simplifies use-cases which are used for out-of-process execution by allowing interpreter to be inherited or customized with an clang::ASTConsumer. This change will enable completing the pretty printing work which is in llvm/llvm-project#84769
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h')
0 files changed, 0 insertions, 0 deletions