Spicy
expression.h
1 // Copyright (c) 2020-2021 by the Zeek Project. See LICENSE for details.
2 
3 #pragma once
4 
5 #include <utility>
6 
7 #include <hilti/ast/expression.h>
8 #include <hilti/ast/statement.h>
9 
10 namespace hilti::statement {
11 
14 public:
15  Expression(hilti::Expression e, Meta m = Meta()) : NodeBase({std::move(e)}, std::move(m)) {}
16 
17  const auto& expression() const { return child<::hilti::Expression>(0); }
18 
19  bool operator==(const Expression& other) const { return expression() == other.expression(); }
20 
22  auto isEqual(const Statement& other) const { return node::isEqual(this, other); }
23 
25  auto properties() const { return node::Properties{}; }
26 };
27 
28 } // namespace hilti::statement
Definition: expression.h:13
auto properties() const
Definition: expression.h:25
Definition: meta.h:19
auto isEqual(const Statement &other) const
Definition: expression.h:22
Definition: statement.h:14
std::map< std::string, node::detail::PropertyValue > Properties
Definition: node.h:97
Definition: node.h:359