OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Classes | Namespaces | Macros | Functions
matheval.hpp File Reference
#include <algorithm>
#include <cmath>
#include <functional>
#include <iterator>
#include <limits>
#include <map>
#include <sstream>
#include <stdexcept>
#include <string>
#include <boost/math/constants/constants.hpp>
#include <boost/spirit/include/phoenix.hpp>
#include <boost/spirit/include/qi.hpp>
#include <boost/variant.hpp>
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::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...
 
struct  matheval::detail::nil
 
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 >
 
struct  matheval::detail::unary_expr_< real_t >
 Unary expression functor. More...
 
struct  matheval::detail::unary_expr_< real_t >::result< T >
 Make boost::phoenix::function happy. More...
 
struct  matheval::detail::binary_expr_< real_t >
 Binary expression functor. More...
 
struct  matheval::detail::binary_expr_< real_t >::result< T >
 Make boost::phoenix::function happy. More...
 
struct  matheval::detail::expectation_handler
 Error handler for expectation errors. More...
 
struct  matheval::detail::grammar< real_t, Iterator >
 Expression Grammar. More...
 
struct  matheval::detail::grammar< real_t, Iterator >::constant_
 symbol table for constants like "pi" More...
 
struct  matheval::detail::grammar< real_t, Iterator >::ufunc_
 symbol table for unary functions like "abs" More...
 
struct  matheval::detail::grammar< real_t, Iterator >::bfunc_
 symbol table for binary functions like "pow" More...
 
class  matheval::Parser< real_t >
 Class interface. More...
 

Namespaces

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

Macros

#define BOOST_RESULT_OF_USE_DECLTYPE
 
#define BOOST_SPIRIT_USE_PHOENIX_V3
 

Functions

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

Macro Definition Documentation

#define BOOST_RESULT_OF_USE_DECLTYPE

Definition at line 35 of file matheval.hpp.

#define BOOST_SPIRIT_USE_PHOENIX_V3

Definition at line 36 of file matheval.hpp.