Diff
Not logged in

Differences From Artifact [4e37845b6ce5021a]:

To Artifact [35d37c6aa0a6531e]:


34 string var; 34 string var; 35 mixin SimpleClass; 35 mixin SimpleClass; 36 } 36 } 37 37 38 class LetExpression : AST 38 class LetExpression : AST 39 { 39 { 40 string var; 40 string var; > 41 string layer; 41 AST init; 42 AST init; 42 AST expr; 43 AST expr; 43 mixin SimpleClass; 44 mixin SimpleClass; 44 } 45 } 45 46 46 class FuncallExpression : AST 47 class FuncallExpression : AST 47 { 48 { ................................................................................................................................................................................ 65 template EasyAST() 66 template EasyAST() 66 { 67 { 67 template genEast(T) 68 template genEast(T) 68 { T genEast(P...)(P ps) { return new T(LexPosition.dummy, ps); } 69 { T genEast(P...)(P ps) { return new T(LexPosition.dummy, ps); } 69 70 70 alias genEast!StrLiteral strl; 71 alias genEast!StrLiteral strl; 71 alias genEast!IntLiteral intl; 72 alias genEast!IntLiteral intl; 72 auto fun(string[] xs, AST ps) { return genEast!FunLiteral(xs,ps); } | 73 auto fun(string[] xs, AST ps) { return genEast!FunLiteral(xs,ps); } // t 73 alias genEast!VarExpression var; 74 alias genEast!VarExpression var; 74 alias genEast!LetExpression let; 75 alias genEast!LetExpression let; 75 alias genEast!FuncallExpression call; 76 alias genEast!FuncallExpression call; 76 } 77 }