]> git.lizzy.rs Git - metalua.git/blob - src/samples/metalint/dlua/metalua/compiler.dlua
Merge remote branch 'origin/master'
[metalua.git] / src / samples / metalint / dlua / metalua / compiler.dlua
1 module lexer
2   module lexer
3     save;
4     newstream;
5     extract_long_string;
6     extract_word;
7     extract_short_string;
8     clone;
9     free __index;
10     is_keyword;
11     peek;
12     module sym
13     end;
14     extract;
15     next;
16     restore;
17     module extractors
18     end;
19     module alpha
20     end;
21     sync;
22     takeover;
23     module patterns
24       spaces;
25       number_exponant;
26       word;
27       long_string;
28       short_comment;
29       long_comment;
30       module number_mantissa
31       end;
32       final_short_comment;
33     end;
34     extract_symbol;
35     skip_whitespaces_and_comments;
36     check;
37     extract_number;
38     module token_metatable
39     end;
40     add;
41   end;
42   free _M;
43   _NAME;
44   _PACKAGE;
45 end;
46
47 module gg
48   sequence;
49   _PACKAGE;
50   e;
51   is_parser;
52   with_lexer;
53   optkeyword;
54   onkeyword;
55   make_parser;
56   _NAME;
57   list;
58   expr;
59   free _M;
60   multisequence;
61   parse_error;
62 end;
63
64 module bytecode
65   MAXPARAMS;
66   metalua_compile;
67   dump_file;
68   dump_string;
69   VARARG_ISVARARG;
70   indexupvalue;
71   MAX_INT;
72   free _M;
73   module luaU
74     LUA_TSTRING;
75     DumpBlock;
76     DumpByte;
77     DumpProtos;
78     DumpCode;
79     LUA_TNIL;
80     endianness;
81     LUA_TBOOLEAN;
82     DumpConstants;
83     DumpInt;
84     DumpDebug;
85     DumpLiteral;
86     DumpNumber;
87     from_int;
88     DumpSize;
89     LUA_TNUMBER;
90     DumpHeader;
91     dump;
92     DumpString;
93     ttype;
94     make_setS;
95     DumpUpvalues;
96     DumpLines;
97     DumpLocals;
98     make_setF;
99     LUA_TNONE;
100     DumpFunction;
101     from_double;
102   end;
103   LUA_MAXPARSERLEVEL;
104   VARARG_NEEDSARG;
105   module luaK
106     infix;
107     codenot;
108     NO_JUMP;
109     indexed;
110     checkstack;
111     dischargejpc;
112     fixline;
113     concat;
114     exp2reg;
115     code;
116     code_label;
117     exp2val;
118     sethvalue;
119     jumponcond;
120     prefix;
121     jump;
122     condjump;
123     ttisnumber;
124     exp2anyreg;
125     exp2RK;
126     setsvalue;
127     setnilvalue;
128     _nil;
129     exp2nextreg;
130     getjump;
131     codeAsBx;
132     addk;
133     need_value;
134     freeexp;
135     posfix;
136     nilK;
137     discharge2reg;
138     storevar;
139     setmultret;
140     setlist;
141     codeABx;
142     MAXSTACK;
143     codeABC;
144     freereg;
145     reserveregs;
146     codecomp;
147     dischargevars;
148     hasjumps;
149     setnvalue;
150     module arith_opc
151       sub;
152       mul;
153       not;
154       len;
155       pow;
156       div;
157       mod;
158       add;
159     end;
160     patchlist;
161     constfolding;
162     getlabel;
163     module test_opc
164       module ne
165         cond;
166         opc;
167       end;
168       module eq
169         cond;
170         opc;
171       end;
172       module ge
173         cond;
174         opc;
175       end;
176       module gt
177         cond;
178         opc;
179       end;
180       module le
181         cond;
182         opc;
183       end;
184       module lt
185         cond;
186         opc;
187       end;
188     end;
189     getjumpcontrol;
190     patchtohere;
191     LUA_MULTRET;
192     codearith;
193     boolK;
194     fixjump;
195     ret;
196     nvalue;
197     goiffalse;
198     isnumeral;
199     patchlistaux;
200     discharge2anyreg;
201     setoneret;
202     patchtestreg;
203     removevalues;
204     getcode;
205     _self;
206     goiftrue;
207     numberK;
208     setcallreturns;
209     invertjump;
210     setreturns;
211     stringK;
212   end;
213   module luaP
214     MAXARG_C;
215     SETARG_C;
216     MAXARG_A;
217     SETARG_sBx;
218     MAXARG_sBx;
219     MAXARG_Bx;
220     GETARG_A;
221     GETARG_C;
222     GETARG_sBx;
223     OpModeT;
224     POS_C;
225     GET_OPCODE;
226     SIZE_B;
227     module OpCode
228       OP_GETTABLE;
229       OP_GETGLOBAL;
230       OP_NOT;
231       OP_MOD;
232       OP_LOADK;
233       OP_TAILCALL;
234       OP_TEST;
235       OP_TESTSET;
236       OP_LE;
237       OP_GETUPVAL;
238       OP_CALL;
239       OP_SETTABLE;
240       OP_LT;
241       OP_POW;
242       OP_ADD;
243       OP_EQ;
244       OP_SETLIST;
245       OP_CONCAT;
246       OP_JMP;
247       OP_SETGLOBAL;
248       OP_CLOSE;
249       OP_SETUPVAL;
250       OP_NEWTABLE;
251       OP_DIV;
252       OP_LEN;
253       OP_CLOSURE;
254       OP_SELF;
255       OP_TFORLOOP;
256       OP_MUL;
257       OP_FORPREP;
258       OP_MOVE;
259       OP_LOADBOOL;
260       OP_FORLOOP;
261       OP_SUB;
262       OP_LOADNIL;
263       OP_RETURN;
264       OP_UNM;
265       OP_VARARG;
266     end;
267     MAXARG_B;
268     SETARG_A;
269     testOpMode;
270     SIZE_OP;
271     OpModeK;
272     module ROpCode
273     end;
274     SET_OPCODE;
275     NO_REG;
276     ISK;
277     module opnames
278     end;
279     MAXINDEXRK;
280     getOpMode;
281     SIZE_C;
282     RKASK;
283     OpModesetA;
284     SETARG_Bx;
285     OpModeCrk;
286     OpModeBrk;
287     OpModeBreg;
288     NUM_OPCODES;
289     LFIELDS_PER_FLUSH;
290     DecodeInst;
291     Instruction;
292     SETARG_B;
293     CREATE_ABC;
294     CREATE_ABx;
295     GETARG_B;
296     module OpMode
297     end;
298     POS_A;
299     POS_B;
300     POS_Bx;
301     module opmodes
302     end;
303     SIZE_A;
304     BITRK;
305     SIZE_Bx;
306     GETARG_Bx;
307   end;
308   _NAME;
309   VARARG_HASARG;
310   MAXUPVALUES;
311   _PACKAGE;
312   MAXVARS;
313   module format
314     number_size;
315     instr_size;
316     header;
317     little_endian;
318     int_size;
319     size_t_size;
320     integral;
321   end;
322 end;
323
324 module mlc
325
326   luastring_of_luafile;
327   lexstream_of_luafile;
328   ast_of_luafile;
329   proto_of_luafile;
330   luacstring_of_luafile;
331   function_of_luafile;
332
333   lexstream_of_luastring;
334   ast_of_luastring;
335   proto_of_luastring;
336   luacstring_of_luastring;
337   function_of_luastring;
338
339   ast_of_lexstream;
340   proto_of_lexstream;
341   luacstring_of_lexstream;
342   function_of_lexstream;
343
344   proto_of_ast;
345   luacstring_of_ast;
346   function_of_ast;
347
348   luacstring_of_proto;
349   function_of_proto;
350
351   function_of_luacstring;
352
353   luafile_to_luastring;
354   luafile_to_lexstream;
355   luafile_to_ast;
356   luafile_to_proto;
357   luafile_to_luacstring;
358   luafile_to_function;
359
360   luastring_to_lexstream;
361   luastring_to_ast;
362   luastring_to_proto;
363   luastring_to_luacstring;
364   luastring_to_function;
365
366   lexstream_to_ast;
367   lexstream_to_proto;
368   lexstream_to_luacstring;
369   lexstream_to_function;
370
371   ast_to_proto;
372   ast_to_luacstring;
373   ast_to_function;
374
375   proto_to_luacstring;
376   proto_to_function;
377
378   luacstring_to_function;
379
380   luacstring_of_function;
381   function_to_luacstring;
382
383   convert;
384   module order
385     function;
386     luafile;
387     luacstring;
388     proto;
389     lexstream;
390     luastring;
391     ast;
392   end;
393   __index;
394 end;
395 extension;
396 module mlp
397 end
398
399 module metalua
400   module compiler
401   end
402 end