limes 3.1.0
Composable Calculus Expressions for C++20
Loading...
Searching...
No Matches
limes::expr::BoundExpr< E, Dim, BoundValue > Struct Template Reference

#include <bound.hpp>

Public Types

using value_type = typename E::value_type
 
using expr_type = E
 
using bound_type = BoundValue
 

Public Member Functions

constexpr BoundExpr (E e, BoundValue v) noexcept
 
constexpr value_type eval (std::span< value_type const > args) const
 
constexpr value_type eval () const
 
constexpr value_type evaluate (std::span< value_type const > args) const
 
constexpr value_type evaluate () const
 
template<std::size_t DerivDim>
constexpr auto derivative () const
 
std::string to_string () const
 

Public Attributes

expr
 
BoundValue bound_value
 

Static Public Attributes

static constexpr std::size_t dim_v = Dim
 
static constexpr std::size_t original_arity_v = E::arity_v
 
static constexpr std::size_t arity_v = (E::arity_v > 0) ? (E::arity_v - 1) : 0
 

Detailed Description

template<typename E, std::size_t Dim, typename BoundValue>
struct limes::expr::BoundExpr< E, Dim, BoundValue >

Definition at line 24 of file bound.hpp.

Member Typedef Documentation

◆ bound_type

template<typename E , std::size_t Dim, typename BoundValue >
using limes::expr::BoundExpr< E, Dim, BoundValue >::bound_type = BoundValue

Definition at line 27 of file bound.hpp.

◆ expr_type

template<typename E , std::size_t Dim, typename BoundValue >
using limes::expr::BoundExpr< E, Dim, BoundValue >::expr_type = E

Definition at line 26 of file bound.hpp.

◆ value_type

template<typename E , std::size_t Dim, typename BoundValue >
using limes::expr::BoundExpr< E, Dim, BoundValue >::value_type = typename E::value_type

Definition at line 25 of file bound.hpp.

Constructor & Destructor Documentation

◆ BoundExpr()

template<typename E , std::size_t Dim, typename BoundValue >
constexpr limes::expr::BoundExpr< E, Dim, BoundValue >::BoundExpr ( e,
BoundValue  v 
)
inlineconstexprnoexcept

Definition at line 36 of file bound.hpp.

Member Function Documentation

◆ derivative()

template<typename E , std::size_t Dim, typename BoundValue >
template<std::size_t DerivDim>
constexpr auto limes::expr::BoundExpr< E, Dim, BoundValue >::derivative ( ) const
inlineconstexpr

◆ eval() [1/2]

template<typename E , std::size_t Dim, typename BoundValue >
constexpr value_type limes::expr::BoundExpr< E, Dim, BoundValue >::eval ( ) const
inlineconstexpr

◆ eval() [2/2]

template<typename E , std::size_t Dim, typename BoundValue >
constexpr value_type limes::expr::BoundExpr< E, Dim, BoundValue >::eval ( std::span< value_type const >  args) const
inlineconstexpr

◆ evaluate() [1/2]

template<typename E , std::size_t Dim, typename BoundValue >
constexpr value_type limes::expr::BoundExpr< E, Dim, BoundValue >::evaluate ( ) const
inlineconstexpr

Definition at line 67 of file bound.hpp.

References limes::expr::BoundExpr< E, Dim, BoundValue >::eval().

◆ evaluate() [2/2]

template<typename E , std::size_t Dim, typename BoundValue >
constexpr value_type limes::expr::BoundExpr< E, Dim, BoundValue >::evaluate ( std::span< value_type const >  args) const
inlineconstexpr

Definition at line 62 of file bound.hpp.

References limes::expr::BoundExpr< E, Dim, BoundValue >::eval().

◆ to_string()

template<typename E , std::size_t Dim, typename BoundValue >
std::string limes::expr::BoundExpr< E, Dim, BoundValue >::to_string ( ) const
inline

Definition at line 79 of file bound.hpp.

References limes::expr::BoundExpr< E, Dim, BoundValue >::expr.

Member Data Documentation

◆ arity_v

template<typename E , std::size_t Dim, typename BoundValue >
constexpr std::size_t limes::expr::BoundExpr< E, Dim, BoundValue >::arity_v = (E::arity_v > 0) ? (E::arity_v - 1) : 0
staticconstexpr

Definition at line 31 of file bound.hpp.

◆ bound_value

template<typename E , std::size_t Dim, typename BoundValue >
BoundValue limes::expr::BoundExpr< E, Dim, BoundValue >::bound_value

Definition at line 34 of file bound.hpp.

Referenced by limes::expr::BoundExpr< E, Dim, BoundValue >::derivative().

◆ dim_v

template<typename E , std::size_t Dim, typename BoundValue >
constexpr std::size_t limes::expr::BoundExpr< E, Dim, BoundValue >::dim_v = Dim
staticconstexpr

Definition at line 29 of file bound.hpp.

◆ expr

template<typename E , std::size_t Dim, typename BoundValue >
E limes::expr::BoundExpr< E, Dim, BoundValue >::expr

◆ original_arity_v

template<typename E , std::size_t Dim, typename BoundValue >
constexpr std::size_t limes::expr::BoundExpr< E, Dim, BoundValue >::original_arity_v = E::arity_v
staticconstexpr

Definition at line 30 of file bound.hpp.

Referenced by limes::expr::BoundExpr< E, Dim, BoundValue >::eval().


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