LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Base class for any Compiled Hybrid Portable Executable (CHPE) metadata. More...
#include <Metadata.hpp>
Public Types | |
enum class | KIND { UNKNOWN = 0 , ARM64 , X86 } |
Discriminator for the subclasses. More... | |
Public Member Functions | |
CHPEMetadata ()=default | |
CHPEMetadata (KIND kind, uint32_t version) | |
CHPEMetadata (const CHPEMetadata &)=default | |
CHPEMetadata & | operator= (const CHPEMetadata &)=default |
CHPEMetadata (CHPEMetadata &&)=default | |
CHPEMetadata & | operator= (CHPEMetadata &&)=default |
virtual std::unique_ptr< CHPEMetadata > | clone () const |
KIND | kind () const |
Determine the type of the concrete implementation. | |
uint32_t | version () const |
Version of the structure. | |
virtual std::string | to_string () const |
template<class T > | |
T * | as () |
template<class T > | |
const T * | as () const |
virtual | ~CHPEMetadata ()=default |
Static Public Member Functions | |
static std::unique_ptr< CHPEMetadata > | parse (Parser &ctx, BinaryStream &stream) |
Base class for any Compiled Hybrid Portable Executable (CHPE) metadata.
This class is inherited by architecture-specific implementation.
|
strong |
|
default |
|
inline |
|
default |
|
default |
|
virtualdefault |
References LIEF::PE::T.
References LIEF::PE::T.
|
inlinevirtual |
Reimplemented in LIEF::PE::CHPEMetadataARM64, and LIEF::PE::CHPEMetadataX86.
|
inline |
Determine the type of the concrete implementation.
Referenced by LIEF::PE::CHPEMetadataARM64::classof(), and LIEF::PE::CHPEMetadataX86::classof().
|
default |
|
default |
|
static |
|
inlinevirtual |
Reimplemented in LIEF::PE::CHPEMetadataARM64, and LIEF::PE::CHPEMetadataX86.
Referenced by operator<<.
|
inline |
Version of the structure.