1254721Semaste//===-- SBExpressionOptions.cpp ---------------------------------------------*- C++ -*-===// 2254721Semaste// 3254721Semaste// The LLVM Compiler Infrastructure 4254721Semaste// 5254721Semaste// This file is distributed under the University of Illinois Open Source 6254721Semaste// License. See LICENSE.TXT for details. 7254721Semaste// 8254721Semaste//===----------------------------------------------------------------------===// 9254721Semaste 10254721Semaste#include "lldb/API/SBExpressionOptions.h" 11254721Semaste#include "lldb/API/SBStream.h" 12254721Semaste 13254721Semaste#include "lldb/Target/Target.h" 14254721Semaste 15254721Semasteusing namespace lldb; 16254721Semasteusing namespace lldb_private; 17254721Semaste 18254721Semaste 19254721SemasteSBExpressionOptions::SBExpressionOptions () : 20254721Semaste m_opaque_ap(new EvaluateExpressionOptions()) 21254721Semaste{ 22254721Semaste} 23254721Semaste 24254721SemasteSBExpressionOptions::SBExpressionOptions (const SBExpressionOptions &rhs) 25254721Semaste{ 26254721Semaste m_opaque_ap.reset(new EvaluateExpressionOptions()); 27254721Semaste *(m_opaque_ap.get()) = rhs.ref(); 28254721Semaste} 29254721Semaste 30254721Semasteconst SBExpressionOptions & 31254721SemasteSBExpressionOptions::operator = (const SBExpressionOptions &rhs) 32254721Semaste{ 33254721Semaste if (this != &rhs) 34254721Semaste { 35254721Semaste this->ref() = rhs.ref(); 36254721Semaste } 37254721Semaste return *this; 38254721Semaste} 39254721Semaste 40254721SemasteSBExpressionOptions::~SBExpressionOptions() 41254721Semaste{ 42254721Semaste} 43254721Semaste 44254721Semastebool 45254721SemasteSBExpressionOptions::GetCoerceResultToId () const 46254721Semaste{ 47254721Semaste return m_opaque_ap->DoesCoerceToId (); 48254721Semaste} 49254721Semaste 50254721Semastevoid 51254721SemasteSBExpressionOptions::SetCoerceResultToId (bool coerce) 52254721Semaste{ 53254721Semaste m_opaque_ap->SetCoerceToId (coerce); 54254721Semaste} 55254721Semaste 56254721Semastebool 57254721SemasteSBExpressionOptions::GetUnwindOnError () const 58254721Semaste{ 59254721Semaste return m_opaque_ap->DoesUnwindOnError (); 60254721Semaste} 61254721Semaste 62254721Semastevoid 63254721SemasteSBExpressionOptions::SetUnwindOnError (bool unwind) 64254721Semaste{ 65254721Semaste m_opaque_ap->SetUnwindOnError (unwind); 66254721Semaste} 67254721Semaste 68254721Semastebool 69254721SemasteSBExpressionOptions::GetIgnoreBreakpoints () const 70254721Semaste{ 71254721Semaste return m_opaque_ap->DoesIgnoreBreakpoints (); 72254721Semaste} 73254721Semaste 74254721Semastevoid 75254721SemasteSBExpressionOptions::SetIgnoreBreakpoints (bool ignore) 76254721Semaste{ 77254721Semaste m_opaque_ap->SetIgnoreBreakpoints (ignore); 78254721Semaste} 79254721Semaste 80254721Semastelldb::DynamicValueType 81254721SemasteSBExpressionOptions::GetFetchDynamicValue () const 82254721Semaste{ 83254721Semaste return m_opaque_ap->GetUseDynamic (); 84254721Semaste} 85254721Semaste 86254721Semastevoid 87254721SemasteSBExpressionOptions::SetFetchDynamicValue (lldb::DynamicValueType dynamic) 88254721Semaste{ 89254721Semaste m_opaque_ap->SetUseDynamic (dynamic); 90254721Semaste} 91254721Semaste 92254721Semasteuint32_t 93254721SemasteSBExpressionOptions::GetTimeoutInMicroSeconds () const 94254721Semaste{ 95254721Semaste return m_opaque_ap->GetTimeoutUsec (); 96254721Semaste} 97254721Semaste 98254721Semastevoid 99254721SemasteSBExpressionOptions::SetTimeoutInMicroSeconds (uint32_t timeout) 100254721Semaste{ 101254721Semaste m_opaque_ap->SetTimeoutUsec (timeout); 102254721Semaste} 103254721Semaste 104254721Semastebool 105254721SemasteSBExpressionOptions::GetTryAllThreads () const 106254721Semaste{ 107254721Semaste return m_opaque_ap->GetRunOthers (); 108254721Semaste} 109254721Semaste 110254721Semastevoid 111254721SemasteSBExpressionOptions::SetTryAllThreads (bool run_others) 112254721Semaste{ 113254721Semaste m_opaque_ap->SetRunOthers (run_others); 114254721Semaste} 115254721Semaste 116254721SemasteEvaluateExpressionOptions * 117254721SemasteSBExpressionOptions::get() const 118254721Semaste{ 119254721Semaste return m_opaque_ap.get(); 120254721Semaste} 121254721Semaste 122254721SemasteEvaluateExpressionOptions & 123254721SemasteSBExpressionOptions::ref () const 124254721Semaste{ 125254721Semaste return *(m_opaque_ap.get()); 126254721Semaste} 127