1 ! Copyright (C) 2008 Chris Double.
2 ! See http://factorcode.org/license.txt for BSD license.
6 TUPLE: ast-keyword value ;
7 TUPLE: ast-name value ;
8 TUPLE: ast-number value ;
9 TUPLE: ast-string value ;
10 TUPLE: ast-regexp body flags ;
11 TUPLE: ast-cond-expr condition then else ;
12 TUPLE: ast-set lhs rhs ;
13 TUPLE: ast-get value ;
14 TUPLE: ast-mset lhs rhs operator ;
15 TUPLE: ast-binop lhs rhs operator ;
16 TUPLE: ast-unop expr operator ;
17 TUPLE: ast-postop expr operator ;
18 TUPLE: ast-preop expr operator ;
19 TUPLE: ast-getp index expr ;
20 TUPLE: ast-send method expr args ;
21 TUPLE: ast-call expr args ;
23 TUPLE: ast-new name args ;
24 TUPLE: ast-array values ;
25 TUPLE: ast-json bindings ;
26 TUPLE: ast-binding name value ;
27 TUPLE: ast-func fs body ;
28 TUPLE: ast-var name value ;
29 TUPLE: ast-begin statements ;
30 TUPLE: ast-if condition true false ;
31 TUPLE: ast-while condition statements ;
32 TUPLE: ast-do-while statements condition ;
33 TUPLE: ast-for i c u statements ;
34 TUPLE: ast-for-in v e statements ;
35 TUPLE: ast-switch expr statements ;
39 TUPLE: ast-try t e c f ;
41 TUPLE: ast-with expr body ;
42 TUPLE: ast-case c cs ;
43 TUPLE: ast-default cs ;