]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - contrib/llvm/tools/lldb/source/API/SBExpressionOptions.cpp
- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
[FreeBSD/releng/10.2.git] / contrib / llvm / tools / lldb / source / API / SBExpressionOptions.cpp
1 //===-- SBExpressionOptions.cpp ---------------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #include "lldb/API/SBExpressionOptions.h"
11 #include "lldb/API/SBStream.h"
12
13 #include "lldb/Target/Target.h"
14
15 using namespace lldb;
16 using namespace lldb_private;
17
18
19 SBExpressionOptions::SBExpressionOptions () :
20     m_opaque_ap(new EvaluateExpressionOptions())
21 {
22 }
23
24 SBExpressionOptions::SBExpressionOptions (const SBExpressionOptions &rhs)
25 {
26     m_opaque_ap.reset(new EvaluateExpressionOptions());
27     *(m_opaque_ap.get()) = rhs.ref();
28 }
29
30 const SBExpressionOptions &
31 SBExpressionOptions::operator = (const SBExpressionOptions &rhs)
32 {
33     if (this != &rhs)
34     {
35         this->ref() = rhs.ref();
36     }
37     return *this;
38 }
39
40 SBExpressionOptions::~SBExpressionOptions()
41 {
42 }
43
44 bool
45 SBExpressionOptions::GetCoerceResultToId () const
46 {
47     return m_opaque_ap->DoesCoerceToId ();
48 }
49
50 void
51 SBExpressionOptions::SetCoerceResultToId (bool coerce)
52 {
53     m_opaque_ap->SetCoerceToId (coerce);
54 }
55
56 bool
57 SBExpressionOptions::GetUnwindOnError () const
58 {
59     return m_opaque_ap->DoesUnwindOnError ();
60 }
61
62 void
63 SBExpressionOptions::SetUnwindOnError (bool unwind)
64 {
65     m_opaque_ap->SetUnwindOnError (unwind);
66 }
67
68 bool
69 SBExpressionOptions::GetIgnoreBreakpoints () const
70 {
71     return m_opaque_ap->DoesIgnoreBreakpoints ();
72 }
73
74 void
75 SBExpressionOptions::SetIgnoreBreakpoints (bool ignore)
76 {
77     m_opaque_ap->SetIgnoreBreakpoints (ignore);
78 }
79
80 lldb::DynamicValueType
81 SBExpressionOptions::GetFetchDynamicValue () const
82 {
83     return m_opaque_ap->GetUseDynamic ();
84 }
85
86 void
87 SBExpressionOptions::SetFetchDynamicValue (lldb::DynamicValueType dynamic)
88 {
89     m_opaque_ap->SetUseDynamic (dynamic);
90 }
91
92 uint32_t
93 SBExpressionOptions::GetTimeoutInMicroSeconds () const
94 {
95     return m_opaque_ap->GetTimeoutUsec ();
96 }
97
98 void
99 SBExpressionOptions::SetTimeoutInMicroSeconds (uint32_t timeout)
100 {
101     m_opaque_ap->SetTimeoutUsec (timeout);
102 }
103
104 bool
105 SBExpressionOptions::GetTryAllThreads () const
106 {
107     return m_opaque_ap->GetTryAllThreads ();
108 }
109
110 void
111 SBExpressionOptions::SetTryAllThreads (bool run_others)
112 {
113     m_opaque_ap->SetTryAllThreads (run_others);
114 }
115
116 bool
117 SBExpressionOptions::GetTrapExceptions () const
118 {
119     return m_opaque_ap->GetTrapExceptions ();
120 }
121
122 void
123 SBExpressionOptions::SetTrapExceptions (bool trap_exceptions)
124 {
125     m_opaque_ap->SetTrapExceptions (trap_exceptions);
126 }
127
128 EvaluateExpressionOptions *
129 SBExpressionOptions::get() const
130 {
131     return m_opaque_ap.get();
132 }
133
134 EvaluateExpressionOptions &
135 SBExpressionOptions::ref () const
136 {
137     return *(m_opaque_ap.get());
138 }