Jlm
Public Member Functions | Public Attributes | Private Attributes | List of all members
jlm::rvsdg::StructuralOutput Class Reference

#include <structural-node.hpp>

Inheritance diagram for jlm::rvsdg::StructuralOutput:
Inheritance graph
[legend]
Collaboration diagram for jlm::rvsdg::StructuralOutput:
Collaboration graph
[legend]

Public Member Functions

 ~StructuralOutput () noexcept override
 
 StructuralOutput (StructuralNode *node, std::shared_ptr< const rvsdg::Type > type)
 
StructuralNodenode () const noexcept
 
- Public Member Functions inherited from jlm::rvsdg::NodeOutput
 NodeOutput (Node *node, std::shared_ptr< const rvsdg::Type > type)
 
Nodenode () const noexcept
 
- Public Member Functions inherited from jlm::rvsdg::Output
virtual ~Output () noexcept
 
 Output (const Output &)=delete
 
 Output (Output &&)=delete
 
Outputoperator= (const Output &)=delete
 
Outputoperator= (Output &&)=delete
 
size_t index () const noexcept
 
size_t nusers () const noexcept
 
bool IsDead () const noexcept
 
void divert_users (jlm::rvsdg::Output *new_origin)
 
template<typename F >
size_t divertUsersWhere (Output &newOrigin, const F &match)
 
rvsdg::InputSingleUser () noexcept
 
UsersRange Users ()
 
UsersConstRange Users () const
 
const std::shared_ptr< const rvsdg::Type > & Type () const noexcept
 
rvsdg::Regionregion () const noexcept
 
virtual std::string debug_string () const
 
std::variant< Node *, Region * > GetOwner () const noexcept
 

Public Attributes

result_list results
 

Private Attributes

friend StructuralNode
 

Additional Inherited Members

- Public Types inherited from jlm::rvsdg::Output
using UsersList = Input::UsersList
 
using UsersRange = jlm::util::IteratorRange< UsersList::Iterator >
 
using UsersConstRange = jlm::util::IteratorRange< UsersList::ConstIterator >
 
- Protected Member Functions inherited from jlm::rvsdg::Output
 Output (Node &owner, std::shared_ptr< const rvsdg::Type > type)
 
 Output (Region *owner, std::shared_ptr< const rvsdg::Type > type)
 

Detailed Description

Definition at line 117 of file structural-node.hpp.

Constructor & Destructor Documentation

◆ ~StructuralOutput()

jlm::rvsdg::StructuralOutput::~StructuralOutput ( )
overridenoexcept

Definition at line 29 of file structural-node.cpp.

◆ StructuralOutput()

jlm::rvsdg::StructuralOutput::StructuralOutput ( StructuralNode node,
std::shared_ptr< const rvsdg::Type type 
)

Definition at line 34 of file structural-node.cpp.

Member Function Documentation

◆ node()

StructuralNode* jlm::rvsdg::StructuralOutput::node ( ) const
inlinenoexcept

Definition at line 127 of file structural-node.hpp.

Member Data Documentation

◆ results

result_list jlm::rvsdg::StructuralOutput::results

Definition at line 132 of file structural-node.hpp.

◆ StructuralNode

friend jlm::rvsdg::StructuralOutput::StructuralNode
private

Definition at line 119 of file structural-node.hpp.


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