1 //===-- SWIG Interface for SBExecutionContext ---------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 namespace lldb {
10 
11 class SBExecutionContext
12 {
13 public:
14     SBExecutionContext();
15 
16     SBExecutionContext (const lldb::SBExecutionContext &rhs);
17 
18     SBExecutionContext (const lldb::SBTarget &target);
19 
20     SBExecutionContext (const lldb::SBProcess &process);
21 
22     SBExecutionContext (lldb::SBThread thread); // can't be a const& because SBThread::get() isn't itself a const function
23 
24     SBExecutionContext (const lldb::SBFrame &frame);
25 
26     ~SBExecutionContext();
27 
28     SBTarget
29     GetTarget () const;
30 
31     SBProcess
32     GetProcess () const;
33 
34     SBThread
35     GetThread () const;
36 
37     SBFrame
38     GetFrame () const;
39 
40 #ifdef SWIGPYTHON
41     %pythoncode %{
42         target = property(GetTarget, None, doc='''A read only property that returns the same result as GetTarget().''')
43         process = property(GetProcess, None, doc='''A read only property that returns the same result as GetProcess().''')
44         thread = property(GetThread, None, doc='''A read only property that returns the same result as GetThread().''')
45         frame = property(GetFrame, None, doc='''A read only property that returns the same result as GetFrame().''')
46     %}
47 #endif
48 
49 };
50 
51 } // namespace lldb
52