Spicy
ast.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/attribute.h>
8 #include <hilti/ast/ctor.h>
9 #include <hilti/ast/declaration.h>
10 #include <hilti/ast/expression.h>
11 #include <hilti/ast/function.h>
12 #include <hilti/ast/id.h>
13 #include <hilti/ast/module.h>
14 #include <hilti/ast/node.h>
15 #include <hilti/ast/operator.h>
16 #include <hilti/ast/scope.h>
17 #include <hilti/ast/statement.h>
18 #include <hilti/ast/type.h>
19 
20 namespace hilti {
21 
23 template<typename T, typename... Params>
24 static Node to_node(Params&&... params) {
25  // Must come after all other includes so that all the to_node() are available.
26  return to_node(T(std::forward<Params>(params)...));
27 }
28 } // namespace hilti