code cleanup, template tweak
[charm.git] / src / langs / charj / src / charj / translator / Charj.stg
1 group Charj;
2
3 charjSource_ci(pd, ids, tds) ::= 
4 //<pd>
5 //<ids>
6 <<
7 <tds>
8 >>
9
10
11 charjSource_h(pd, ids, tds) ::= 
12 <<
13 /***********
14  * WARNING *
15  ***********
16  * This is a machine generated header file.
17  * It is not meant to be edited by hand and can be overwritten by charjc.
18  * Do not edit this file unless you know what you're doing.
19  */
20
21 <pd>
22 <ids>
23 <tds>
24 >>
25
26
27 charjSource_cc(pd, ids, tds) ::= 
28 <<
29 <pd>
30 <ids>
31 <tds>
32 >>
33
34
35 classExtends_ci(type) ::= "<type>"
36
37
38 classExtends_cc_h(type) ::= "#include \<<type>.h\>"
39
40
41 interfaceExtends(ts) ::=
42 <<
43 : public <ts; separator=", public ">
44 >>
45
46
47 classDeclaration_ci(mod, ident, gen, ext, impl, ctls) ::=
48 <<
49 module <ident> {
50     extern module <ext>;
51     chare <ident> <gen>: <ext> {
52         <ctls>
53     }
54 }
55
56 >>
57
58
59 classDeclaration_h(mod, ident, gen, ext, impl, ctls) ::=
60 <<
61
62 #include "<ident>.decl.h"
63 <ext>
64 class <ident> <gen>: public CBase_<ident> <impl> {
65     <ctls>
66 };
67
68
69 >>
70
71 classDeclaration_cc(mod, ident, gen, ext, impl, ctls) ::=
72 <<
73
74
75 #include "<ident>.decl.h"
76 <ext>
77 class <ident> <gen>: public CBase_<ident> <impl> {
78     <ctls>
79 };
80 #include "<ident>.def.h"
81
82
83 >>
84
85
86 classTopLevelScope(classScopeDeclarations) ::= 
87 <<
88 <classScopeDeclarations; separator="\n">
89 >>
90
91
92 funcMethodDecl_h(modl, gtpl, ty, id, fpl, adl, tc, block) ::=
93 <<
94 <modl>: <ty> <gtpl> <id><fpl> <adl> <tc>;
95 >>
96
97
98 funcMethodDecl_ci(modl, gtpl, ty, id, fpl, adl, tc, block) ::=
99 <<
100 entry <ty> <gtpl> <id><fpl> <adl> <tc>;
101 >>
102
103
104 funcMethodDecl_cc(modl, gtpl, ty, id, fpl, adl, tc, block) ::=
105 <<
106 <modl>: <ty> <gtpl> <id><fpl> <adl> <tc> <block>
107 >>
108
109
110 voidMethodDecl_ci(modl, gtpl, id, fpl, tc, block) ::=
111 <<
112 entry void<gtpl> <id><fpl> <tc>;
113 >>
114
115
116 voidMethodDecl_h(modl, gtpl, id, fpl, tc, block) ::=
117 <<
118 <modl>: void<gtpl> <id><fpl> <tc>;
119 >>
120
121
122 voidMethodDecl_cc(modl, gtpl, id, fpl, tc, block) ::=
123 <<
124 <modl>: void<gtpl> <id><fpl> <tc> <block>
125 >>
126
127
128 ctorDecl_ci(modl, gtpl, id, fpl, tc, block) ::=
129 <<
130 entry<gtpl> <id><fpl> <tc>;
131 >>
132
133
134 ctorDecl_h(modl, gtpl, id, fpl, tc, block) ::=
135 <<
136 <modl>:<gtpl> <id><fpl> <tc>;
137 >>
138
139
140 ctorDecl_cc(modl, gtpl, id, fpl, tc, block) ::=
141 <<
142 <modl>:<gtpl> <id><fpl> <tc> <block>
143 >>
144
145
146 block_cc(bsl) ::=
147 <<
148 {
149     <bsl; separator="\n">
150 }
151 >>
152
153
154 embed_cc(str, blk) ::=
155 <<
156 // begin embedded block: <str>
157 <blk>
158 // end embedded block: <str>
159 >>