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

#include <aggregation.hpp>

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

Public Member Functions

 ~EntryAggregationNode () noexcept override
 
 EntryAggregationNode (const std::vector< llvm::Argument * > &arguments)
 
constiterator begin () const
 
constiterator end () const
 
const llvm::Argumentargument (size_t index) const noexcept
 
size_t narguments () const noexcept
 
std::string debug_string () const override
 
- Public Member Functions inherited from jlm::llvm::AggregationNode
virtual ~AggregationNode () noexcept
 
 AggregationNode ()
 
 AggregationNode (const AggregationNode &other)=delete
 
 AggregationNode (AggregationNode &&other)=delete
 
AggregationNodeoperator= (const AggregationNode &other)=delete
 
AggregationNodeoperator= (AggregationNode &&other)=delete
 
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
size_t nchildren () const noexcept
 
void add_child (std::unique_ptr< AggregationNode > child)
 
AggregationNodechild (size_t n) const noexcept
 
AggregationNodeparent () noexcept
 
const AggregationNodeparent () const noexcept
 
size_t index () const noexcept
 
size_t nnodes () const noexcept
 

Static Public Member Functions

static std::unique_ptr< AggregationNodecreate (const std::vector< llvm::Argument * > &arguments)
 
- Static Public Member Functions inherited from jlm::llvm::AggregationNode
static void normalize (AggregationNode &node)
 

Private Types

using constiterator = util::PtrIterator< const llvm::Argument, std::vector< llvm::Argument * >::const_iterator >
 

Private Attributes

std::vector< llvm::Argument * > arguments_
 

Detailed Description

Definition at line 172 of file aggregation.hpp.

Member Typedef Documentation

◆ constiterator

Definition at line 174 of file aggregation.hpp.

Constructor & Destructor Documentation

◆ ~EntryAggregationNode()

jlm::llvm::EntryAggregationNode::~EntryAggregationNode ( )
overridedefaultnoexcept

◆ EntryAggregationNode()

jlm::llvm::EntryAggregationNode::EntryAggregationNode ( const std::vector< llvm::Argument * > &  arguments)
inlineexplicit

Definition at line 180 of file aggregation.hpp.

Member Function Documentation

◆ argument()

const llvm::Argument* jlm::llvm::EntryAggregationNode::argument ( size_t  index) const
inlinenoexcept

Definition at line 191 of file aggregation.hpp.

◆ begin()

EntryAggregationNode::constiterator jlm::llvm::EntryAggregationNode::begin ( ) const

Definition at line 61 of file aggregation.cpp.

◆ create()

static std::unique_ptr<AggregationNode> jlm::llvm::EntryAggregationNode::create ( const std::vector< llvm::Argument * > &  arguments)
inlinestatic

Definition at line 207 of file aggregation.hpp.

◆ debug_string()

std::string jlm::llvm::EntryAggregationNode::debug_string ( ) const
overridevirtual

Implements jlm::llvm::AggregationNode.

Definition at line 73 of file aggregation.cpp.

◆ end()

EntryAggregationNode::constiterator jlm::llvm::EntryAggregationNode::end ( ) const

Definition at line 67 of file aggregation.cpp.

◆ narguments()

size_t jlm::llvm::EntryAggregationNode::narguments ( ) const
inlinenoexcept

Definition at line 198 of file aggregation.hpp.

Member Data Documentation

◆ arguments_

std::vector<llvm::Argument *> jlm::llvm::EntryAggregationNode::arguments_
private

Definition at line 213 of file aggregation.hpp.


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