LIEF: Library to Instrument Executable Formats Version 0.17.0
|
This class wraps the DW_TAG_base_type
type which can be used – for instance – to represent integers or primitive types.
More...
#include <Base.hpp>
Public Types | |
enum class | ENCODING { NONE = 0 , SIGNED , SIGNED_CHAR , UNSIGNED , UNSIGNED_CHAR , FLOAT , BOOLEAN , ADDRESS } |
![]() | |
enum class | KIND { UNKNOWN = 0 , UNSPECIFIED , BASE , CONST_KIND , CLASS , ARRAY , POINTER , STRUCT , UNION , TYPEDEF , REF , SET_TYPE , STRING , SUBROUTINE , POINTER_MEMBER , PACKED , FILE , THROWN , VOLATILE , RESTRICT , INTERFACE , SHARED , RVALREF , TEMPLATE_ALIAS , COARRAY , DYNAMIC , ATOMIC , IMMUTABLE , ENUM } |
Public Member Functions | |
ENCODING | encoding () const |
Describe how the base type is encoded and should be interpreted. | |
~Base () override | |
![]() | |
virtual | ~Type () |
KIND | kind () const |
bool | is_unspecified () const |
Whether this type is a DW_TAG_unspecified_type | |
result< std::string > | name () const |
Return the type's name using either DW_AT_name or DW_AT_picture_string (if any). | |
result< uint64_t > | size () const |
Return the size of the type or an error if it can't be computed. | |
debug_location_t | location () const |
Return the debug location where this type is defined. | |
std::unique_ptr< Scope > | scope () const |
Return the scope in which this type is defined. | |
template<class T > | |
const T * | as () const |
Static Public Member Functions | |
static bool | classof (const Type *type) |
![]() | |
static std::unique_ptr< Type > | create (std::unique_ptr< details::Type > impl) |
This class wraps the DW_TAG_base_type
type which can be used – for instance – to represent integers or primitive types.
|
strong |
|
override |
|
inlinestatic |
References LIEF::dwarf::Type::kind().
ENCODING LIEF::dwarf::types::Base::encoding | ( | ) | const |
Describe how the base type is encoded and should be interpreted.