OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
matheval::detail Namespace Reference

Namespaces

namespace  math

Classes

struct  unary_op
 Store a unary operator and its argument tree. More...
struct  binary_op
 Store a binary operator and its argument trees. More...
struct  nil
struct  expr_ast
 Abstract Syntax Tree. More...
class  eval_ast
 Evaluate the Abstract Syntax Tree. More...
struct  holds_alternative_impl
struct  ConstantFolder
struct  unary_expr_
 Unary expression functor. More...
struct  binary_expr_
 Binary expression functor. More...
struct  expectation_handler
 Error handler for expectation errors. More...
struct  grammar
 Expression Grammar. More...

Functions

template<typename T, typename... Ts>
bool holds_alternative (boost::variant< Ts... > const &v)
template<typename real_t, typename Iterator>
detail::expr_ast< real_t > parse (Iterator first, Iterator last)
 Parse an expression.

Class Documentation

◆ matheval::detail::nil

struct matheval::detail::nil

Definition at line 88 of file matheval.hpp.

Collaboration diagram for matheval::detail::nil:

Function Documentation

◆ holds_alternative()

template<typename T, typename... Ts>
bool matheval::detail::holds_alternative ( boost::variant< Ts... > const & v)

◆ parse()

template<typename real_t, typename Iterator>
detail::expr_ast< real_t > matheval::detail::parse ( Iterator first,
Iterator last )

Parse an expression.

This function builds the grammar and parses the iterator into an AST.

Parameters
[in]firstiterator to the start of the input sequence
[in]lastiterator to the end of the input sequence

Definition at line 555 of file matheval.hpp.

Referenced by matheval::Parser< real_t >::parse().