LLDB
mainline
|
#include <SBValue.h>
Protected Member Functions | |
lldb::ValueObjectSP | GetSP (ValueLocker &value_locker) const |
Get the appropriate ValueObjectSP from this SBValue, consulting the use_dynamic and use_synthetic options passed in to SetSP when the SBValue's contents were set. More... | |
void | SetSP (const lldb::ValueObjectSP &sp) |
void | SetSP (const lldb::ValueObjectSP &sp, bool use_synthetic) |
void | SetSP (const lldb::ValueObjectSP &sp, lldb::DynamicValueType use_dynamic) |
void | SetSP (const lldb::ValueObjectSP &sp, lldb::DynamicValueType use_dynamic, bool use_synthetic) |
void | SetSP (const lldb::ValueObjectSP &sp, lldb::DynamicValueType use_dynamic, bool use_synthetic, const char *name) |
Friends | |
class | SBBlock |
class | SBFrame |
class | SBTarget |
class | SBThread |
class | SBValueList |
SBValue::SBValue | ( | ) |
Definition at line 218 of file SBValue.cpp.
References LLDB_RECORD_CONSTRUCTOR_NO_ARGS.
Referenced by EvaluateExpression().
SBValue::SBValue | ( | const lldb::SBValue & | rhs | ) |
Definition at line 226 of file SBValue.cpp.
References LLDB_RECORD_CONSTRUCTOR, and SetSP().
SBValue::~SBValue | ( | ) |
Definition at line 242 of file SBValue.cpp.
SBValue::SBValue | ( | const lldb::ValueObjectSP & | value_sp | ) |
Definition at line 220 of file SBValue.cpp.
References LLDB_RECORD_CONSTRUCTOR, and SetSP().
lldb::SBValue SBValue::AddressOf | ( | ) |
Definition at line 1307 of file SBValue.cpp.
References GetPreferDynamicValue(), GetPreferSyntheticValue(), GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::Cast | ( | lldb::SBType | type | ) |
Definition at line 602 of file SBValue.cpp.
References GetPreferDynamicValue(), GetPreferSyntheticValue(), lldb::SBType::GetSP(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
void SBValue::Clear | ( | ) |
Definition at line 258 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::CreateChildAtOffset | ( | const char * | name, |
uint32_t | offset, | ||
lldb::SBType | type | ||
) |
Definition at line 581 of file SBValue.cpp.
References GetPreferDynamicValue(), GetPreferSyntheticValue(), lldb::SBType::GetSP(), GetSP(), lldb::SBType::IsValid(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::CreateValueFromAddress | ( | const char * | name, |
lldb::addr_t | address, | ||
lldb::SBType | type | ||
) |
Definition at line 648 of file SBValue.cpp.
References lldb::SBType::GetSP(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::CreateValueFromData | ( | const char * | name, |
lldb::SBData | data, | ||
lldb::SBType | type | ||
) |
Definition at line 670 of file SBValue.cpp.
References lldb_private::eAddressTypeLoad, lldb::SBType::GetSP(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::CreateValueFromExpression | ( | const char * | name, |
const char * | expression | ||
) |
Definition at line 615 of file SBValue.cpp.
References LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, lldb::SBExpressionOptions::ref(), and lldb_private::EvaluateExpressionOptions::SetKeepInMemory().
Referenced by CreateValueFromExpression(), and lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::CreateValueFromExpression | ( | const char * | name, |
const char * | expression, | ||
SBExpressionOptions & | options | ||
) |
Definition at line 626 of file SBValue.cpp.
References CreateValueFromExpression(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, lldb::SBExpressionOptions::ref(), and SetSP().
SBValue SBValue::Dereference | ( | ) |
Definition at line 1017 of file SBValue.cpp.
References Dereference(), GetSP(), LLDB_RECORD_METHOD_NO_ARGS, and LLDB_RECORD_RESULT.
Referenced by Dereference(), lldb_private::repro::RegisterMethods< SBValue >(), and WatchPointee().
lldb::SBValue SBValue::EvaluateExpression | ( | const char * | expr | ) | const |
Definition at line 1196 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_CONST, LLDB_RECORD_RESULT, SBValue(), lldb::SBExpressionOptions::SetFetchDynamicValue(), lldb::SBExpressionOptions::SetIgnoreBreakpoints(), and lldb::SBExpressionOptions::SetUnwindOnError().
Referenced by EvaluateExpression(), and lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::EvaluateExpression | ( | const char * | expr, |
const SBExpressionOptions & | options | ||
) | const |
Definition at line 1218 of file SBValue.cpp.
References EvaluateExpression(), LLDB_RECORD_METHOD_CONST, and LLDB_RECORD_RESULT.
lldb::SBValue SBValue::EvaluateExpression | ( | const char * | expr, |
const SBExpressionOptions & | options, | ||
const char * | name | ||
) | const |
Definition at line 1227 of file SBValue.cpp.
References EvaluateExpression(), lldb::SBExpressionOptions::GetFetchDynamicValue(), GetSP(), LLDB_RECORD_METHOD_CONST, LLDB_RECORD_RESULT, lldb::SBExpressionOptions::ref(), SBValue(), and SetSP().
lldb::SBAddress SBValue::GetAddress | ( | ) |
Definition at line 1352 of file SBValue.cpp.
References lldb_private::eAddressTypeFile, lldb_private::eAddressTypeLoad, GetSP(), LLDB_INVALID_ADDRESS, LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, lldb::SBAddress, and lldb_private::Address::SetLoadAddress().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
size_t SBValue::GetByteSize | ( | ) |
Definition at line 328 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), and Watch().
Definition at line 691 of file SBValue.cpp.
References lldb::eNoDynamicValues, LLDB_RECORD_METHOD, and LLDB_RECORD_RESULT.
Referenced by GetChildAtIndex(), and lldb_private::repro::RegisterMethods< SBValue >().
SBValue SBValue::GetChildAtIndex | ( | uint32_t | idx, |
lldb::DynamicValueType | use_dynamic, | ||
bool | can_create_synthetic | ||
) |
Get a child value by index from a value.
Structs, unions, classes, arrays and pointers have child values that can be access by index.
Structs and unions access child members using a zero based index for each child member. For
Classes reserve the first indexes for base classes that have members (empty base classes are omitted), and all members of the current class will then follow the base classes.
Pointers differ depending on what they point to. If the pointer points to a simple type, the child at index zero is the only child value available, unless synthetic_allowed is true, in which case the pointer will be used as an array and can create 'synthetic' child values using positive or negative indexes. If the pointer points to an aggregate type (an array, class, union, struct), then the pointee is transparently skipped and any children are going to be the indexes of the child values within the aggregate type. For example if we have a 'Point' type and we have a SBValue that contains a pointer to a 'Point' type, then the child at index zero will be the 'x' member, and the child at index 1 will be the 'y' member (the child at index zero won't be a 'Point' instance).
If you actually need an SBValue that represents the type pointed to by a SBValue for which GetType().IsPointeeType() returns true, regardless of the pointee type, you can do that with SBValue::Dereference.
Arrays have a preset number of children that can be accessed by index and will returns invalid child values for indexes that are out of bounds unless the synthetic_allowed is true. In this case the array can create 'synthetic' child values for indexes that aren't in the array bounds using positive or negative indexes.
[in] | idx | The index of the child value to get |
[in] | use_dynamic | An enumeration that specifies whether to get dynamic values, and also if the target can be run to figure out the dynamic type of the child value. |
[in] | can_create_synthetic | If true, then allow child values to be created by index for pointers and arrays for indexes that normally wouldn't be allowed. |
Definition at line 707 of file SBValue.cpp.
References GetChildAtIndex(), GetPreferSyntheticValue(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
SBValue SBValue::GetChildMemberWithName | ( | const char * | name | ) |
Definition at line 745 of file SBValue.cpp.
References lldb::eNoDynamicValues, LLDB_RECORD_METHOD, and LLDB_RECORD_RESULT.
Referenced by GetChildMemberWithName(), and lldb_private::repro::RegisterMethods< SBValue >().
SBValue SBValue::GetChildMemberWithName | ( | const char * | name, |
lldb::DynamicValueType | use_dynamic | ||
) |
Definition at line 760 of file SBValue.cpp.
References GetChildMemberWithName(), GetPreferSyntheticValue(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
lldb::SBData SBValue::GetData | ( | ) |
Get an SBData wrapping the contents of this SBValue.
This method will read the contents of this object in memory and copy them into an SBData for future use.
Definition at line 1401 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb_private::Status::Success().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBDeclaration SBValue::GetDeclaration | ( | ) |
Definition at line 1453 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, and LLDB_RECORD_RESULT.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::GetDescription | ( | lldb::SBStream & | description | ) |
Definition at line 1272 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD, lldb_private::Stream::PutCString(), and lldb::SBStream::ref().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetDisplayTypeName | ( | ) |
Definition at line 315 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::GetDynamicValue | ( | lldb::DynamicValueType | use_dynamic | ) |
Definition at line 781 of file SBValue.cpp.
References IsValid(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
SBError SBValue::GetError | ( | ) |
Definition at line 264 of file SBValue.cpp.
References lldb_private::Status::AsCString(), ValueLocker::GetError(), GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, lldb::SBError::SetError(), and lldb::SBError::SetErrorStringWithFormat().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::GetExpressionPath | ( | lldb::SBStream & | description | ) |
Definition at line 1169 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD, and lldb::SBStream::ref().
Referenced by GetExpressionPath(), and lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::GetExpressionPath | ( | lldb::SBStream & | description, |
bool | qualify_cxx_base_classes | ||
) |
Definition at line 1182 of file SBValue.cpp.
References GetExpressionPath(), GetSP(), LLDB_RECORD_METHOD, and lldb::SBStream::ref().
lldb::Format SBValue::GetFormat | ( | ) |
Definition at line 1288 of file SBValue.cpp.
References lldb::eFormatDefault, GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBFrame SBValue::GetFrame | ( | ) |
Definition at line 1087 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb::SBFrame::SetFrameSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
user_id_t SBValue::GetID | ( | ) |
Definition at line 280 of file SBValue.cpp.
References GetSP(), LLDB_INVALID_UID, and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
uint32_t SBValue::GetIndexOfChildWithName | ( | const char * | name | ) |
Definition at line 732 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD, and UINT32_MAX.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::addr_t SBValue::GetLoadAddress | ( | ) |
Definition at line 1322 of file SBValue.cpp.
References lldb_private::eAddressTypeFile, lldb_private::eAddressTypeHost, lldb_private::eAddressTypeInvalid, lldb_private::Address::GetLoadAddress(), GetSP(), LLDB_INVALID_ADDRESS, and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), and Watch().
const char * SBValue::GetLocation | ( | ) |
Definition at line 472 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetName | ( | ) |
Definition at line 290 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::GetNonSyntheticValue | ( | ) |
Definition at line 807 of file SBValue.cpp.
References IsValid(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
uint32_t SBValue::GetNumChildren | ( | ) |
Definition at line 998 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS, and UINT32_MAX.
Referenced by GetNumChildren(), and lldb_private::repro::RegisterMethods< SBValue >().
Definition at line 1004 of file SBValue.cpp.
References GetNumChildren(), GetSP(), and LLDB_RECORD_METHOD.
const char * SBValue::GetObjectDescription | ( | ) |
Definition at line 381 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
void * SBValue::GetOpaqueType | ( | ) |
Definition at line 1038 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBData SBValue::GetPointeeData | ( | uint32_t | item_idx = 0 , |
uint32_t | item_count = 1 |
||
) |
Get an SBData wrapping what this SBValue points to.
This method will dereference the current SBValue, if its data type is a T* or T[], and extract item_count elements of type T from it, copying their contents in an SBData.
[in] | item_idx | The index of the first item to retrieve. For an array this is equivalent to array[item_idx], for a pointer to *(pointer + item_idx). In either case, the measurement unit for item_idx is the sizeof(T) rather than the byte |
[in] | item_count | How many items should be copied into the output. By default only one item is copied, but more can be asked for. |
Definition at line 1381 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD, and LLDB_RECORD_RESULT.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::DynamicValueType SBValue::GetPreferDynamicValue | ( | ) |
Definition at line 819 of file SBValue.cpp.
References lldb::eNoDynamicValues, IsValid(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by AddressOf(), Cast(), CreateChildAtOffset(), GetValueForExpressionPath(), and lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::GetPreferSyntheticValue | ( | ) |
Definition at line 836 of file SBValue.cpp.
References IsValid(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by AddressOf(), Cast(), CreateChildAtOffset(), GetChildAtIndex(), GetChildMemberWithName(), GetValueForExpressionPath(), and lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBProcess SBValue::GetProcess | ( | ) |
Definition at line 1061 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb::SBProcess::SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::ValueObjectSP SBValue::GetSP | ( | ) | const |
Same as the protected version of GetSP that takes a locker, except that we make the locker locally in the function.
Since the Target API mutex is recursive, and the StopLocker is a read lock, you can call this function even if you are already holding the two above-mentioned locks.
Definition at line 1108 of file SBValue.cpp.
References LLDB_RECORD_METHOD_CONST_NO_ARGS, LLDB_RECORD_RESULT, and SetSP().
Referenced by AddressOf(), Cast(), CreateChildAtOffset(), CreateValueFromAddress(), CreateValueFromData(), CreateValueFromExpression(), Dereference(), lldb::SBTypeSummary::DoesPrintValue(), EvaluateExpression(), GetAddress(), GetByteSize(), GetChildAtIndex(), GetChildMemberWithName(), GetData(), GetDeclaration(), GetDescription(), GetDisplayTypeName(), GetError(), GetExpressionPath(), GetFormat(), GetID(), GetIndexOfChildWithName(), GetLoadAddress(), GetLocation(), GetName(), GetNumChildren(), GetObjectDescription(), GetOpaqueType(), GetPointeeData(), GetSummary(), GetType(), GetTypeFilter(), GetTypeFormat(), GetTypeName(), GetTypeSummary(), GetTypeSynthetic(), GetTypeValidatorResult(), GetValue(), GetValueAsSigned(), GetValueAsUnsigned(), GetValueDidChange(), GetValueForExpressionPath(), GetValueType(), IsDynamic(), IsInScope(), IsRuntimeSupportValue(), IsSynthetic(), IsSyntheticChildrenGenerated(), MightHaveChildren(), Persist(), lldb_private::repro::RegisterMethods< SBValue >(), lldb::SBThread::ReturnFromFrame(), SetData(), SetFormat(), SetSyntheticChildrenGenerated(), SetValueFromCString(), and Watch().
|
protected |
Get the appropriate ValueObjectSP from this SBValue, consulting the use_dynamic and use_synthetic options passed in to SetSP when the SBValue's contents were set.
Since this often requires examining memory, and maybe even running code, it needs to acquire the Target API and Process StopLock. Those are held in an opaque class ValueLocker which is currently local to SBValue.cpp. So you don't have to get these yourself just default construct a ValueLocker, and pass it into this. If we need to make a ValueLocker and use it in some other .cpp file, we'll have to move it to ValueObject.h/cpp or somewhere else convenient. We haven't needed to so far.
[in] | value_locker | An object that will hold the Target API, and Process RunLocks, and auto-destroy them when it goes out of scope. Currently this is only useful in SBValue.cpp. |
Definition at line 1100 of file SBValue.cpp.
References ValueLocker::GetError(), ValueLocker::GetLockedSP(), and lldb_private::Status::SetErrorString().
lldb::SBValue SBValue::GetStaticValue | ( | ) |
Definition at line 794 of file SBValue.cpp.
References lldb::eNoDynamicValues, IsValid(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetSummary | ( | ) |
Definition at line 442 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb::SBFrame::EvaluateExpression(), lldb::SBTarget::EvaluateExpression(), GetSummary(), and lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetSummary | ( | lldb::SBStream & | stream, |
lldb::SBTypeSummaryOptions & | options | ||
) |
Definition at line 455 of file SBValue.cpp.
References lldb::SBStream::GetData(), GetSP(), GetSummary(), LLDB_RECORD_METHOD, lldb::SBStream::Printf(), and lldb::SBTypeSummaryOptions::ref().
lldb::SBTarget SBValue::GetTarget | ( | ) |
Definition at line 1048 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb::SBTarget::SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), and Watch().
lldb::SBThread SBValue::GetThread | ( | ) |
Definition at line 1074 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS, and LLDB_RECORD_RESULT.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
SBType SBValue::GetType | ( | ) |
Definition at line 413 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb::SBType::SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), TypeIsPointerType(), and WatchPointee().
lldb::SBTypeFilter SBValue::GetTypeFilter | ( | ) |
Definition at line 541 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, lldb::SBTypeFilter::SetSP(), and lldb_private::static_pointer_cast().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBTypeFormat SBValue::GetTypeFormat | ( | ) |
Definition at line 509 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb::SBTypeFormat::SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetTypeName | ( | ) |
Definition at line 302 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBTypeSummary SBValue::GetTypeSummary | ( | ) |
Definition at line 525 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and lldb::SBTypeSummary::SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBTypeSynthetic SBValue::GetTypeSynthetic | ( | ) |
Definition at line 561 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, lldb::SBTypeSynthetic::SetSP(), and lldb_private::static_pointer_cast().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetTypeValidatorResult | ( | ) |
Definition at line 394 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
const char * SBValue::GetValue | ( | ) |
Definition at line 356 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb::SBFrame::EvaluateExpression(), lldb::SBTarget::EvaluateExpression(), and lldb_private::repro::RegisterMethods< SBValue >().
int64_t SBValue::GetValueAsSigned | ( | lldb::SBError & | error, |
int64_t | fail_value = 0 |
||
) |
Definition at line 909 of file SBValue.cpp.
References lldb_private::Status::AsCString(), lldb::SBError::Clear(), ValueLocker::GetError(), GetSP(), LLDB_RECORD_METHOD, lldb::SBError::SetErrorString(), and lldb::SBError::SetErrorStringWithFormat().
Referenced by GetValueAsSigned(), and lldb_private::repro::RegisterMethods< SBValue >().
int64_t SBValue::GetValueAsSigned | ( | int64_t | fail_value = 0 | ) |
Definition at line 951 of file SBValue.cpp.
References GetSP(), GetValueAsSigned(), and LLDB_RECORD_METHOD.
uint64_t SBValue::GetValueAsUnsigned | ( | lldb::SBError & | error, |
uint64_t | fail_value = 0 |
||
) |
Definition at line 930 of file SBValue.cpp.
References lldb_private::Status::AsCString(), lldb::SBError::Clear(), ValueLocker::GetError(), GetSP(), LLDB_RECORD_METHOD, lldb::SBError::SetErrorString(), and lldb::SBError::SetErrorStringWithFormat().
Referenced by GetValueAsUnsigned(), and lldb_private::repro::RegisterMethods< SBValue >().
uint64_t SBValue::GetValueAsUnsigned | ( | uint64_t | fail_value = 0 | ) |
Definition at line 962 of file SBValue.cpp.
References GetSP(), GetValueAsUnsigned(), and LLDB_RECORD_METHOD.
bool SBValue::GetValueDidChange | ( | ) |
Definition at line 428 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBValue SBValue::GetValueForExpressionPath | ( | const char * | expr_path | ) |
Definition at line 891 of file SBValue.cpp.
References GetPreferDynamicValue(), GetPreferSyntheticValue(), GetSP(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
ValueType SBValue::GetValueType | ( | ) |
Definition at line 369 of file SBValue.cpp.
References lldb::eValueTypeInvalid, GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::IsDynamic | ( | ) |
Definition at line 852 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::IsInScope | ( | ) |
Definition at line 342 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), Watch(), and WatchPointee().
bool SBValue::IsRuntimeSupportValue | ( | ) |
Definition at line 986 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::IsSynthetic | ( | ) |
Definition at line 862 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::IsSyntheticChildrenGenerated | ( | ) |
Definition at line 872 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::IsValid | ( | ) |
Definition at line 244 of file SBValue.cpp.
References LLDB_RECORD_METHOD_NO_ARGS.
Referenced by GetDynamicValue(), GetNonSyntheticValue(), GetPreferDynamicValue(), GetPreferSyntheticValue(), GetStaticValue(), lldb_private::repro::RegisterMethods< SBValue >(), SetPreferDynamicValue(), and SetPreferSyntheticValue().
bool SBValue::MightHaveChildren | ( | ) |
Find out if a SBValue might have children.
This call is much more efficient than GetNumChildren() as it doesn't need to complete the underlying type. This is designed to be used in a UI environment in order to detect if the disclosure triangle should be displayed or not.
This function returns true for class, union, structure, pointers, references, arrays and more. Again, it does so without doing any expensive type completion.
Definition at line 974 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
|
explicit |
Definition at line 248 of file SBValue.cpp.
References LLDB_RECORD_METHOD_CONST_NO_ARGS.
SBValue & SBValue::operator= | ( | const lldb::SBValue & | rhs | ) |
Definition at line 232 of file SBValue.cpp.
References LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and SetSP().
lldb::SBValue SBValue::Persist | ( | ) |
Definition at line 1553 of file SBValue.cpp.
References GetSP(), LLDB_RECORD_METHOD_NO_ARGS, LLDB_RECORD_RESULT, and SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::SetData | ( | lldb::SBData & | data, |
lldb::SBError & | error | ||
) |
Definition at line 1418 of file SBValue.cpp.
References lldb_private::Status::AsCString(), lldb::SBData::get(), ValueLocker::GetError(), GetSP(), LLDB_RECORD_METHOD, lldb::SBError::SetErrorString(), lldb::SBError::SetErrorStringWithFormat(), and lldb_private::Status::Success().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
void SBValue::SetFormat | ( | lldb::Format | format | ) |
Definition at line 1298 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
void SBValue::SetPreferDynamicValue | ( | lldb::DynamicValueType | use_dynamic | ) |
Definition at line 828 of file SBValue.cpp.
References IsValid(), and LLDB_RECORD_METHOD.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
void SBValue::SetPreferSyntheticValue | ( | bool | use_synthetic | ) |
Definition at line 844 of file SBValue.cpp.
References IsValid(), and LLDB_RECORD_METHOD.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
|
protected |
Definition at line 1117 of file SBValue.cpp.
References lldb::eNoDynamicValues.
Referenced by AddressOf(), Cast(), CreateChildAtOffset(), CreateValueFromAddress(), lldb::SBTarget::CreateValueFromAddress(), CreateValueFromData(), lldb::SBTarget::CreateValueFromData(), CreateValueFromExpression(), lldb::SBTarget::CreateValueFromExpression(), lldb::SBFrame::EvaluateExpression(), EvaluateExpression(), lldb::SBTarget::EvaluateExpression(), lldb::SBFrame::FindRegister(), lldb::SBFrame::FindValue(), lldb::SBFrame::FindVariable(), GetChildAtIndex(), GetChildMemberWithName(), GetDynamicValue(), GetNonSyntheticValue(), GetSP(), GetStaticValue(), GetValueForExpressionPath(), lldb::SBFrame::GetValueForVariablePath(), lldb::SBBlock::GetVariables(), lldb::SBFrame::GetVariables(), operator=(), Persist(), SBValue(), and SetSP().
|
protected |
Definition at line 1145 of file SBValue.cpp.
References lldb::eNoDynamicValues, and SetSP().
|
protected |
Definition at line 1131 of file SBValue.cpp.
References SetSP().
|
protected |
Definition at line 1157 of file SBValue.cpp.
|
protected |
Definition at line 1162 of file SBValue.cpp.
void SBValue::SetSyntheticChildrenGenerated | ( | bool | is | ) |
Definition at line 882 of file SBValue.cpp.
References GetSP(), and LLDB_RECORD_METHOD.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
bool SBValue::SetValueFromCString | ( | const char * | value_str | ) |
Definition at line 485 of file SBValue.cpp.
References LLDB_RECORD_METHOD.
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), and SetValueFromCString().
bool SBValue::SetValueFromCString | ( | const char * | value_str, |
lldb::SBError & | error | ||
) |
Definition at line 493 of file SBValue.cpp.
References lldb_private::Status::AsCString(), ValueLocker::GetError(), GetSP(), LLDB_RECORD_METHOD, lldb::SBError::ref(), lldb::SBError::SetErrorStringWithFormat(), and SetValueFromCString().
bool SBValue::TypeIsPointerType | ( | ) |
Definition at line 1032 of file SBValue.cpp.
References GetType(), lldb::SBType::IsPointerType(), and LLDB_RECORD_METHOD_NO_ARGS.
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
lldb::SBWatchpoint SBValue::Watch | ( | bool | resolve_location, |
bool | read, | ||
bool | write, | ||
SBError & | error | ||
) |
Watch this value if it resides in memory.
Sets a watchpoint on the value.
[in] | resolve_location | Resolve the location of this value once and watch its address. This value must currently be set to true as watching all locations of a variable or a variable path is not yet supported, though we plan to support it in the future. |
[in] | read | Stop when this value is accessed. |
[in] | write | Stop when this value is modified |
[out] | error | An error object. Contains the reason if there is some failure. |
Definition at line 1467 of file SBValue.cpp.
References lldb_private::Status::AsCString(), lldb_private::Declaration::DumpStopContext(), GetByteSize(), ValueLocker::GetError(), lldb_private::Declaration::GetFile(), GetLoadAddress(), GetSP(), lldb_private::StreamString::GetString(), GetTarget(), IsInScope(), LLDB_INVALID_ADDRESS, LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, LLDB_WATCH_TYPE_READ, LLDB_WATCH_TYPE_WRITE, lldb::SBError::SetError(), lldb::SBError::SetErrorString(), lldb::SBError::SetErrorStringWithFormat(), and lldb::SBWatchpoint::SetSP().
Referenced by lldb_private::repro::RegisterMethods< SBValue >(), Watch(), and WatchPointee().
lldb::SBWatchpoint SBValue::Watch | ( | bool | resolve_location, |
bool | read, | ||
bool | write | ||
) |
Definition at line 1532 of file SBValue.cpp.
References LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and Watch().
lldb::SBWatchpoint SBValue::WatchPointee | ( | bool | resolve_location, |
bool | read, | ||
bool | write, | ||
SBError & | error | ||
) |
Watch this value that this value points to in memory.
Sets a watchpoint on the value.
[in] | resolve_location | Resolve the location of this value once and watch its address. This value must currently be set to true as watching all locations of a variable or a variable path is not yet supported, though we plan to support it in the future. |
[in] | read | Stop when this value is accessed. |
[in] | write | Stop when this value is modified |
[out] | error | An error object. Contains the reason if there is some failure. |
Definition at line 1541 of file SBValue.cpp.
References Dereference(), GetType(), IsInScope(), LLDB_RECORD_METHOD, LLDB_RECORD_RESULT, and Watch().
Referenced by lldb_private::repro::RegisterMethods< SBValue >().
|
friend |