#include <attr.h>
Public Member Functions | |
| AttrValue (const AttrValue &)=default | |
| uint16_t | form () const |
| absl::string_view | GetString (const CU &cu) const |
| uint64_t | GetUint (const CU &cu) const |
| bool | IsString () const |
| bool | IsUint () const |
| AttrValue & | operator= (const AttrValue &)=default |
| template<class D > | |
| string_view | ReadBlock (string_view *data) |
| template<class D > | |
| string_view | ReadIndirectString (const CU &cu, string_view *data) |
| absl::optional< uint64_t > | ToUint (const CU &cu) const |
Static Public Member Functions | |
| static AttrValue | ParseAttr (const CU &cu, uint8_t form, absl::string_view *data) |
Private Types | |
| enum | Type { Type::kUint, Type::kString, Type::kUnresolvedUint, Type::kUnresolvedString } |
Private Member Functions | |
| AttrValue (uint16_t form, absl::string_view val) | |
| AttrValue (uint16_t form, uint64_t val) | |
| absl::string_view | ResolveDoubleIndirectString (const CU &cu) const |
| uint64_t | ResolveIndirectAddress (const CU &cu) const |
| Type | type () const |
Static Private Member Functions | |
| template<class D > | |
| static absl::string_view | ReadBlock (absl::string_view *data) |
| template<class D > | |
| static absl::string_view | ReadIndirectString (const CU &cu, absl::string_view *data) |
| static absl::string_view | ReadVariableBlock (absl::string_view *data) |
| static absl::string_view | ResolveIndirectString (const CU &cu, uint64_t ofs) |
| static AttrValue | UnresolvedString (uint16_t form, uint64_t val) |
| static AttrValue | UnresolvedUint (uint16_t form, uint64_t val) |
Private Attributes | |
| union { | |
| absl::string_view string_ | |
| uint64_t uint_ | |
| }; | |
| uint16_t | form_ |
| Type | type_ |
|
strongprivate |
|
inlineexplicitprivate |
| string_view bloaty::dwarf::AttrValue::GetString | ( | const CU & | cu | ) | const |
|
static |
|
staticprivate |
| string_view bloaty::dwarf::AttrValue::ReadBlock | ( | string_view * | data | ) |
|
staticprivate |
| string_view bloaty::dwarf::AttrValue::ReadIndirectString | ( | const CU & | cu, |
| string_view * | data | ||
| ) |
|
staticprivate |
|
private |
|
staticprivate |
| absl::optional< uint64_t > bloaty::dwarf::AttrValue::ToUint | ( | const CU & | cu | ) | const |
| union { ... } |
| absl::string_view bloaty::dwarf::AttrValue::string_ |