|
LMCAS
Lamina Computer Algebra System
|
#include </home/runner/work/docs/docs/LMCAS/src/internal/expr_parser.hpp>
Public 成员函数 | |
| ExprParser (std::string source) | |
| ExprResult | parse () |
静态 Private 成员函数 | |
| static bool | is_ident_continue (unsigned char c) noexcept |
| static bool | is_ident_start (unsigned char c) noexcept |
Private 属性 | |
| std::size_t | pos_ = 0 |
| std::string | source_ |
在文件 expr_parser.hpp 第 14 行定义.
|
inlineexplicit |
在文件 expr_parser.hpp 第 16 行定义.
引用了 source_.
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_functions.cpp 第 61 行定义.
引用了 LMCAS::expr_detail::expr_common::expression_failure(), LMCAS::InternalInvariant, LMCAS::expr_detail::kParseOperation, LMCAS::ResourceLimit , 以及 LMCAS::Result< ExprPtr >::success().
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_functions.cpp 第 161 行定义.
引用了 LMCAS::clamp().
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_functions.cpp 第 165 行定义.
引用了 ExprParser(), apply_atan2(), apply_clamp(), apply_integral(), apply_limit(), apply_log(), apply_rootof(), fail(), function_node(), LMCAS::FunctionNode::Max, LMCAS::FunctionNode::Min, LMCAS::name , 以及 uninterpreted_function().
被这些函数引用 parse_call().
|
private |
在文件 expr_parser_functions.cpp 第 75 行定义.
引用了 LMCAS::expr_detail::expr_common::expression_failure(), fail(), LMCAS::InternalInvariant, LMCAS::expr_detail::kParseOperation, LMCAS::detail::make_expression_ptr(), LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::ResourceLimit, LMCAS::Result< ExprPtr >::success() , 以及 LMCAS::variable.
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_functions.cpp 第 101 行定义.
引用了 LMCAS::Both, LMCAS::direction, fail(), LMCAS::FromAbove, LMCAS::FromBelow, LMCAS::detail::make_expression_ptr(), LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::Result< ExprPtr >::success() , 以及 LMCAS::variable.
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_functions.cpp 第 47 行定义.
引用了 LMCAS::expr_detail::expr_common::expression_failure(), LMCAS::InternalInvariant, LMCAS::expr_detail::kParseOperation, LMCAS::ResourceLimit , 以及 LMCAS::Result< ExprPtr >::success().
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_functions.cpp 第 130 行定义.
引用了 fail(), LMCAS::Result< ExprPtr >::failure(), LMCAS::make_rootof_checked(), LMCAS::detail::node(), LMCAS::rational(), LMCAS::Result< ExprPtr >::success() , 以及 LMCAS::variable.
被这些函数引用 apply_function().
|
privatenoexcept |
在文件 expr_parsing.cpp 第 28 行定义.
被这些函数引用 parse(), parse_approx_literal(), peek() , 以及 skip_space().
|
private |
在文件 expr_parsing.cpp 第 72 行定义.
引用了 LMCAS::expr_detail::expr_common::expression_failure(), LMCAS::expr_detail::kParseOperation, LMCAS::ParseError , 以及 pos_.
被这些函数引用 apply_function(), apply_integral(), apply_limit(), apply_rootof(), parse(), parse_approx_literal(), parse_call(), parse_identifier_or_call(), parse_interval_literal(), parse_multiplicative(), parse_number(), parse_power(), parse_primary() , 以及 parse_set_literal().
|
private |
在文件 expr_parser_construction.cpp 第 60 行定义.
引用了 LMCAS::element, LMCAS::detail::make_node() , 以及 LMCAS::detail::node().
被这些函数引用 parse_set_literal().
|
private |
在文件 expr_parser_construction.cpp 第 109 行定义.
引用了 LMCAS::detail::make_node(), LMCAS::name , 以及 LMCAS::detail::node().
被这些函数引用 apply_function().
|
private |
在文件 expr_parser_construction.cpp 第 77 行定义.
引用了 LMCAS::lower, LMCAS::lower_closed, LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::upper , 以及 LMCAS::upper_closed.
被这些函数引用 parse_interval_literal() , 以及 parse_primary().
|
staticprivatenoexcept |
在文件 expr_parsing.cpp 第 82 行定义.
引用了 LMCAS::c.
被这些函数引用 match_keyword() , 以及 parse_identifier().
|
staticprivatenoexcept |
在文件 expr_parsing.cpp 第 78 行定义.
引用了 LMCAS::c.
被这些函数引用 parse_identifier() , 以及 parse_primary().
|
private |
在文件 expr_parser_construction.cpp 第 47 行定义.
引用了 LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::LogicalNode::Not, LMCAS::op , 以及 LMCAS::rhs.
被这些函数引用 parse_logical_and(), parse_logical_not() , 以及 parse_logical_or().
|
private |
在文件 expr_parsing.cpp 第 34 行定义.
引用了 LMCAS::c, peek(), pos_ , 以及 skip_space().
被这些函数引用 parse_additive(), parse_approx_literal(), parse_call(), parse_identifier_or_call(), parse_interval_literal(), parse_logical_not(), parse_multiplicative(), parse_power(), parse_primary(), parse_relational(), parse_set_literal() , 以及 parse_unary().
|
private |
在文件 expr_parsing.cpp 第 54 行定义.
引用了 is_ident_continue(), match_text(), peek(), pos_ , 以及 skip_space().
被这些函数引用 parse_logical_and(), parse_logical_not(), parse_logical_or() , 以及 parse_membership().
|
private |
在文件 expr_parsing.cpp 第 41 行定义.
引用了 pos_, skip_space() , 以及 source_.
被这些函数引用 match_keyword(), parse_equality(), parse_multiplicative(), parse_power() , 以及 parse_relational().
|
private |
在文件 expr_parser_construction.cpp 第 91 行定义.
引用了 LMCAS::element, LMCAS::detail::make_node(), LMCAS::negated, LMCAS::detail::node(), LMCAS::LogicalNode::Not , 以及 LMCAS::set.
被这些函数引用 parse_membership().
在文件 expr_parsing.cpp 第 14 行定义.
引用了 eof(), fail(), parse_logical_or(), peek() , 以及 skip_space().
在文件 expr_parsing.cpp 第 181 行定义.
引用了 LMCAS::add(), match(), parse_multiplicative(), LMCAS::rhs , 以及 LMCAS::sub().
被这些函数引用 parse_relational().
在文件 expr_parsing.cpp 第 358 行定义.
引用了 LMCAS::approx_real(), eof(), fail(), match(), LMCAS::detail::parse_finite_decimal(), peek(), pos_, skip_space(), source_ , 以及 LMCAS::value.
被这些函数引用 parse_call().
|
private |
在文件 expr_parsing.cpp 第 370 行定义.
引用了 apply_function(), fail(), match(), LMCAS::name, parse_approx_literal() , 以及 parse_logical_or().
被这些函数引用 parse_identifier_or_call().
在文件 expr_parsing.cpp 第 139 行定义.
引用了 LMCAS::EQ, match_text(), LMCAS::NEQ, LMCAS::op, parse_relational(), relational() , 以及 LMCAS::rhs.
被这些函数引用 parse_membership().
|
private |
在文件 expr_parsing.cpp 第 349 行定义.
引用了 is_ident_continue(), is_ident_start(), peek(), pos_, skip_space() , 以及 source_.
被这些函数引用 parse_identifier_or_call().
在文件 expr_parsing.cpp 第 393 行定义.
引用了 LMCAS::e(), fail(), LMCAS::imaginary_unit(), LMCAS::detail::is_imaginary_unit_name(), match(), LMCAS::name, parse_call(), parse_identifier(), LMCAS::phi(), LMCAS::pi(), skip_space() , 以及 LMCAS::sym().
被这些函数引用 parse_primary().
|
private |
在文件 expr_parsing.cpp 第 288 行定义.
引用了 fail(), interval(), LMCAS::lower, LMCAS::lower_closed, match(), parse_logical_or(), LMCAS::upper, LMCAS::upper_closed , 以及 LMCAS::Result< T >::value().
被这些函数引用 parse_primary().
在文件 expr_parsing.cpp 第 98 行定义.
引用了 LMCAS::LogicalNode::And, logical(), match_keyword(), parse_logical_not() , 以及 LMCAS::rhs.
被这些函数引用 parse_logical_or().
在文件 expr_parsing.cpp 第 110 行定义.
引用了 logical(), match(), match_keyword(), LMCAS::LogicalNode::Not, parse_logical_not() , 以及 parse_membership().
被这些函数引用 parse_logical_and() , 以及 parse_logical_not().
在文件 expr_parsing.cpp 第 86 行定义.
引用了 logical(), match_keyword(), LMCAS::LogicalNode::Or, parse_logical_and() , 以及 LMCAS::rhs.
被这些函数引用 parse(), parse_call(), parse_interval_literal(), parse_primary() , 以及 parse_set_literal().
在文件 expr_parsing.cpp 第 119 行定义.
引用了 match_keyword(), membership(), parse_equality(), pos_ , 以及 LMCAS::rhs.
被这些函数引用 parse_logical_not().
在文件 expr_parsing.cpp 第 200 行定义.
引用了 LMCAS::div(), fail(), match(), match_text(), LMCAS::mul(), parse_power() , 以及 LMCAS::rhs.
被这些函数引用 parse_additive().
在文件 expr_parsing.cpp 第 305 行定义.
引用了 LMCAS::expr_detail::expr_common::expression_failure(), fail(), LMCAS::InternalInvariant, LMCAS::expr_detail::kParseOperation, LMCAS::ParseError, peek(), pos_, LMCAS::rational(), LMCAS::ResourceLimit, skip_space() , 以及 source_.
被这些函数引用 parse_primary().
在文件 expr_parsing.cpp 第 221 行定义.
引用了 LMCAS::exponent, fail(), match(), match_text(), parse_power(), parse_unary() , 以及 LMCAS::pow().
被这些函数引用 parse_multiplicative() , 以及 parse_power().
在文件 expr_parsing.cpp 第 245 行定义.
引用了 fail(), interval(), is_ident_start(), match(), parse_identifier_or_call(), parse_interval_literal(), parse_logical_or(), parse_number(), parse_set_literal(), peek(), LMCAS::rhs , 以及 skip_space().
被这些函数引用 parse_unary().
在文件 expr_parsing.cpp 第 158 行定义.
引用了 LMCAS::GEQ, LMCAS::GT, LMCAS::LEQ, LMCAS::LT, match(), match_text(), LMCAS::op, parse_additive(), relational() , 以及 LMCAS::rhs.
被这些函数引用 parse_equality().
在文件 expr_parsing.cpp 第 274 行定义.
引用了 LMCAS::element, fail(), finite_set(), match() , 以及 parse_logical_or().
被这些函数引用 parse_primary().
在文件 expr_parsing.cpp 第 235 行定义.
引用了 match(), LMCAS::neg(), parse_primary() , 以及 parse_unary().
被这些函数引用 parse_power() , 以及 parse_unary().
|
privatenoexcept |
在文件 expr_parsing.cpp 第 30 行定义.
被这些函数引用 match(), match_keyword(), parse(), parse_approx_literal(), parse_identifier(), parse_number() , 以及 parse_primary().
|
private |
在文件 expr_parser_construction.cpp 第 35 行定义.
引用了 LMCAS::detail::make_node(), LMCAS::detail::node(), LMCAS::op , 以及 LMCAS::rhs.
被这些函数引用 parse_equality() , 以及 parse_relational().
|
privatenoexcept |
在文件 expr_parsing.cpp 第 65 行定义.
被这些函数引用 match(), match_keyword(), match_text(), parse(), parse_approx_literal(), parse_identifier(), parse_identifier_or_call(), parse_number() , 以及 parse_primary().
|
private |
在文件 expr_parser_functions.cpp 第 208 行定义.
引用了 LMCAS::expr_detail::expr_common::expression_failure(), LMCAS::InternalInvariant, LMCAS::InvalidArgument, LMCAS::expr_detail::kParseOperation, LMCAS::detail::make_expression_ptr(), LMCAS::detail::make_node(), LMCAS::name, LMCAS::detail::node(), LMCAS::ResourceLimit , 以及 LMCAS::Result< ExprPtr >::success().
被这些函数引用 apply_function().
|
private |
在文件 expr_parser.hpp 第 21 行定义.
被这些函数引用 eof(), fail(), match(), match_keyword(), match_text(), parse_approx_literal(), parse_identifier(), parse_membership(), parse_number(), peek() , 以及 skip_space().
|
private |
在文件 expr_parser.hpp 第 20 行定义.
被这些函数引用 ExprParser(), eof(), match_text(), parse_approx_literal(), parse_identifier(), parse_number(), peek() , 以及 skip_space().