180814287SRaphael Isemann //===-- SBExpressionOptions.cpp -------------------------------------------===//
235e1bda6SJim Ingham //
32946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
42946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information.
52946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
635e1bda6SJim Ingham //
735e1bda6SJim Ingham //===----------------------------------------------------------------------===//
835e1bda6SJim Ingham 
935e1bda6SJim Ingham #include "lldb/API/SBExpressionOptions.h"
10baf5664fSJonas Devlieghere #include "SBReproducerPrivate.h"
11bd4bf82aSJonas Devlieghere #include "Utils.h"
1235e1bda6SJim Ingham #include "lldb/API/SBStream.h"
1335e1bda6SJim Ingham #include "lldb/Target/Target.h"
1435e1bda6SJim Ingham 
1535e1bda6SJim Ingham using namespace lldb;
1635e1bda6SJim Ingham using namespace lldb_private;
1735e1bda6SJim Ingham 
18b9c1b51eSKate Stone SBExpressionOptions::SBExpressionOptions()
19baf5664fSJonas Devlieghere     : m_opaque_up(new EvaluateExpressionOptions()) {
20baf5664fSJonas Devlieghere   LLDB_RECORD_CONSTRUCTOR_NO_ARGS(SBExpressionOptions);
21baf5664fSJonas Devlieghere }
2235e1bda6SJim Ingham 
23bd4bf82aSJonas Devlieghere SBExpressionOptions::SBExpressionOptions(const SBExpressionOptions &rhs)
24bd4bf82aSJonas Devlieghere     : m_opaque_up() {
25baf5664fSJonas Devlieghere   LLDB_RECORD_CONSTRUCTOR(SBExpressionOptions,
26baf5664fSJonas Devlieghere                           (const lldb::SBExpressionOptions &), rhs);
27baf5664fSJonas Devlieghere 
28bd4bf82aSJonas Devlieghere   m_opaque_up = clone(rhs.m_opaque_up);
2935e1bda6SJim Ingham }
3035e1bda6SJim Ingham 
31b9c1b51eSKate Stone const SBExpressionOptions &SBExpressionOptions::
32b9c1b51eSKate Stone operator=(const SBExpressionOptions &rhs) {
33baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(
34baf5664fSJonas Devlieghere       const lldb::SBExpressionOptions &,
35baf5664fSJonas Devlieghere       SBExpressionOptions, operator=,(const lldb::SBExpressionOptions &), rhs);
36baf5664fSJonas Devlieghere 
37bd4bf82aSJonas Devlieghere   if (this != &rhs)
38bd4bf82aSJonas Devlieghere     m_opaque_up = clone(rhs.m_opaque_up);
39306809f2SJonas Devlieghere   return LLDB_RECORD_RESULT(*this);
4035e1bda6SJim Ingham }
4135e1bda6SJim Ingham 
42*866b7a65SJonas Devlieghere SBExpressionOptions::~SBExpressionOptions() = default;
4335e1bda6SJim Ingham 
44b9c1b51eSKate Stone bool SBExpressionOptions::GetCoerceResultToId() const {
45baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBExpressionOptions,
46baf5664fSJonas Devlieghere                                    GetCoerceResultToId);
47baf5664fSJonas Devlieghere 
48d5b44036SJonas Devlieghere   return m_opaque_up->DoesCoerceToId();
4935e1bda6SJim Ingham }
5035e1bda6SJim Ingham 
51b9c1b51eSKate Stone void SBExpressionOptions::SetCoerceResultToId(bool coerce) {
52baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetCoerceResultToId, (bool),
53baf5664fSJonas Devlieghere                      coerce);
54baf5664fSJonas Devlieghere 
55d5b44036SJonas Devlieghere   m_opaque_up->SetCoerceToId(coerce);
5635e1bda6SJim Ingham }
5735e1bda6SJim Ingham 
58b9c1b51eSKate Stone bool SBExpressionOptions::GetUnwindOnError() const {
59baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBExpressionOptions, GetUnwindOnError);
60baf5664fSJonas Devlieghere 
61d5b44036SJonas Devlieghere   return m_opaque_up->DoesUnwindOnError();
6235e1bda6SJim Ingham }
6335e1bda6SJim Ingham 
64b9c1b51eSKate Stone void SBExpressionOptions::SetUnwindOnError(bool unwind) {
65baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetUnwindOnError, (bool),
66baf5664fSJonas Devlieghere                      unwind);
67baf5664fSJonas Devlieghere 
68d5b44036SJonas Devlieghere   m_opaque_up->SetUnwindOnError(unwind);
6935e1bda6SJim Ingham }
7035e1bda6SJim Ingham 
71b9c1b51eSKate Stone bool SBExpressionOptions::GetIgnoreBreakpoints() const {
72baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBExpressionOptions,
73baf5664fSJonas Devlieghere                                    GetIgnoreBreakpoints);
74baf5664fSJonas Devlieghere 
75d5b44036SJonas Devlieghere   return m_opaque_up->DoesIgnoreBreakpoints();
76184e9811SJim Ingham }
77184e9811SJim Ingham 
78b9c1b51eSKate Stone void SBExpressionOptions::SetIgnoreBreakpoints(bool ignore) {
79baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetIgnoreBreakpoints, (bool),
80baf5664fSJonas Devlieghere                      ignore);
81baf5664fSJonas Devlieghere 
82d5b44036SJonas Devlieghere   m_opaque_up->SetIgnoreBreakpoints(ignore);
83184e9811SJim Ingham }
84184e9811SJim Ingham 
85b9c1b51eSKate Stone lldb::DynamicValueType SBExpressionOptions::GetFetchDynamicValue() const {
86baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(lldb::DynamicValueType, SBExpressionOptions,
87baf5664fSJonas Devlieghere                                    GetFetchDynamicValue);
88baf5664fSJonas Devlieghere 
89d5b44036SJonas Devlieghere   return m_opaque_up->GetUseDynamic();
9035e1bda6SJim Ingham }
9135e1bda6SJim Ingham 
92b9c1b51eSKate Stone void SBExpressionOptions::SetFetchDynamicValue(lldb::DynamicValueType dynamic) {
93baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetFetchDynamicValue,
94baf5664fSJonas Devlieghere                      (lldb::DynamicValueType), dynamic);
95baf5664fSJonas Devlieghere 
96d5b44036SJonas Devlieghere   m_opaque_up->SetUseDynamic(dynamic);
9735e1bda6SJim Ingham }
9835e1bda6SJim Ingham 
99b9c1b51eSKate Stone uint32_t SBExpressionOptions::GetTimeoutInMicroSeconds() const {
100baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(uint32_t, SBExpressionOptions,
101baf5664fSJonas Devlieghere                                    GetTimeoutInMicroSeconds);
102baf5664fSJonas Devlieghere 
103d5b44036SJonas Devlieghere   return m_opaque_up->GetTimeout() ? m_opaque_up->GetTimeout()->count() : 0;
10435e1bda6SJim Ingham }
10535e1bda6SJim Ingham 
106b9c1b51eSKate Stone void SBExpressionOptions::SetTimeoutInMicroSeconds(uint32_t timeout) {
107baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetTimeoutInMicroSeconds,
108baf5664fSJonas Devlieghere                      (uint32_t), timeout);
109baf5664fSJonas Devlieghere 
110d5b44036SJonas Devlieghere   m_opaque_up->SetTimeout(timeout == 0 ? Timeout<std::micro>(llvm::None)
11143d35418SPavel Labath                                        : std::chrono::microseconds(timeout));
11235e1bda6SJim Ingham }
11335e1bda6SJim Ingham 
114b9c1b51eSKate Stone uint32_t SBExpressionOptions::GetOneThreadTimeoutInMicroSeconds() const {
115baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(uint32_t, SBExpressionOptions,
116baf5664fSJonas Devlieghere                                    GetOneThreadTimeoutInMicroSeconds);
117baf5664fSJonas Devlieghere 
118d5b44036SJonas Devlieghere   return m_opaque_up->GetOneThreadTimeout()
119d5b44036SJonas Devlieghere              ? m_opaque_up->GetOneThreadTimeout()->count()
120d5b44036SJonas Devlieghere              : 0;
121914f4e70SJim Ingham }
122914f4e70SJim Ingham 
123b9c1b51eSKate Stone void SBExpressionOptions::SetOneThreadTimeoutInMicroSeconds(uint32_t timeout) {
124baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions,
125baf5664fSJonas Devlieghere                      SetOneThreadTimeoutInMicroSeconds, (uint32_t), timeout);
126baf5664fSJonas Devlieghere 
127d5b44036SJonas Devlieghere   m_opaque_up->SetOneThreadTimeout(timeout == 0
12843d35418SPavel Labath                                        ? Timeout<std::micro>(llvm::None)
12943d35418SPavel Labath                                        : std::chrono::microseconds(timeout));
130914f4e70SJim Ingham }
131914f4e70SJim Ingham 
132b9c1b51eSKate Stone bool SBExpressionOptions::GetTryAllThreads() const {
133baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBExpressionOptions, GetTryAllThreads);
134baf5664fSJonas Devlieghere 
135d5b44036SJonas Devlieghere   return m_opaque_up->GetTryAllThreads();
13635e1bda6SJim Ingham }
13735e1bda6SJim Ingham 
138b9c1b51eSKate Stone void SBExpressionOptions::SetTryAllThreads(bool run_others) {
139baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetTryAllThreads, (bool),
140baf5664fSJonas Devlieghere                      run_others);
141baf5664fSJonas Devlieghere 
142d5b44036SJonas Devlieghere   m_opaque_up->SetTryAllThreads(run_others);
1436fbc48bcSJim Ingham }
1446fbc48bcSJim Ingham 
145b9c1b51eSKate Stone bool SBExpressionOptions::GetStopOthers() const {
146baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBExpressionOptions, GetStopOthers);
147baf5664fSJonas Devlieghere 
148d5b44036SJonas Devlieghere   return m_opaque_up->GetStopOthers();
149286fb1efSJim Ingham }
150286fb1efSJim Ingham 
151b9c1b51eSKate Stone void SBExpressionOptions::SetStopOthers(bool run_others) {
152baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetStopOthers, (bool),
153baf5664fSJonas Devlieghere                      run_others);
154baf5664fSJonas Devlieghere 
155d5b44036SJonas Devlieghere   m_opaque_up->SetStopOthers(run_others);
156286fb1efSJim Ingham }
157286fb1efSJim Ingham 
158b9c1b51eSKate Stone bool SBExpressionOptions::GetTrapExceptions() const {
159baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBExpressionOptions,
160baf5664fSJonas Devlieghere                                    GetTrapExceptions);
161baf5664fSJonas Devlieghere 
162d5b44036SJonas Devlieghere   return m_opaque_up->GetTrapExceptions();
1636fbc48bcSJim Ingham }
1646fbc48bcSJim Ingham 
165b9c1b51eSKate Stone void SBExpressionOptions::SetTrapExceptions(bool trap_exceptions) {
166baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetTrapExceptions, (bool),
167baf5664fSJonas Devlieghere                      trap_exceptions);
168baf5664fSJonas Devlieghere 
169d5b44036SJonas Devlieghere   m_opaque_up->SetTrapExceptions(trap_exceptions);
17035e1bda6SJim Ingham }
17135e1bda6SJim Ingham 
172b9c1b51eSKate Stone void SBExpressionOptions::SetLanguage(lldb::LanguageType language) {
173baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetLanguage,
174baf5664fSJonas Devlieghere                      (lldb::LanguageType), language);
175baf5664fSJonas Devlieghere 
176d5b44036SJonas Devlieghere   m_opaque_up->SetLanguage(language);
177705b1809SJason Molenda }
178705b1809SJason Molenda 
179b9c1b51eSKate Stone void SBExpressionOptions::SetCancelCallback(
180b9c1b51eSKate Stone     lldb::ExpressionCancelCallback callback, void *baton) {
1810d7b0c96SJonas Devlieghere   LLDB_RECORD_DUMMY(void, SBExpressionOptions, SetCancelCallback,
1827bc83564SJonas Devlieghere                     (lldb::ExpressionCancelCallback, void *), callback, baton);
1830d7b0c96SJonas Devlieghere 
184d5b44036SJonas Devlieghere   m_opaque_up->SetCancelCallback(callback, baton);
1851624a2d3SJim Ingham }
1861624a2d3SJim Ingham 
187b9c1b51eSKate Stone bool SBExpressionOptions::GetGenerateDebugInfo() {
188baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_NO_ARGS(bool, SBExpressionOptions, GetGenerateDebugInfo);
189baf5664fSJonas Devlieghere 
190d5b44036SJonas Devlieghere   return m_opaque_up->GetGenerateDebugInfo();
191205ca1e8SGreg Clayton }
192205ca1e8SGreg Clayton 
193b9c1b51eSKate Stone void SBExpressionOptions::SetGenerateDebugInfo(bool b) {
194baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetGenerateDebugInfo, (bool),
195baf5664fSJonas Devlieghere                      b);
196baf5664fSJonas Devlieghere 
197d5b44036SJonas Devlieghere   return m_opaque_up->SetGenerateDebugInfo(b);
198205ca1e8SGreg Clayton }
199205ca1e8SGreg Clayton 
200b9c1b51eSKate Stone bool SBExpressionOptions::GetSuppressPersistentResult() {
201baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_NO_ARGS(bool, SBExpressionOptions,
202baf5664fSJonas Devlieghere                              GetSuppressPersistentResult);
203baf5664fSJonas Devlieghere 
204d5b44036SJonas Devlieghere   return m_opaque_up->GetResultIsInternal();
2057ab079b6SJim Ingham }
2067ab079b6SJim Ingham 
207b9c1b51eSKate Stone void SBExpressionOptions::SetSuppressPersistentResult(bool b) {
208baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetSuppressPersistentResult,
209baf5664fSJonas Devlieghere                      (bool), b);
210baf5664fSJonas Devlieghere 
211d5b44036SJonas Devlieghere   return m_opaque_up->SetResultIsInternal(b);
2127ab079b6SJim Ingham }
2137ab079b6SJim Ingham 
214b9c1b51eSKate Stone const char *SBExpressionOptions::GetPrefix() const {
215baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_CONST_NO_ARGS(const char *, SBExpressionOptions,
216baf5664fSJonas Devlieghere                                    GetPrefix);
217baf5664fSJonas Devlieghere 
218d5b44036SJonas Devlieghere   return m_opaque_up->GetPrefix();
2194e1042e1SGreg Clayton }
2204e1042e1SGreg Clayton 
221b9c1b51eSKate Stone void SBExpressionOptions::SetPrefix(const char *prefix) {
222baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetPrefix, (const char *),
223baf5664fSJonas Devlieghere                      prefix);
224baf5664fSJonas Devlieghere 
225d5b44036SJonas Devlieghere   return m_opaque_up->SetPrefix(prefix);
2264e1042e1SGreg Clayton }
2277ab079b6SJim Ingham 
228b9c1b51eSKate Stone bool SBExpressionOptions::GetAutoApplyFixIts() {
229baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_NO_ARGS(bool, SBExpressionOptions, GetAutoApplyFixIts);
230baf5664fSJonas Devlieghere 
231d5b44036SJonas Devlieghere   return m_opaque_up->GetAutoApplyFixIts();
232a1e541bfSJim Ingham }
233a1e541bfSJim Ingham 
234b9c1b51eSKate Stone void SBExpressionOptions::SetAutoApplyFixIts(bool b) {
235baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetAutoApplyFixIts, (bool), b);
236baf5664fSJonas Devlieghere 
237d5b44036SJonas Devlieghere   return m_opaque_up->SetAutoApplyFixIts(b);
238a1e541bfSJim Ingham }
239a1e541bfSJim Ingham 
240b9c1b51eSKate Stone bool SBExpressionOptions::GetTopLevel() {
241baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_NO_ARGS(bool, SBExpressionOptions, GetTopLevel);
242baf5664fSJonas Devlieghere 
243d5b44036SJonas Devlieghere   return m_opaque_up->GetExecutionPolicy() == eExecutionPolicyTopLevel;
244863fab69SSean Callanan }
245863fab69SSean Callanan 
246b9c1b51eSKate Stone void SBExpressionOptions::SetTopLevel(bool b) {
247baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetTopLevel, (bool), b);
248baf5664fSJonas Devlieghere 
249d5b44036SJonas Devlieghere   m_opaque_up->SetExecutionPolicy(b ? eExecutionPolicyTopLevel
250d5b44036SJonas Devlieghere                                     : m_opaque_up->default_execution_policy);
251863fab69SSean Callanan }
252863fab69SSean Callanan 
253ab639986SJim Ingham bool SBExpressionOptions::GetAllowJIT() {
254baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD_NO_ARGS(bool, SBExpressionOptions, GetAllowJIT);
255baf5664fSJonas Devlieghere 
256d5b44036SJonas Devlieghere   return m_opaque_up->GetExecutionPolicy() != eExecutionPolicyNever;
257ab639986SJim Ingham }
258ab639986SJim Ingham 
259ab639986SJim Ingham void SBExpressionOptions::SetAllowJIT(bool allow) {
260baf5664fSJonas Devlieghere   LLDB_RECORD_METHOD(void, SBExpressionOptions, SetAllowJIT, (bool), allow);
261baf5664fSJonas Devlieghere 
262d5b44036SJonas Devlieghere   m_opaque_up->SetExecutionPolicy(allow ? m_opaque_up->default_execution_policy
263ab639986SJim Ingham                                         : eExecutionPolicyNever);
264ab639986SJim Ingham }
265ab639986SJim Ingham 
266b9c1b51eSKate Stone EvaluateExpressionOptions *SBExpressionOptions::get() const {
267d5b44036SJonas Devlieghere   return m_opaque_up.get();
26835e1bda6SJim Ingham }
26935e1bda6SJim Ingham 
270b9c1b51eSKate Stone EvaluateExpressionOptions &SBExpressionOptions::ref() const {
271d5b44036SJonas Devlieghere   return *(m_opaque_up.get());
27235e1bda6SJim Ingham }
273ae211eceSMichal Gorny 
274ae211eceSMichal Gorny namespace lldb_private {
275ae211eceSMichal Gorny namespace repro {
276ae211eceSMichal Gorny 
277ae211eceSMichal Gorny template <>
278ae211eceSMichal Gorny void RegisterMethods<SBExpressionOptions>(Registry &R) {
279ae211eceSMichal Gorny   LLDB_REGISTER_CONSTRUCTOR(SBExpressionOptions, ());
280ae211eceSMichal Gorny   LLDB_REGISTER_CONSTRUCTOR(SBExpressionOptions,
281ae211eceSMichal Gorny                             (const lldb::SBExpressionOptions &));
282ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(
283ae211eceSMichal Gorny       const lldb::SBExpressionOptions &,
284ae211eceSMichal Gorny       SBExpressionOptions, operator=,(const lldb::SBExpressionOptions &));
285ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetCoerceResultToId,
286ae211eceSMichal Gorny                              ());
287ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetCoerceResultToId,
288ae211eceSMichal Gorny                        (bool));
289ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetUnwindOnError, ());
290ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetUnwindOnError, (bool));
291ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetIgnoreBreakpoints,
292ae211eceSMichal Gorny                              ());
293ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetIgnoreBreakpoints,
294ae211eceSMichal Gorny                        (bool));
295ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(lldb::DynamicValueType, SBExpressionOptions,
296ae211eceSMichal Gorny                              GetFetchDynamicValue, ());
297ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetFetchDynamicValue,
298ae211eceSMichal Gorny                        (lldb::DynamicValueType));
299ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(uint32_t, SBExpressionOptions,
300ae211eceSMichal Gorny                              GetTimeoutInMicroSeconds, ());
301ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTimeoutInMicroSeconds,
302ae211eceSMichal Gorny                        (uint32_t));
303ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(uint32_t, SBExpressionOptions,
304ae211eceSMichal Gorny                              GetOneThreadTimeoutInMicroSeconds, ());
305ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions,
306ae211eceSMichal Gorny                        SetOneThreadTimeoutInMicroSeconds, (uint32_t));
307ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetTryAllThreads, ());
308ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTryAllThreads, (bool));
309ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetStopOthers, ());
310ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetStopOthers, (bool));
311ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(bool, SBExpressionOptions, GetTrapExceptions,
312ae211eceSMichal Gorny                              ());
313ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTrapExceptions, (bool));
314ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetLanguage,
315ae211eceSMichal Gorny                        (lldb::LanguageType));
316ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetGenerateDebugInfo, ());
317ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetGenerateDebugInfo,
318ae211eceSMichal Gorny                        (bool));
319ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetSuppressPersistentResult,
320ae211eceSMichal Gorny                        ());
321ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetSuppressPersistentResult,
322ae211eceSMichal Gorny                        (bool));
323ae211eceSMichal Gorny   LLDB_REGISTER_METHOD_CONST(const char *, SBExpressionOptions, GetPrefix,
324ae211eceSMichal Gorny                              ());
325ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetPrefix, (const char *));
326ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetAutoApplyFixIts, ());
327ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetAutoApplyFixIts, (bool));
328ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetTopLevel, ());
329ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetTopLevel, (bool));
330ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(bool, SBExpressionOptions, GetAllowJIT, ());
331ae211eceSMichal Gorny   LLDB_REGISTER_METHOD(void, SBExpressionOptions, SetAllowJIT, (bool));
332ae211eceSMichal Gorny }
333ae211eceSMichal Gorny 
334ae211eceSMichal Gorny }
335ae211eceSMichal Gorny }
336