LIEF: Library to Instrument Executable Formats Version 0.16.0
Loading...
Searching...
No Matches
LIEF::dwarf::parameters::Formal Class Reference

This class represents a regular function parameter. More...

#include <Parameter.hpp>

Inheritance diagram for LIEF::dwarf::parameters::Formal:
Collaboration diagram for LIEF::dwarf::parameters::Formal:

Public Member Functions

 ~Formal () override=default
 
 Parameter ()=delete
 
 Parameter (Parameter &&other)
 
 Parameter (const Parameter &)=delete
 
- Public Member Functions inherited from LIEF::dwarf::Parameter
 Parameter ()=delete
 
 Parameter (Parameter &&other)
 
Parameteroperator= (Parameter &&other)
 
Parameteroperator= (const Parameter &)=delete
 
 Parameter (const Parameter &)=delete
 
KIND kind () const
 
std::string name () const
 Name of the parameter.
 
std::unique_ptr< Typetype () const
 Type of this parameter.
 
template<class T >
const T * as () const
 
virtual ~Parameter ()
 

Static Public Member Functions

static bool classof (const Parameter *P)
 
- Static Public Member Functions inherited from LIEF::dwarf::Parameter
static std::unique_ptr< Parametercreate (std::unique_ptr< details::Parameter > impl)
 

Additional Inherited Members

- Public Types inherited from LIEF::dwarf::Parameter
enum class  KIND { UNKNOWN = 0 , TEMPLATE_TYPE , TEMPLATE_VALUE , FORMAL }
 

Detailed Description

This class represents a regular function parameter.

For instance, given this prototype:

int main(int argc, const char** argv);

The function main has two parameters::Formal parameters:

  1. argc (Parameter::name) typed as int (types::Base from Parameter::type)
  2. argv (Parameter::name) typed as const char** (types::Const from Parameter::type)

Constructor & Destructor Documentation

◆ ~Formal()

LIEF::dwarf::parameters::Formal::~Formal ( )
overridedefault

Member Function Documentation

◆ classof()

static bool LIEF::dwarf::parameters::Formal::classof ( const Parameter * P)
inlinestatic

◆ Parameter() [1/3]

LIEF::dwarf::Parameter::Parameter ( )
delete

◆ Parameter() [2/3]

LIEF::dwarf::Parameter::Parameter ( const Parameter & )
delete

◆ Parameter() [3/3]

LIEF::dwarf::Parameter::Parameter ( Parameter && other)

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