24#include <boost/variant.hpp>
29namespace func_sketch::parser {
55 boost::recursive_wrapper<ParsedFunctionCallExpression>,
56 boost::recursive_wrapper<ParsedUnaryExpression>,
57 boost::recursive_wrapper<ParsedBinaryExpression>>;
104struct fmt::formatter<func_sketch::parser::ParsedLiteral>
105 : fmt::formatter<string_view> {
114 format_context& context)
const -> format_context::iterator;
122struct fmt::formatter<func_sketch::parser::ParsedIdentifier>
123 : fmt::formatter<string_view> {
132 format_context& context)
const -> format_context::iterator;
140struct fmt::formatter<func_sketch::parser::ParsedExpression>
141 : fmt::formatter<string_view> {
150 format_context& context)
const -> format_context::iterator;
158struct fmt::formatter<func_sketch::parser::ParsedFunctionCallExpression>
159 : fmt::formatter<string_view> {
168 format_context& context)
const -> format_context::iterator;
176struct fmt::formatter<func_sketch::parser::ParsedUnaryExpression>
177 : fmt::formatter<string_view> {
186 format_context& context)
const -> format_context::iterator;
194struct fmt::formatter<func_sketch::parser::ParsedBinaryExpression>
195 : fmt::formatter<string_view> {
204 format_context& context)
const -> format_context::iterator;
Definitions of common types.
std::variant< Integer, Real, Complex > Number
Type of numbers.
boost::variant< ParsedLiteral, ParsedIdentifier, boost::recursive_wrapper< ParsedFunctionCallExpression >, boost::recursive_wrapper< ParsedUnaryExpression >, boost::recursive_wrapper< ParsedBinaryExpression > > ParsedExpression
Variant of parsed expressions.
Struct of parsed binary expressions.
ParsedExpression left_operand
Left operand.
std::string operator_str
Operator.
ParsedExpression right_operand
Right operand.
Struct of parsed function call expressions.
ParsedIdentifier function_name
Function name.
std::vector< ParsedExpression > arguments
Arguments.
Struct of parsed identifiers.
Struct of parsed literals.
Struct of parsed unary expressions.
std::string operator_str
Operator.
ParsedExpression operand
Operand.