#include "lldb/Core/ValueObjectVariable.h"
#include "lldb/Core/Address.h"
#include "lldb/Core/AddressRange.h"
#include "lldb/Core/Declaration.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/Value.h"
#include "lldb/Expression/DWARFExpressionList.h"
#include "lldb/Symbol/Function.h"
#include "lldb/Symbol/ObjectFile.h"
#include "lldb/Symbol/SymbolContext.h"
#include "lldb/Symbol/SymbolContextScope.h"
#include "lldb/Symbol/Type.h"
#include "lldb/Symbol/Variable.h"
#include "lldb/Target/ExecutionContext.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/RegisterContext.h"
#include "lldb/Target/Target.h"
#include "lldb/Utility/DataExtractor.h"
#include "lldb/Utility/RegisterValue.h"
#include "lldb/Utility/Scalar.h"
#include "lldb/Utility/Status.h"
#include "lldb/lldb-private-enumerations.h"
#include "lldb/lldb-types.h"
#include "llvm/ADT/StringRef.h"
#include <cassert>
#include <memory>
#include <optional>
namespace lldb_private {
class ExecutionContextScope;
}
namespace lldb_private {
class StackFrame;
}
namespace lldb_private {
struct RegisterInfo;
}
usingnamespacelldb_private;
lldb::ValueObjectSP
ValueObjectVariable::Create(ExecutionContextScope *exe_scope,
const lldb::VariableSP &var_sp) { … }
ValueObjectVariable::ValueObjectVariable(ExecutionContextScope *exe_scope,
ValueObjectManager &manager,
const lldb::VariableSP &var_sp)
: … { … }
ValueObjectVariable::~ValueObjectVariable() = default;
CompilerType ValueObjectVariable::GetCompilerTypeImpl() { … }
ConstString ValueObjectVariable::GetTypeName() { … }
ConstString ValueObjectVariable::GetDisplayTypeName() { … }
ConstString ValueObjectVariable::GetQualifiedTypeName() { … }
llvm::Expected<uint32_t>
ValueObjectVariable::CalculateNumChildren(uint32_t max) { … }
std::optional<uint64_t> ValueObjectVariable::GetByteSize() { … }
lldb::ValueType ValueObjectVariable::GetValueType() const { … }
bool ValueObjectVariable::UpdateValue() { … }
void ValueObjectVariable::DoUpdateChildrenAddressType(ValueObject &valobj) { … }
bool ValueObjectVariable::IsInScope() { … }
lldb::ModuleSP ValueObjectVariable::GetModule() { … }
SymbolContextScope *ValueObjectVariable::GetSymbolContextScope() { … }
bool ValueObjectVariable::GetDeclaration(Declaration &decl) { … }
const char *ValueObjectVariable::GetLocationAsCString() { … }
bool ValueObjectVariable::SetValueFromCString(const char *value_str,
Status &error) { … }
bool ValueObjectVariable::SetData(DataExtractor &data, Status &error) { … }