OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
matheval.hpp File Reference
#include <algorithm>
#include <cctype>
#include <cmath>
#include <functional>
#include <iterator>
#include <limits>
#include <map>
#include <memory>
#include <numbers>
#include <sstream>
#include <stdexcept>
#include <string>
#include <variant>
Include dependency graph for matheval.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  matheval::detail::nil
 
struct  matheval::detail::recursive_wrapper< T >
 
struct  matheval::detail::expr_ast< real_t >
 Abstract Syntax Tree. More...
 
struct  matheval::detail::unary_op< real_t >
 Store a unary operator and its argument tree. More...
 
struct  matheval::detail::binary_op< real_t >
 Store a binary operator and its argument trees. More...
 
class  matheval::detail::eval_ast< real_t >
 Evaluate the Abstract Syntax Tree. More...
 
struct  matheval::detail::holds_alternative_impl< T >
 
struct  matheval::detail::ConstantFolder< real_t >
 
class  matheval::detail::SimpleMathParser< real_t >
 
class  matheval::Parser< real_t >
 Class interface. More...
 

Namespaces

namespace  matheval
 
namespace  matheval::detail
 
namespace  matheval::detail::math
 

Functions

template<typename T >
T matheval::detail::math::sgn (T x)
 Sign function.
 
template<typename T >
T matheval::detail::math::isnan (T x)
 isnan function with adjusted return type
 
template<typename T >
T matheval::detail::math::isinf (T x)
 isinf function with adjusted return type
 
template<typename T >
T matheval::detail::math::deg (T x)
 Convert radians to degrees.
 
template<typename T >
T matheval::detail::math::rad (T x)
 Convert degrees to radians.
 
template<typename T , typename... Ts>
bool matheval::detail::holds_alternative (std::variant< Ts... > const &v)
 
template<typename real_t , typename Iterator >
expr_ast< real_t > matheval::detail::parse (Iterator first, Iterator last)
 Parse an expression.
 
template<typename real_t , typename Iterator >
real_t matheval::parse (Iterator first, Iterator last, typename detail::eval_ast< real_t >::symbol_table_t const &st)
 Convenience function.
 
template<typename real_t >
real_t matheval::parse (std::string const &str, typename detail::eval_ast< real_t >::symbol_table_t const &st)
 

Class Documentation

◆ matheval::detail::nil

struct matheval::detail::nil

Definition at line 93 of file matheval.hpp.

Collaboration diagram for matheval::detail::nil:
Collaboration graph