OpenClonk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
C4AulCompiler.h
Go to the documentation of this file.
1 /*
2 * OpenClonk, http://www.openclonk.org
3 *
4 * Copyright (c) 2001-2009, RedWolf Design GmbH, http://www.clonk.de/
5 * Copyright (c) 2009-2016, The OpenClonk Team and contributors
6 *
7 * Distributed under the terms of the ISC license; see accompanying file
8 * "COPYING" for details.
9 *
10 * "Clonk" is a registered trademark of Matthes Bender, used with permission.
11 * See accompanying file "TRADEMARK" for details.
12 *
13 * To redistribute this file separately, substitute the full license texts
14 * for the above references.
15 */
16 
17 #ifndef INC_C4AulCompiler
18 #define INC_C4AulCompiler
19 
20 #include "script/C4AulAST.h"
21 
23 {
24 public:
25  static void Compile(C4AulScriptFunc *out, const ::aul::ast::Function *f);
26 
27  static void Preparse(C4ScriptHost *out, C4ScriptHost *source, const ::aul::ast::Script *s);
28  static void Compile(C4ScriptHost *out, C4ScriptHost *source, const ::aul::ast::Script *s);
29 
30 private:
31  class ConstexprEvaluator;
32  class ConstantResolver;
33  class PreparseAstVisitor;
34  class CodegenAstVisitor;
35 };
36 
37 #endif
static void Preparse(C4ScriptHost *out, C4ScriptHost *source, const ::aul::ast::Script *s)
static void Compile(C4AulScriptFunc *out, const ::aul::ast::Function *f)
#define s