summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/lldb/bindings/interface/SBExecutionContext.i
blob: 46968d04ae326d6ba5bb294d71ff6181dbb4bdf2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//===-- SWIG Interface for SBExecutionContext ---------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

namespace lldb {

class SBExecutionContext
{
public:
    SBExecutionContext();

    SBExecutionContext (const lldb::SBExecutionContext &rhs);

    SBExecutionContext (const lldb::SBTarget &target);

    SBExecutionContext (const lldb::SBProcess &process);

    SBExecutionContext (lldb::SBThread thread); // can't be a const& because SBThread::get() isn't itself a const function

    SBExecutionContext (const lldb::SBFrame &frame);

    ~SBExecutionContext();

    SBTarget
    GetTarget () const;

    SBProcess
    GetProcess () const;

    SBThread
    GetThread () const;

    SBFrame
    GetFrame () const;

#ifdef SWIGPYTHON
    %pythoncode %{
        target = property(GetTarget, None, doc='''A read only property that returns the same result as GetTarget().''')
        process = property(GetProcess, None, doc='''A read only property that returns the same result as GetProcess().''')
        thread = property(GetThread, None, doc='''A read only property that returns the same result as GetThread().''')
        frame = property(GetFrame, None, doc='''A read only property that returns the same result as GetFrame().''')
    %}
#endif

};

} // namespace lldb