Cockatrice 2025-11-30-Development-2.11.0-beta.38
A cross-platform virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
expression.h
Go to the documentation of this file.
1#ifndef EXPRESSION_H
2#define EXPRESSION_H
3
4#include <QMap>
5#include <QString>
6#include <functional>
7
8namespace peg
9{
10template <typename Annotation> struct AstBase;
11struct EmptyType;
13} // namespace peg
14
16{
17public:
18 double value;
19
20 explicit Expression(double initial = 0);
21 double parse(const QString &expr);
22
23private:
24 double eval(const peg::Ast &ast);
25 QMap<QString, std::function<double(double)>> fns;
26};
27
28#endif
double eval(const peg::Ast &ast)
Definition expression.cpp:33
double value
Definition expression.h:18
QMap< QString, std::function< double(double)> > fns
Definition expression.h:25
double parse(const QString &expr)
Definition expression.cpp:77
Expression(double initial=0)
Definition expression.cpp:14
Definition filter_string.h:27
AstBase< EmptyType > Ast
Definition filter_string.h:30
Definition peglib.h:4256
Definition peglib.h:4389