LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
16#ifndef LIEF_PE_LOAD_CONFIGURATION_CHPE_METADATA_H
17#define LIEF_PE_LOAD_CONFIGURATION_CHPE_METADATA_H
43 kind_(kind), version_(version)
47 CHPEMetadata&
operator=(
const CHPEMetadata&) =
default;
52 virtual std::unique_ptr<CHPEMetadata>
clone()
const {
53 return std::unique_ptr<CHPEMetadata>(
new CHPEMetadata(*
this));
56 static std::unique_ptr<CHPEMetadata>
parse(Parser& ctx, BinaryStream& stream);
69 return std::string(
"CHPEMetadata{ version= ") + std::to_string(version_) +
"}";
74 static_assert(std::is_base_of<CHPEMetadata, T>::value,
75 "Require CHPEMetadata inheritance");
76 if (T::classof(
this)) {
77 return static_cast<T*
>(
this);
84 return const_cast<CHPEMetadata*
>(
this)->as<T>();
88 std::ostream&
operator<<(std::ostream& os,
const CHPEMetadata& meta)
97 KIND kind_ = KIND::UNKNOWN;
98 uint32_t version_ = 0;
Class that is used to a read stream of data from different sources.
Definition BinaryStream.hpp:33
Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used...
Definition PE/Parser.hpp:52
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
@ T
Definition AcceleratorCodes.hpp:97
LIEF namespace.
Definition Abstract/Binary.hpp:36
#define LIEF_API
Definition visibility.h:41