LIEF: Library to Instrument Executable Formats Version 0.17.0
Loading...
Searching...
No Matches
LIEF::OAT::Method Class Reference

#include <Method.hpp>

Inheritance diagram for LIEF::OAT::Method:
Collaboration diagram for LIEF::OAT::Method:

Public Types

using quick_code_t = std::vector<uint8_t>
 Container for the Quick Code.
Public Types inherited from LIEF::Object
template<class T>
using output_t = add_pointer_t<decay_t<T>>
template<class T>
using output_const_t = add_pointer_t<add_const_t<decay_t<T>>>

Public Member Functions

 Method ()
 Method (DEX::Method *method, Class *oat_class, std::vector< uint8_t > code={})
 Method (const Method &)
Methodoperator= (const Method &)
std::string name () const
 Method's name.
const Classoat_class () const
 OAT Class associated with this Method.
Classoat_class ()
bool has_dex_method () const
 Check if a LIEF::DEX::Method is associated with this Method.
const DEX::Methoddex_method () const
 LIEF::DEX::Method associated (if any).
DEX::Methoddex_method ()
bool is_dex2dex_optimized () const
 True if the optimization is DEX.
bool is_compiled () const
const DEX::dex2dex_method_info_tdex2dex_info () const
const quick_code_tquick_code () const
 Quick code associated with the method.
void quick_code (const quick_code_t &code)
void accept (Visitor &visitor) const override
 ~Method () override
Public Member Functions inherited from LIEF::Object
 Object ()
 Object (const Object &other)
Objectoperator= (const Object &other)
 Object (Object &&other) noexcept=default
Objectoperator= (Object &&other) noexcept=default
template<class T>
output_t< T > as ()
template<class T>
output_const_t< T > as () const
virtual bool operator== (const Object &other) const
virtual bool operator!= (const Object &other) const
virtual ~Object ()

Member Typedef Documentation

◆ quick_code_t

using LIEF::OAT::Method::quick_code_t = std::vector<uint8_t>

Container for the Quick Code.

Constructor & Destructor Documentation

◆ Method() [1/3]

LIEF::OAT::Method::Method ( )

Referenced by Method(), operator<<, and operator=().

◆ Method() [2/3]

LIEF::OAT::Method::Method ( DEX::Method * method,
Class * oat_class,
std::vector< uint8_t > code = {} )

References oat_class().

◆ Method() [3/3]

LIEF::OAT::Method::Method ( const Method & )

References Method().

◆ ~Method()

LIEF::OAT::Method::~Method ( )
override

Member Function Documentation

◆ accept()

void LIEF::OAT::Method::accept ( Visitor & visitor) const
overridevirtual

Implements LIEF::Object.

◆ dex2dex_info()

const DEX::dex2dex_method_info_t & LIEF::OAT::Method::dex2dex_info ( ) const

◆ dex_method() [1/2]

DEX::Method * LIEF::OAT::Method::dex_method ( )

◆ dex_method() [2/2]

const DEX::Method * LIEF::OAT::Method::dex_method ( ) const

LIEF::DEX::Method associated (if any).

◆ has_dex_method()

bool LIEF::OAT::Method::has_dex_method ( ) const

Check if a LIEF::DEX::Method is associated with this Method.

◆ is_compiled()

bool LIEF::OAT::Method::is_compiled ( ) const

◆ is_dex2dex_optimized()

bool LIEF::OAT::Method::is_dex2dex_optimized ( ) const

True if the optimization is DEX.

◆ name()

std::string LIEF::OAT::Method::name ( ) const

Method's name.

◆ oat_class() [1/2]

Class * LIEF::OAT::Method::oat_class ( )

◆ oat_class() [2/2]

const Class * LIEF::OAT::Method::oat_class ( ) const

OAT Class associated with this Method.

Referenced by Method().

◆ operator=()

Method & LIEF::OAT::Method::operator= ( const Method & )

References Method().

◆ quick_code() [1/2]

const quick_code_t & LIEF::OAT::Method::quick_code ( ) const

Quick code associated with the method.

◆ quick_code() [2/2]

void LIEF::OAT::Method::quick_code ( const quick_code_t & code)

The documentation for this class was generated from the following file: