Enable default closure in syntax
[nit.git] / src / parser / parser_nodes.nit
1 # Raw AST node hierarchy.
2 # This file was generated by SableCC (http://www.sablecc.org/).
3 package parser_nodes
4
5 # Root of the AST hierarchy
6 abstract class PNode
7 end
8
9 # Ancestor of all tokens
10 abstract class Token
11 special PNode
12 end
13
14 # Ancestor of all productions
15 abstract class Prod
16 special PNode
17 end
18 class TEol
19 special Token
20 end
21 class TComment
22 special Token
23 end
24 class TKwpackage
25 special Token
26 end
27 class TKwimport
28 special Token
29 end
30 class TKwclass
31 special Token
32 end
33 class TKwabstract
34 special Token
35 end
36 class TKwinterface
37 special Token
38 end
39 class TKwuniversal
40 special Token
41 end
42 class TKwspecial
43 special Token
44 end
45 class TKwend
46 special Token
47 end
48 class TKwmeth
49 special Token
50 end
51 class TKwtype
52 special Token
53 end
54 class TKwattr
55 special Token
56 end
57 class TKwinit
58 special Token
59 end
60 class TKwredef
61 special Token
62 end
63 class TKwis
64 special Token
65 end
66 class TKwdo
67 special Token
68 end
69 class TKwreadable
70 special Token
71 end
72 class TKwwritable
73 special Token
74 end
75 class TKwvar
76 special Token
77 end
78 class TKwintern
79 special Token
80 end
81 class TKwextern
82 special Token
83 end
84 class TKwprotected
85 special Token
86 end
87 class TKwprivate
88 special Token
89 end
90 class TKwintrude
91 special Token
92 end
93 class TKwif
94 special Token
95 end
96 class TKwthen
97 special Token
98 end
99 class TKwelse
100 special Token
101 end
102 class TKwwhile
103 special Token
104 end
105 class TKwfor
106 special Token
107 end
108 class TKwin
109 special Token
110 end
111 class TKwand
112 special Token
113 end
114 class TKwor
115 special Token
116 end
117 class TKwnot
118 special Token
119 end
120 class TKwreturn
121 special Token
122 end
123 class TKwcontinue
124 special Token
125 end
126 class TKwbreak
127 special Token
128 end
129 class TKwabort
130 special Token
131 end
132 class TKwassert
133 special Token
134 end
135 class TKwnew
136 special Token
137 end
138 class TKwisa
139 special Token
140 end
141 class TKwonce
142 special Token
143 end
144 class TKwsuper
145 special Token
146 end
147 class TKwself
148 special Token
149 end
150 class TKwtrue
151 special Token
152 end
153 class TKwfalse
154 special Token
155 end
156 class TKwnull
157 special Token
158 end
159 class TKwas
160 special Token
161 end
162 class TKwwith
163 special Token
164 end
165 class TOpar
166 special Token
167 end
168 class TCpar
169 special Token
170 end
171 class TObra
172 special Token
173 end
174 class TCbra
175 special Token
176 end
177 class TComma
178 special Token
179 end
180 class TColumn
181 special Token
182 end
183 class TQuad
184 special Token
185 end
186 class TAssign
187 special Token
188 end
189 class TPluseq
190 special Token
191 end
192 class TMinuseq
193 special Token
194 end
195 class TDotdotdot
196 special Token
197 end
198 class TDotdot
199 special Token
200 end
201 class TDot
202 special Token
203 end
204 class TPlus
205 special Token
206 end
207 class TMinus
208 special Token
209 end
210 class TStar
211 special Token
212 end
213 class TSlash
214 special Token
215 end
216 class TPercent
217 special Token
218 end
219 class TEq
220 special Token
221 end
222 class TNe
223 special Token
224 end
225 class TLt
226 special Token
227 end
228 class TLe
229 special Token
230 end
231 class TGt
232 special Token
233 end
234 class TGe
235 special Token
236 end
237 class TStarship
238 special Token
239 end
240 class TClassid
241 special Token
242 end
243 class TId
244 special Token
245 end
246 class TAttrid
247 special Token
248 end
249 class TNumber
250 special Token
251 end
252 class TFloat
253 special Token
254 end
255 class TChar
256 special Token
257 end
258 class TString
259 special Token
260 end
261 class TStartString
262 special Token
263 end
264 class TMidString
265 special Token
266 end
267 class TEndString
268 special Token
269 end
270 class EOF
271 special Token
272 private init noinit do end
273 end
274 class PError
275 special EOF
276 private init noinit do end
277 end
278
279 class PModule special Prod end
280 class PPackagedecl special Prod end
281 class PImport special Prod end
282 class PVisibility special Prod end
283 class PClassdef special Prod end
284 class PClasskind special Prod end
285 class PFormaldef special Prod end
286 class PSuperclass special Prod end
287 class PPropdef special Prod
288 readable writable attr _n_doc: PDoc = null
289 end
290 class PAble special Prod
291 readable writable attr _n_kwredef: TKwredef = null
292 end
293 class PMethid special Prod end
294 class PSignature special Prod end
295 class PParam
296 special Prod
297 readable writable attr _n_id: TId = null
298 readable writable attr _n_type: PType = null
299 end
300 class PClosureDecl special Prod end
301 class PType special Prod end
302 class PExpr special Prod end
303 class PAssignOp special Prod end
304 class PClosureDef special Prod end
305 class PQualified special Prod end
306 class PDoc special Prod end
307
308 class AModule
309 special PModule
310 readable writable attr _n_packagedecl: PPackagedecl = null
311 readable writable attr _n_imports: List[PImport] = null
312 readable writable attr _n_classdefs: List[PClassdef] = null
313 end
314 class APackagedecl
315 special PPackagedecl
316 readable writable attr _n_doc: PDoc = null
317 readable writable attr _n_kwpackage: TKwpackage = null
318 readable writable attr _n_id: TId = null
319 end
320 class AImport
321 special PImport
322 readable writable attr _n_visibility: PVisibility = null
323 readable writable attr _n_kwimport: TKwimport = null
324 readable writable attr _n_id: TId = null
325 end
326 class ANoImport
327 special PImport
328 readable writable attr _n_visibility: PVisibility = null
329 readable writable attr _n_kwimport: TKwimport = null
330 readable writable attr _n_kwend: TKwend = null
331 end
332 class APublicVisibility
333 special PVisibility
334 end
335 class APrivateVisibility
336 special PVisibility
337 readable writable attr _n_kwprivate: TKwprivate = null
338 end
339 class AProtectedVisibility
340 special PVisibility
341 readable writable attr _n_kwprotected: TKwprotected = null
342 end
343 class AIntrudeVisibility
344 special PVisibility
345 readable writable attr _n_kwintrude: TKwintrude = null
346 end
347 class AClassdef
348 special PClassdef
349 readable writable attr _n_doc: PDoc = null
350 readable writable attr _n_kwredef: TKwredef = null
351 readable writable attr _n_visibility: PVisibility = null
352 readable writable attr _n_classkind: PClasskind = null
353 readable writable attr _n_id: TClassid = null
354 readable writable attr _n_formaldefs: List[PFormaldef] = null
355 readable writable attr _n_superclasses: List[PSuperclass] = null
356 readable writable attr _n_propdefs: List[PPropdef] = null
357 end
358 class ATopClassdef
359 special PClassdef
360 readable writable attr _n_propdefs: List[PPropdef] = null
361 end
362 class AMainClassdef
363 special PClassdef
364 readable writable attr _n_propdefs: List[PPropdef] = null
365 end
366 class AConcreteClasskind
367 special PClasskind
368 readable writable attr _n_kwclass: TKwclass = null
369 end
370 class AAbstractClasskind
371 special PClasskind
372 readable writable attr _n_kwabstract: TKwabstract = null
373 readable writable attr _n_kwclass: TKwclass = null
374 end
375 class AInterfaceClasskind
376 special PClasskind
377 readable writable attr _n_kwinterface: TKwinterface = null
378 end
379 class AUniversalClasskind
380 special PClasskind
381 readable writable attr _n_kwuniversal: TKwuniversal = null
382 end
383 class AFormaldef
384 special PFormaldef
385 readable writable attr _n_id: TClassid = null
386 readable writable attr _n_type: PType = null
387 end
388 class ASuperclass
389 special PSuperclass
390 readable writable attr _n_kwspecial: TKwspecial = null
391 readable writable attr _n_type: PType = null
392 end
393 class AAttrPropdef
394 special PPropdef
395 readable writable attr _n_kwredef: TKwredef = null
396 readable writable attr _n_visibility: PVisibility = null
397 readable writable attr _n_kwattr: TKwattr = null
398 readable writable attr _n_id: TAttrid = null
399 readable writable attr _n_type: PType = null
400 readable writable attr _n_readable: PAble = null
401 readable writable attr _n_writable: PAble = null
402 readable writable attr _n_expr: PExpr = null
403 end
404 class AMethPropdef
405 special PPropdef
406 readable writable attr _n_kwredef: TKwredef = null
407 readable writable attr _n_visibility: PVisibility = null
408 readable writable attr _n_methid: PMethid = null
409 readable writable attr _n_signature: PSignature = null
410 end
411 class ADeferredMethPropdef
412 special AMethPropdef
413 readable writable attr _n_kwmeth: TKwmeth = null
414 end
415 class AInternMethPropdef
416 special AMethPropdef
417 readable writable attr _n_kwmeth: TKwmeth = null
418 end
419 class AExternMethPropdef
420 special AMethPropdef
421 readable writable attr _n_kwmeth: TKwmeth = null
422 readable writable attr _n_extern: TString = null
423 end
424 class AConcreteMethPropdef
425 special AMethPropdef
426 readable writable attr _n_kwmeth: TKwmeth = null
427 readable writable attr _n_block: PExpr = null
428 end
429 class AConcreteInitPropdef
430 special AConcreteMethPropdef
431 readable writable attr _n_kwinit: TKwinit = null
432 end
433 class AMainMethPropdef
434 special AConcreteMethPropdef
435 end
436 class ATypePropdef
437 special PPropdef
438 readable writable attr _n_kwredef: TKwredef = null
439 readable writable attr _n_visibility: PVisibility = null
440 readable writable attr _n_kwtype: TKwtype = null
441 readable writable attr _n_id: TClassid = null
442 readable writable attr _n_type: PType = null
443 end
444 class AReadAble
445 special PAble
446 readable writable attr _n_kwreadable: TKwreadable = null
447 end
448 class AWriteAble
449 special PAble
450 readable writable attr _n_kwwritable: TKwwritable = null
451 end
452 class AIdMethid
453 special PMethid
454 readable writable attr _n_id: TId = null
455 end
456 class APlusMethid
457 special PMethid
458 readable writable attr _n_plus: TPlus = null
459 end
460 class AMinusMethid
461 special PMethid
462 readable writable attr _n_minus: TMinus = null
463 end
464 class AStarMethid
465 special PMethid
466 readable writable attr _n_star: TStar = null
467 end
468 class ASlashMethid
469 special PMethid
470 readable writable attr _n_slash: TSlash = null
471 end
472 class APercentMethid
473 special PMethid
474 readable writable attr _n_percent: TPercent = null
475 end
476 class AEqMethid
477 special PMethid
478 readable writable attr _n_eq: TEq = null
479 end
480 class ANeMethid
481 special PMethid
482 readable writable attr _n_ne: TNe = null
483 end
484 class ALeMethid
485 special PMethid
486 readable writable attr _n_le: TLe = null
487 end
488 class AGeMethid
489 special PMethid
490 readable writable attr _n_ge: TGe = null
491 end
492 class ALtMethid
493 special PMethid
494 readable writable attr _n_lt: TLt = null
495 end
496 class AGtMethid
497 special PMethid
498 readable writable attr _n_gt: TGt = null
499 end
500 class ABraMethid
501 special PMethid
502 readable writable attr _n_obra: TObra = null
503 readable writable attr _n_cbra: TCbra = null
504 end
505 class AStarshipMethid
506 special PMethid
507 readable writable attr _n_starship: TStarship = null
508 end
509 class AAssignMethid
510 special PMethid
511 readable writable attr _n_id: TId = null
512 readable writable attr _n_assign: TAssign = null
513 end
514 class ABraassignMethid
515 special PMethid
516 readable writable attr _n_obra: TObra = null
517 readable writable attr _n_cbra: TCbra = null
518 readable writable attr _n_assign: TAssign = null
519 end
520 class ASignature
521 special PSignature
522 readable writable attr _n_params: List[PParam] = null
523 readable writable attr _n_type: PType = null
524 readable writable attr _n_closure_decls: List[PClosureDecl] = null
525 end
526 class AParam
527 special PParam
528 readable writable attr _n_dotdotdot: TDotdotdot = null
529 end
530 class AClosureDecl
531 special PClosureDecl
532 readable writable attr _n_kwwith: TKwwith = null
533 readable writable attr _n_kwbreak: TKwbreak = null
534 readable writable attr _n_id: TId = null
535 readable writable attr _n_signature: PSignature = null
536 readable writable attr _n_expr: PExpr = null
537 end
538 class AType
539 special PType
540 readable writable attr _n_id: TClassid = null
541 readable writable attr _n_types: List[PType] = null
542 end
543
544
545
546 class ABlockExpr
547 special PExpr
548 readable writable attr _n_expr: List[PExpr] = null
549 end
550 class AVardeclExpr
551 special PExpr
552 readable writable attr _n_kwvar: TKwvar = null
553 readable writable attr _n_id: TId = null
554 readable writable attr _n_type: PType = null
555 readable writable attr _n_assign: TAssign = null
556 readable writable attr _n_expr: PExpr = null
557 end
558 class AReturnExpr
559 special PExpr
560 readable writable attr _n_kwreturn: TKwreturn = null
561 readable writable attr _n_expr: PExpr = null
562 end
563 class ABreakExpr
564 special PExpr
565 readable writable attr _n_kwbreak: TKwbreak = null
566 readable writable attr _n_expr: PExpr = null
567 end
568 class AAbortExpr
569 special PExpr
570 readable writable attr _n_kwabort: TKwabort = null
571 end
572 class AContinueExpr
573 special PExpr
574 readable writable attr _n_kwcontinue: TKwcontinue = null
575 readable writable attr _n_expr: PExpr = null
576 end
577 class ADoExpr
578 special PExpr
579 readable writable attr _n_kwdo: TKwdo = null
580 readable writable attr _n_block: PExpr = null
581 end
582 class AIfExpr
583 special PExpr
584 readable writable attr _n_kwif: TKwif = null
585 readable writable attr _n_expr: PExpr = null
586 readable writable attr _n_then: PExpr = null
587 readable writable attr _n_else: PExpr = null
588 end
589 class AIfexprExpr
590 special PExpr
591 readable writable attr _n_kwif: TKwif = null
592 readable writable attr _n_expr: PExpr = null
593 readable writable attr _n_kwthen: TKwthen = null
594 readable writable attr _n_then: PExpr = null
595 readable writable attr _n_kwelse: TKwelse = null
596 readable writable attr _n_else: PExpr = null
597 end
598 class AWhileExpr
599 special PExpr
600 readable writable attr _n_kwwhile: TKwwhile = null
601 readable writable attr _n_expr: PExpr = null
602 readable writable attr _n_kwdo: TKwdo = null
603 readable writable attr _n_block: PExpr = null
604 end
605 class AForExpr
606 special PExpr
607 readable writable attr _n_vardecl: PExpr = null
608 readable writable attr _n_kwdo: TKwdo = null
609 readable writable attr _n_block: PExpr = null
610 end
611 class AForVardeclExpr
612 special PExpr
613 readable writable attr _n_kwfor: TKwfor = null
614 readable writable attr _n_id: TId = null
615 readable writable attr _n_expr: PExpr = null
616 end
617 class AAssertExpr
618 special PExpr
619 readable writable attr _n_kwassert: TKwassert = null
620 readable writable attr _n_id: TId = null
621 readable writable attr _n_expr: PExpr = null
622 end
623 class AAssignFormExpr
624 special PExpr
625 readable writable attr _n_assign: TAssign = null
626 readable writable attr _n_value: PExpr = null
627 end
628 class AReassignFormExpr
629 special PExpr
630 readable writable attr _n_assign_op: PAssignOp = null
631 readable writable attr _n_value: PExpr = null
632 end
633 class AOnceExpr
634 special AProxyExpr
635 readable writable attr _n_kwonce: TKwonce = null
636 end
637 class ASendExpr
638 special PExpr
639 readable writable attr _n_expr: PExpr = null
640 readable writable attr _n_closure_defs: List[PClosureDef] = null
641 end
642 class ABinopExpr
643 special ASendExpr
644 readable writable attr _n_expr2: PExpr = null
645 end
646 class ABoolExpr
647 special PExpr
648 end
649 class AOrExpr
650 special ABoolExpr
651 readable writable attr _n_expr: PExpr = null
652 readable writable attr _n_expr2: PExpr = null
653 end
654 class AAndExpr
655 special ABoolExpr
656 readable writable attr _n_expr: PExpr = null
657 readable writable attr _n_expr2: PExpr = null
658 end
659 class ANotExpr
660 special ABoolExpr
661 readable writable attr _n_kwnot: TKwnot = null
662 readable writable attr _n_expr: PExpr = null
663 end
664 class AEqExpr
665 special ABinopExpr
666 end
667 class AEeExpr
668 special ABoolExpr
669 readable writable attr _n_expr: PExpr = null
670 readable writable attr _n_expr2: PExpr = null
671 end
672 class ANeExpr
673 special ABinopExpr
674 end
675 class ALtExpr
676 special ABinopExpr
677 end
678 class ALeExpr
679 special ABinopExpr
680 end
681 class AGtExpr
682 special ABinopExpr
683 end
684 class AGeExpr
685 special ABinopExpr
686 end
687 class AIsaExpr
688 special ABoolExpr
689 readable writable attr _n_expr: PExpr = null
690 readable writable attr _n_type: PType = null
691 end
692 class APlusExpr
693 special ABinopExpr
694 end
695 class AMinusExpr
696 special ABinopExpr
697 end
698 class AStarshipExpr
699 special ABinopExpr
700 end
701 class AStarExpr
702 special ABinopExpr
703 end
704 class ASlashExpr
705 special ABinopExpr
706 end
707 class APercentExpr
708 special ABinopExpr
709 end
710 class AUminusExpr
711 special ASendExpr
712 readable writable attr _n_minus: TMinus = null
713 end
714 class ANewExpr
715 special PExpr
716 readable writable attr _n_kwnew: TKwnew = null
717 readable writable attr _n_type: PType = null
718 readable writable attr _n_id: TId = null
719 readable writable attr _n_args: List[PExpr] = null
720 end
721 class AAttrFormExpr
722 special PExpr
723 readable writable attr _n_expr: PExpr = null
724 readable writable attr _n_id: TAttrid = null
725 end
726 class AAttrExpr
727 special AAttrFormExpr
728 end
729 class AAttrAssignExpr
730 special AAttrFormExpr
731 special AAssignFormExpr
732 end
733 class ACallFormExpr
734 special ASendExpr
735 readable writable attr _n_id: TId = null
736 readable writable attr _n_args: List[PExpr] = null
737 end
738 class AAttrReassignExpr
739 special PExpr
740 special AAttrFormExpr
741 special AReassignFormExpr
742 end
743 class ACallExpr
744 special ACallFormExpr
745 end
746 class ACallAssignExpr
747 special ACallFormExpr
748 special AAssignFormExpr
749 end
750 class ACallReassignExpr
751 special PExpr
752 special ACallFormExpr
753 special AReassignFormExpr
754 end
755 class ASuperExpr
756 special PExpr
757 readable writable attr _n_qualified: PQualified = null
758 readable writable attr _n_kwsuper: TKwsuper = null
759 readable writable attr _n_args: List[PExpr] = null
760 end
761 class AInitExpr
762 special ASendExpr
763 readable writable attr _n_kwinit: TKwinit = null
764 readable writable attr _n_args: List[PExpr] = null
765 end
766 class ABraFormExpr
767 special ASendExpr
768 readable writable attr _n_args: List[PExpr] = null
769 end
770 class ABraExpr
771 special ABraFormExpr
772 end
773 class ABraAssignExpr
774 special ABraFormExpr
775 special AAssignFormExpr
776 end
777 class AVarFormExpr
778 special PExpr
779 readable writable attr _n_id: TId = null
780 end
781 class ABraReassignExpr
782 special ABraFormExpr
783 special AReassignFormExpr
784 end
785 class AVarExpr
786 special AVarFormExpr
787 end
788 class AVarAssignExpr
789 special AVarFormExpr
790 special AAssignFormExpr
791 end
792 class AVarReassignExpr
793 special AVarFormExpr
794 special AReassignFormExpr
795 end
796 class AClosureCallExpr
797 special ACallFormExpr
798 init(i: TId, a: List[PExpr], c: List[PClosureDef])
799 do
800 _n_id = i
801 _n_args = a
802 _n_closure_defs = c
803 _n_expr = null
804 end
805 end
806 class ARangeExpr
807 special PExpr
808 readable writable attr _n_expr: PExpr = null
809 readable writable attr _n_expr2: PExpr = null
810 end
811 class ACrangeExpr
812 special ARangeExpr
813 end
814 class AOrangeExpr
815 special ARangeExpr
816 end
817 class AArrayExpr
818 special PExpr
819 readable writable attr _n_exprs: List[PExpr] = null
820 end
821 class ASelfExpr
822 special PExpr
823 readable writable attr _n_kwself: TKwself = null
824 end
825 class AImplicitSelfExpr
826 special ASelfExpr
827 end
828 class ATrueExpr
829 special ABoolExpr
830 readable writable attr _n_kwtrue: TKwtrue = null
831 end
832 class AFalseExpr
833 special ABoolExpr
834 readable writable attr _n_kwfalse: TKwfalse = null
835 end
836 class ANullExpr
837 special PExpr
838 readable writable attr _n_kwnull: TKwnull = null
839 end
840 class AIntExpr
841 special PExpr
842 readable writable attr _n_number: TNumber = null
843 end
844 class AFloatExpr
845 special PExpr
846 readable writable attr _n_float: TFloat = null
847 end
848 class ACharExpr
849 special PExpr
850 readable writable attr _n_char: TChar = null
851 end
852 class AStringFormExpr
853 special PExpr
854 end
855 class AStringExpr
856 special AStringFormExpr
857 readable writable attr _n_string: TString = null
858 end
859 class AStartStringExpr
860 special AStringFormExpr
861 readable writable attr _n_string: TStartString = null
862 end
863 class AMidStringExpr
864 special AStringFormExpr
865 readable writable attr _n_string: TMidString = null
866 end
867 class AEndStringExpr
868 special AStringFormExpr
869 readable writable attr _n_string: TEndString = null
870 end
871 class ASuperstringExpr
872 special PExpr
873 readable writable attr _n_exprs: List[PExpr] = null
874 end
875 class AParExpr
876 special AProxyExpr
877 end
878 class AProxyExpr
879 special PExpr
880 readable writable attr _n_expr: PExpr = null
881 end
882 class AAsCastExpr
883 special PExpr
884 readable writable attr _n_expr: PExpr = null
885 readable writable attr _n_kwas: TKwas = null
886 readable writable attr _n_type: PType = null
887 end
888 class APlusAssignOp
889 special PAssignOp
890 readable writable attr _n_pluseq: TPluseq = null
891 end
892 class AMinusAssignOp
893 special PAssignOp
894 readable writable attr _n_minuseq: TMinuseq = null
895 end
896 class AClosureDef
897 special PClosureDef
898 readable writable attr _n_kwwith: TKwwith = null
899 readable writable attr _n_id: List[TId] = null
900 readable writable attr _n_kwdo: TKwdo = null
901 readable writable attr _n_expr: PExpr = null
902 end
903 class AQualified
904 special PQualified
905 readable writable attr _n_id: List[TId] = null
906 readable writable attr _n_classid: TClassid = null
907 end
908 class ADoc
909 special PDoc
910 readable writable attr _n_comment: List[TComment] = null
911 end
912
913 class Start
914 special Prod
915 readable writable attr _n_base: PModule
916 readable writable attr _n_eof: EOF
917 end