|
OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
|
#include <expression.hpp>
Public Member Functions | |
| expression (error_handler< Iterator > &error_handler) | |
| bool | parse (Iterator &first, Iterator last, ast::expression &attr) |
Private Member Functions | |
| void | skip_ws (Iterator &it, Iterator last) const |
| bool | match (Iterator &it, Iterator last, char c) const |
| bool | match_word (Iterator &it, Iterator last, char const *word) const |
| bool | match_op_token (Iterator &it, Iterator last, char const *token) const |
| bool | try_identifier_token (Iterator &it, Iterator last, std::string &word) const |
| template<typename NextLevel , typename OpMatcher > | |
| bool | parse_level (Iterator &it, Iterator last, ast::expression &out, NextLevel next, OpMatcher match_op) |
| bool | parse_expr (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_logical_or (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_logical_and (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_equality (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_relational (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_additive (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_multiplicative (Iterator &it, Iterator last, ast::expression &out) |
| bool | parse_unary (Iterator &it, Iterator last, ast::operand &out) |
| bool | parse_primary (Iterator &it, Iterator last, ast::operand &out) |
| bool | parse_constant (Iterator &it, Iterator last, ast::operand &out) |
| bool | parse_argument_list (Iterator &it, Iterator last, std::list< ast::function_call_argument > &out) |
| bool | parse_call_argument (Iterator &it, Iterator last, ast::function_call_argument &out) |
| bool | parse_quoted_string (Iterator &it, Iterator last, std::string &out) |
Static Private Member Functions | |
| static ast::operand | to_operand (ast::expression &&e) |
Private Attributes | |
| error_handler< Iterator > & | error_handler_ |
| annotation< Iterator > | annotation_ |
Definition at line 36 of file expression.hpp.
|
explicit |
Definition at line 12 of file expression_def.hpp.
|
private |
Definition at line 39 of file expression_def.hpp.
|
private |
Definition at line 50 of file expression_def.hpp.
|
private |
Definition at line 67 of file expression_def.hpp.
| bool client::parser::expression< Iterator >::parse | ( | Iterator & | first, |
| Iterator | last, | ||
| ast::expression< Iterator > & | attr | ||
| ) |
Parses an expression starting at first. On success, first is advanced past the consumed input and attr is filled in; on failure first is left unchanged and false is returned.
Definition at line 479 of file expression_def.hpp.
Referenced by Expression::parse().
|
private |
Definition at line 215 of file expression_def.hpp.
References client::ast::op_minus, and client::ast::op_plus.
|
private |
Definition at line 419 of file expression_def.hpp.
References arg().

|
private |
Definition at line 397 of file expression_def.hpp.
|
private |
Definition at line 278 of file expression_def.hpp.
References end().

|
private |
Definition at line 189 of file expression_def.hpp.
References client::ast::op_equal, and client::ast::op_not_equal.
|
private |
Definition at line 473 of file expression_def.hpp.
|
private |
Definition at line 127 of file expression_def.hpp.
References client::ast::expression::first, and client::ast::expression::rest.
|
private |
Definition at line 178 of file expression_def.hpp.
References client::ast::op_and.
|
private |
Definition at line 167 of file expression_def.hpp.
References client::ast::op_or.
|
private |
Definition at line 227 of file expression_def.hpp.
References client::ast::expression::first, client::ast::op_divide, client::ast::op_times, and client::ast::expression::rest.
|
private |
Definition at line 332 of file expression_def.hpp.
References client::ast::function_call::args, and client::ast::function_call::function_name.
|
private |
Definition at line 448 of file expression_def.hpp.
|
private |
Definition at line 201 of file expression_def.hpp.
References client::ast::op_greater, client::ast::op_greater_equal, client::ast::op_less, and client::ast::op_less_equal.
|
private |
Definition at line 245 of file expression_def.hpp.
References client::ast::op_negative, client::ast::op_not, client::ast::op_positive, client::ast::unary::operand_, and client::ast::unary::operator_.
|
private |
Definition at line 19 of file expression_def.hpp.
|
staticprivate |
Definition at line 109 of file expression_def.hpp.
|
private |
Definition at line 87 of file expression_def.hpp.
|
private |
Definition at line 47 of file expression.hpp.
|
private |
Definition at line 46 of file expression.hpp.