SBExpressionOptions.h revision b794020ffbd6473c59a6e98be044df50abf7fc30
1//===-- SBEvent.h -----------------------------------------------*- 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#ifndef LLDB_SBExpressionOptions_h_ 11#define LLDB_SBExpressionOptions_h_ 12 13#include "lldb/API/SBDefines.h" 14 15#include <memory> 16#include <vector> 17 18namespace lldb { 19 20 21class SBExpressionOptions 22{ 23public: 24 SBExpressionOptions(); 25 26 SBExpressionOptions (const lldb::SBExpressionOptions &rhs); 27 28 ~SBExpressionOptions(); 29 30 const SBExpressionOptions & 31 operator = (const lldb::SBExpressionOptions &rhs); 32 33 bool 34 GetCoerceResultToId () const; 35 36 void 37 SetCoerceResultToId (bool coerce = true); 38 39 bool 40 GetUnwindOnError () const; 41 42 void 43 SetUnwindOnError (bool unwind = false); 44 45 bool 46 GetIgnoreBreakpoints () const; 47 48 void 49 SetIgnoreBreakpoints (bool ignore = false); 50 51 lldb::DynamicValueType 52 GetFetchDynamicValue () const; 53 54 void 55 SetFetchDynamicValue (lldb::DynamicValueType dynamic = lldb::eDynamicCanRunTarget); 56 57 uint32_t 58 GetTimeoutInMicroSeconds () const; 59 60 void 61 SetTimeoutInMicroSeconds (uint32_t timeout = 0); 62 63 bool 64 GetTryAllThreads () const; 65 66 void 67 SetTryAllThreads (bool run_others = true); 68 69protected: 70 71 SBExpressionOptions (lldb_private::EvaluateExpressionOptions &expression_options); 72 73 lldb_private::EvaluateExpressionOptions * 74 get () const; 75 76 lldb_private::EvaluateExpressionOptions & 77 ref () const; 78 79 friend class SBFrame; 80 friend class SBValue; 81 friend class SBTarget; 82 83private: 84 // This auto_pointer is made in the constructor and is always valid. 85 mutable std::auto_ptr<lldb_private::EvaluateExpressionOptions> m_opaque_ap; 86}; 87 88} // namespace lldb 89 90#endif // LLDB_SBExpressionOptions_h_ 91