OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
matheval::detail::unary_op< real_t > Struct Template Reference

Store a unary operator and its argument tree. More...

#include <matheval.hpp>

Collaboration diagram for matheval::detail::unary_op< real_t >:
Collaboration graph

Public Types

using op_t = std::function< real_t(real_t)>
 Signature of a unary operator: op(x)
 

Public Member Functions

 unary_op (op_t op, expr_ast< real_t > rhs)
 Save the operator and the argument tree.
 
 unary_op (const unary_op &other)
 
 unary_op (unary_op &&) noexcept=default
 
unary_opoperator= (const unary_op &other)
 
unary_opoperator= (unary_op &&) noexcept=default
 

Public Attributes

op_t op
 Stored operator.
 
std::unique_ptr< expr_ast< real_t > > rhs
 Stored argument tree.
 

Detailed Description

template<typename real_t>
struct matheval::detail::unary_op< real_t >

Store a unary operator and its argument tree.

Definition at line 175 of file matheval.hpp.

Member Typedef Documentation

◆ op_t

template<typename real_t >
using matheval::detail::unary_op< real_t >::op_t = std::function<real_t(real_t)>

Signature of a unary operator: op(x)

Definition at line 177 of file matheval.hpp.

Constructor & Destructor Documentation

◆ unary_op() [1/3]

template<typename real_t >
matheval::detail::unary_op< real_t >::unary_op ( op_t  op,
expr_ast< real_t >  rhs 
)
inline

Save the operator and the argument tree.

Definition at line 180 of file matheval.hpp.

◆ unary_op() [2/3]

template<typename real_t >
matheval::detail::unary_op< real_t >::unary_op ( const unary_op< real_t > &  other)
inline

Definition at line 183 of file matheval.hpp.

◆ unary_op() [3/3]

template<typename real_t >
matheval::detail::unary_op< real_t >::unary_op ( unary_op< real_t > &&  )
defaultnoexcept

Member Function Documentation

◆ operator=() [1/2]

template<typename real_t >
unary_op & matheval::detail::unary_op< real_t >::operator= ( const unary_op< real_t > &  other)
inline

◆ operator=() [2/2]

template<typename real_t >
unary_op & matheval::detail::unary_op< real_t >::operator= ( unary_op< real_t > &&  )
defaultnoexcept

Member Data Documentation

◆ op

◆ rhs


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