15 #ifndef OPENSCENARIO_INTERPRETER__EXPRESSION_HPP_
16 #define OPENSCENARIO_INTERPRETER__EXPRESSION_HPP_
30 throw SemanticError(
"No viable evaluation for class ",
makeTypename(
type()));
35 virtual auto write(std::ostream & os)
const -> std::ostream &
auto makeTypename(Ts &&... xs)
Definition: demangle.hpp:30
Definition: expression.hpp:23
virtual auto evaluate(const Pointer< Expression > &) -> Pointer< Expression >
Definition: expression.hpp:28
virtual auto description() const -> std::string
Definition: expression.hpp:26
virtual auto type() const noexcept -> const std::type_info &
Definition: expression.hpp:33
virtual bool accomplished()
Definition: expression.hpp:24
virtual auto write(std::ostream &os) const -> std::ostream &
Definition: expression.hpp:35
Definition: if_has_stream_output_operator.hpp:28