joque
task orchestration library
joque::bits::gnode< T, EdgeType > Class Template Reference

#include <dag.hpp>

Public Types

using edge_type = EdgeType
 
using lheader_type = list_header< gnode, lheader_accessor >
 
using edge_list = typename edge_type::list_type
 
using edge_rlist = typename edge_type::rlist_type
 
using list_type = list< lheader_type >
 

Public Member Functions

 gnode ()=default
 
 gnode (const gnode &other)=delete
 
 gnode (gnode &&other)=delete
 
gnodeoperator= (const gnode &other)=delete
 
gnodeoperator= (gnode &&other)=delete
 
template<typename... Args>
 gnode (Args &&... args)
 
T * operator-> ()
 
const T * operator-> () const
 
T & operator* ()
 
const T & operator* () const
 
edge_listout_edges ()
 
const edge_listout_edges () const
 
edge_rlistin_edges ()
 
const edge_rlistin_edges () const
 

Member Typedef Documentation

◆ edge_type

template<typename T , typename EdgeType >
using joque::bits::gnode< T, EdgeType >::edge_type = EdgeType

◆ lheader_type

template<typename T , typename EdgeType >
using joque::bits::gnode< T, EdgeType >::lheader_type = list_header< gnode, lheader_accessor >

◆ edge_list

template<typename T , typename EdgeType >
using joque::bits::gnode< T, EdgeType >::edge_list = typename edge_type::list_type

◆ edge_rlist

template<typename T , typename EdgeType >
using joque::bits::gnode< T, EdgeType >::edge_rlist = typename edge_type::rlist_type

◆ list_type

template<typename T , typename EdgeType >
using joque::bits::gnode< T, EdgeType >::list_type = list< lheader_type >

Constructor & Destructor Documentation

◆ gnode() [1/4]

template<typename T , typename EdgeType >
joque::bits::gnode< T, EdgeType >::gnode ( )
default

◆ gnode() [2/4]

template<typename T , typename EdgeType >
joque::bits::gnode< T, EdgeType >::gnode ( const gnode< T, EdgeType > &  other)
delete

◆ gnode() [3/4]

template<typename T , typename EdgeType >
joque::bits::gnode< T, EdgeType >::gnode ( gnode< T, EdgeType > &&  other)
delete

◆ gnode() [4/4]

template<typename T , typename EdgeType >
template<typename... Args>
joque::bits::gnode< T, EdgeType >::gnode ( Args &&...  args)
inline

Member Function Documentation

◆ operator=() [1/2]

template<typename T , typename EdgeType >
gnode& joque::bits::gnode< T, EdgeType >::operator= ( const gnode< T, EdgeType > &  other)
delete

◆ operator=() [2/2]

template<typename T , typename EdgeType >
gnode& joque::bits::gnode< T, EdgeType >::operator= ( gnode< T, EdgeType > &&  other)
delete

◆ operator->() [1/2]

template<typename T , typename EdgeType >
T* joque::bits::gnode< T, EdgeType >::operator-> ( )
inline

◆ operator->() [2/2]

template<typename T , typename EdgeType >
const T* joque::bits::gnode< T, EdgeType >::operator-> ( ) const
inline

◆ operator*() [1/2]

template<typename T , typename EdgeType >
T& joque::bits::gnode< T, EdgeType >::operator* ( )
inline

◆ operator*() [2/2]

template<typename T , typename EdgeType >
const T& joque::bits::gnode< T, EdgeType >::operator* ( ) const
inline

◆ out_edges() [1/2]

template<typename T , typename EdgeType >
edge_list& joque::bits::gnode< T, EdgeType >::out_edges ( )
inline

◆ out_edges() [2/2]

template<typename T , typename EdgeType >
const edge_list& joque::bits::gnode< T, EdgeType >::out_edges ( ) const
inline

◆ in_edges() [1/2]

template<typename T , typename EdgeType >
edge_rlist& joque::bits::gnode< T, EdgeType >::in_edges ( )
inline

◆ in_edges() [2/2]

template<typename T , typename EdgeType >
const edge_rlist& joque::bits::gnode< T, EdgeType >::in_edges ( ) const
inline

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