autoppl  v0.8
A C++ template library for probabilistic programming
ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType > Struct Template Reference

#include <op_eq.hpp>

Inheritance diagram for ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >:
ppl::util::VarExprBase< OpEqNode< Op, TParamViewType, VarExprType > > ppl::util::BaseCRTP< OpEqNode< Op, TParamViewType, VarExprType > >

Public Types

using value_t = typename util::var_expr_traits< tp_view_t >::value_t
 
using shape_t = typename util::shape_traits< tp_view_t >::shape_t
 

Public Member Functions

 OpEqNode (const tp_view_t &tp_view, const var_expr_t &expr)
 
template<class Func >
void traverse (Func &&f)
 
template<class Func >
void traverse (Func &&f) const
 
auto get () const
 
auto eval ()
 
constexpr size_t size () const
 
constexpr size_t rows () const
 
constexpr size_t cols () const
 
template<class PtrPackType >
auto ad (const PtrPackType &pack) const
 
template<class PtrPackType >
void bind (const PtrPackType &pack)
 
void activate_refcnt () const
 
auto & get_variable ()
 
const auto & get_variable () const
 
- Public Member Functions inherited from ppl::util::BaseCRTP< OpEqNode< Op, TParamViewType, VarExprType > >
OpEqNode< Op, TParamViewType, VarExprType > & self ()
 
const OpEqNode< Op, TParamViewType, VarExprType > & self () const
 

Static Public Attributes

static constexpr bool has_param = true
 

Member Typedef Documentation

◆ shape_t

template<class Op , class TParamViewType , class VarExprType >
using ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::shape_t = typename util::shape_traits<tp_view_t>::shape_t

◆ value_t

template<class Op , class TParamViewType , class VarExprType >
using ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::value_t = typename util::var_expr_traits<tp_view_t>::value_t

Constructor & Destructor Documentation

◆ OpEqNode()

template<class Op , class TParamViewType , class VarExprType >
ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::OpEqNode ( const tp_view_t &  tp_view,
const var_expr_t &  expr 
)
inline

Member Function Documentation

◆ activate_refcnt()

template<class Op , class TParamViewType , class VarExprType >
void ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::activate_refcnt ( ) const
inline

◆ ad()

template<class Op , class TParamViewType , class VarExprType >
template<class PtrPackType >
auto ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::ad ( const PtrPackType &  pack) const
inline

◆ bind()

template<class Op , class TParamViewType , class VarExprType >
template<class PtrPackType >
void ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::bind ( const PtrPackType &  pack)
inline

◆ cols()

template<class Op , class TParamViewType , class VarExprType >
constexpr size_t ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::cols ( ) const
inlineconstexpr

◆ eval()

template<class Op , class TParamViewType , class VarExprType >
auto ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::eval ( )
inline

◆ get()

template<class Op , class TParamViewType , class VarExprType >
auto ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::get ( ) const
inline

◆ get_variable() [1/2]

template<class Op , class TParamViewType , class VarExprType >
auto& ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::get_variable ( )
inline

◆ get_variable() [2/2]

template<class Op , class TParamViewType , class VarExprType >
const auto& ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::get_variable ( ) const
inline

◆ rows()

template<class Op , class TParamViewType , class VarExprType >
constexpr size_t ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::rows ( ) const
inlineconstexpr

◆ size()

template<class Op , class TParamViewType , class VarExprType >
constexpr size_t ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::size ( ) const
inlineconstexpr

◆ traverse() [1/2]

template<class Op , class TParamViewType , class VarExprType >
template<class Func >
void ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::traverse ( Func &&  f)
inline

◆ traverse() [2/2]

template<class Op , class TParamViewType , class VarExprType >
template<class Func >
void ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::traverse ( Func &&  f) const
inline

Member Data Documentation

◆ has_param

template<class Op , class TParamViewType , class VarExprType >
constexpr bool ppl::expr::var::OpEqNode< Op, TParamViewType, VarExprType >::has_param = true
staticconstexpr

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