limes 3.1.0
Composable Calculus Expressions for C++20
Loading...
Searching...
No Matches
limes::expr::AnyExpr< T > Struct Template Reference

#include <derivative.hpp>

Public Types

using value_type = T
 

Public Member Functions

 AnyExpr ()=default
 
template<typename E >
requires is_expr_node_v<E>
 AnyExpr (E expr)
 
eval (std::span< T const > args) const
 
evaluate (std::span< T const > args) const
 
std::string to_string () const
 

Public Attributes

std::function< T(std::span< T const >)> eval_fn
 
std::function< std::string()> to_string_fn
 

Static Public Attributes

static constexpr std::size_t arity_v = 8
 

Detailed Description

template<typename T>
struct limes::expr::AnyExpr< T >

Definition at line 28 of file derivative.hpp.

Member Typedef Documentation

◆ value_type

template<typename T >
using limes::expr::AnyExpr< T >::value_type = T

Definition at line 29 of file derivative.hpp.

Constructor & Destructor Documentation

◆ AnyExpr() [1/2]

template<typename T >
limes::expr::AnyExpr< T >::AnyExpr ( )
default

◆ AnyExpr() [2/2]

template<typename T >
template<typename E >
requires is_expr_node_v<E>
limes::expr::AnyExpr< T >::AnyExpr ( expr)
inlineexplicit

Definition at line 39 of file derivative.hpp.

Member Function Documentation

◆ eval()

template<typename T >
T limes::expr::AnyExpr< T >::eval ( std::span< T const >  args) const
inline

Definition at line 44 of file derivative.hpp.

References limes::expr::AnyExpr< T >::eval_fn.

Referenced by limes::expr::AnyExpr< T >::evaluate().

◆ evaluate()

template<typename T >
T limes::expr::AnyExpr< T >::evaluate ( std::span< T const >  args) const
inline

Definition at line 50 of file derivative.hpp.

References limes::expr::AnyExpr< T >::eval().

◆ to_string()

template<typename T >
std::string limes::expr::AnyExpr< T >::to_string ( ) const
inline

Definition at line 54 of file derivative.hpp.

References limes::expr::AnyExpr< T >::to_string_fn.

Member Data Documentation

◆ arity_v

template<typename T >
constexpr std::size_t limes::expr::AnyExpr< T >::arity_v = 8
staticconstexpr

Definition at line 30 of file derivative.hpp.

◆ eval_fn

template<typename T >
std::function<T(std::span<T const>)> limes::expr::AnyExpr< T >::eval_fn

Definition at line 32 of file derivative.hpp.

Referenced by limes::expr::AnyExpr< T >::eval().

◆ to_string_fn

template<typename T >
std::function<std::string()> limes::expr::AnyExpr< T >::to_string_fn

Definition at line 33 of file derivative.hpp.

Referenced by limes::expr::AnyExpr< T >::to_string().


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