File indexing completed on 2026-05-10 08:42:42
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef LLDB_API_SBEXECUTIONCONTEXT_H
0011 #define LLDB_API_SBEXECUTIONCONTEXT_H
0012
0013 #include "lldb/API/SBDefines.h"
0014
0015 #include <cstdio>
0016 #include <vector>
0017
0018 namespace lldb_private {
0019 class ScriptInterpreter;
0020 namespace python {
0021 class SWIGBridge;
0022 }
0023 }
0024
0025 namespace lldb {
0026
0027 class LLDB_API SBExecutionContext {
0028 friend class SBCommandInterpreter;
0029
0030 public:
0031 SBExecutionContext();
0032
0033 SBExecutionContext(const lldb::SBExecutionContext &rhs);
0034
0035 SBExecutionContext(const lldb::SBTarget &target);
0036
0037 SBExecutionContext(const lldb::SBProcess &process);
0038
0039 SBExecutionContext(lldb::SBThread thread);
0040
0041
0042
0043 SBExecutionContext(const lldb::SBFrame &frame);
0044
0045 ~SBExecutionContext();
0046
0047 const SBExecutionContext &operator=(const lldb::SBExecutionContext &rhs);
0048
0049 SBTarget GetTarget() const;
0050
0051 SBProcess GetProcess() const;
0052
0053 SBThread GetThread() const;
0054
0055 SBFrame GetFrame() const;
0056
0057 protected:
0058 friend class lldb_private::python::SWIGBridge;
0059 friend class lldb_private::ScriptInterpreter;
0060
0061 lldb_private::ExecutionContextRef *get() const;
0062
0063 SBExecutionContext(lldb::ExecutionContextRefSP exe_ctx_ref_sp);
0064
0065 private:
0066 mutable lldb::ExecutionContextRefSP m_exe_ctx_sp;
0067 };
0068
0069 }
0070
0071 #endif