Jlm
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
jlm::llvm::Argument Class Referencefinal

Function argument. More...

#include <cfg.hpp>

Inheritance diagram for jlm::llvm::Argument:
Inheritance graph
[legend]
Collaboration diagram for jlm::llvm::Argument:
Collaboration graph
[legend]

Public Member Functions

 ~Argument () noexcept override
 
 Argument (const std::string &name, std::shared_ptr< const jlm::rvsdg::Type > type, const AttributeSet &attributes)
 
 Argument (const std::string &name, std::shared_ptr< const jlm::rvsdg::Type > type)
 
 Argument (const std::string &name, std::unique_ptr< jlm::rvsdg::Type > type, const AttributeSet &attributes)
 
const AttributeSetattributes () const noexcept
 
- Public Member Functions inherited from jlm::llvm::Variable
virtual ~Variable () noexcept
 
 Variable (std::shared_ptr< const jlm::rvsdg::Type > type, const std::string &name)
 
 Variable (Variable &&other) noexcept
 
Variableoperator= (Variable &&other) noexcept
 
virtual std::string debug_string () const
 
const std::string & name () const noexcept
 
const jlm::rvsdg::Typetype () const noexcept
 
const std::shared_ptr< const jlm::rvsdg::TypeType () const noexcept
 

Static Public Member Functions

static std::unique_ptr< Argumentcreate (const std::string &name, std::shared_ptr< const jlm::rvsdg::Type > type, const AttributeSet &attributes)
 
static std::unique_ptr< Argumentcreate (const std::string &name, std::shared_ptr< const jlm::rvsdg::Type > type)
 

Private Attributes

AttributeSet attributes_
 

Detailed Description

Function argument.

Definition at line 26 of file cfg.hpp.

Constructor & Destructor Documentation

◆ ~Argument()

jlm::llvm::Argument::~Argument ( )
overridedefaultnoexcept

◆ Argument() [1/3]

jlm::llvm::Argument::Argument ( const std::string &  name,
std::shared_ptr< const jlm::rvsdg::Type type,
const AttributeSet attributes 
)
inline

Definition at line 31 of file cfg.hpp.

◆ Argument() [2/3]

jlm::llvm::Argument::Argument ( const std::string &  name,
std::shared_ptr< const jlm::rvsdg::Type type 
)
inline

Definition at line 39 of file cfg.hpp.

◆ Argument() [3/3]

jlm::llvm::Argument::Argument ( const std::string &  name,
std::unique_ptr< jlm::rvsdg::Type type,
const AttributeSet attributes 
)
inline

Definition at line 43 of file cfg.hpp.

Member Function Documentation

◆ attributes()

const AttributeSet& jlm::llvm::Argument::attributes ( ) const
inlinenoexcept

Definition at line 52 of file cfg.hpp.

◆ create() [1/2]

static std::unique_ptr<Argument> jlm::llvm::Argument::create ( const std::string &  name,
std::shared_ptr< const jlm::rvsdg::Type type 
)
inlinestatic

Definition at line 67 of file cfg.hpp.

◆ create() [2/2]

static std::unique_ptr<Argument> jlm::llvm::Argument::create ( const std::string &  name,
std::shared_ptr< const jlm::rvsdg::Type type,
const AttributeSet attributes 
)
inlinestatic

Definition at line 58 of file cfg.hpp.

Member Data Documentation

◆ attributes_

AttributeSet jlm::llvm::Argument::attributes_
private

Definition at line 73 of file cfg.hpp.


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