Chrysalis - Pattern
Loading...
Searching...
No Matches
ExpressionArgument.h
Go to the documentation of this file.
1#ifndef CHRYSALIS_EXPRESSIONARGUMENT_H
2#define CHRYSALIS_EXPRESSIONARGUMENT_H
3
4#include "Expression.h"
7
11namespace Chrysalis {
14 public:
15 explicit ExpressionArgument(const ExpressionsContainer* expressions, args::name&& name);
16 protected:
17 std::expected<double, Error> calculate() const override;
18 private:
19 const ExpressionsContainer* expressions_;
21 args::name name_;
22 };
23 namespace args {
25 }
27}
29
30#endif //CHRYSALIS_EXPRESSIONARGUMENT_H
std::expected< double, Error > calculate() const override
Definition ExpressionArgument.cpp:8
ExpressionArgument(const ExpressionsContainer *expressions, args::name &&name)
Definition ExpressionArgument.cpp:5
Definition Expression.h:13
Definition Argument.h:26
std::unique_ptr< Argument< std::string > > name
Definition Argument.h:27
Expression expr
Definition ExpressionArgument.h:24
Definition Argument.h:9
ScopedNamedElementsContainer< Expression > ExpressionsContainer
Definition Expression.h:23
#define PROVIDE_SERIALIZATION_ACCESS(Class)
Definition serialization.h:29
#define SERIALIZE_DERIVED_CONSTRUCTION(Class, Base,...)
Definition serialization.h:124