ast: Merge classes AForExpr and AForVardeclExpr
[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_kwfor: TKwfor = null
608 readable writable attr _n_id: TId = null
609 readable writable attr _n_expr: PExpr = null
610 readable writable attr _n_kwdo: TKwdo = null
611 readable writable attr _n_block: PExpr = null
612 end
613 class AAssertExpr
614 special PExpr
615 readable writable attr _n_kwassert: TKwassert = null
616 readable writable attr _n_id: TId = null
617 readable writable attr _n_expr: PExpr = null
618 end
619 class AAssignFormExpr
620 special PExpr
621 readable writable attr _n_assign: TAssign = null
622 readable writable attr _n_value: PExpr = null
623 end
624 class AReassignFormExpr
625 special PExpr
626 readable writable attr _n_assign_op: PAssignOp = null
627 readable writable attr _n_value: PExpr = null
628 end
629 class AOnceExpr
630 special AProxyExpr
631 readable writable attr _n_kwonce: TKwonce = null
632 end
633 class ASendExpr
634 special PExpr
635 readable writable attr _n_expr: PExpr = null
636 readable writable attr _n_closure_defs: List[PClosureDef] = null
637 end
638 class ABinopExpr
639 special ASendExpr
640 readable writable attr _n_expr2: PExpr = null
641 end
642 class ABoolExpr
643 special PExpr
644 end
645 class AOrExpr
646 special ABoolExpr
647 readable writable attr _n_expr: PExpr = null
648 readable writable attr _n_expr2: PExpr = null
649 end
650 class AAndExpr
651 special ABoolExpr
652 readable writable attr _n_expr: PExpr = null
653 readable writable attr _n_expr2: PExpr = null
654 end
655 class ANotExpr
656 special ABoolExpr
657 readable writable attr _n_kwnot: TKwnot = null
658 readable writable attr _n_expr: PExpr = null
659 end
660 class AEqExpr
661 special ABinopExpr
662 end
663 class AEeExpr
664 special ABoolExpr
665 readable writable attr _n_expr: PExpr = null
666 readable writable attr _n_expr2: PExpr = null
667 end
668 class ANeExpr
669 special ABinopExpr
670 end
671 class ALtExpr
672 special ABinopExpr
673 end
674 class ALeExpr
675 special ABinopExpr
676 end
677 class AGtExpr
678 special ABinopExpr
679 end
680 class AGeExpr
681 special ABinopExpr
682 end
683 class AIsaExpr
684 special ABoolExpr
685 readable writable attr _n_expr: PExpr = null
686 readable writable attr _n_type: PType = null
687 end
688 class APlusExpr
689 special ABinopExpr
690 end
691 class AMinusExpr
692 special ABinopExpr
693 end
694 class AStarshipExpr
695 special ABinopExpr
696 end
697 class AStarExpr
698 special ABinopExpr
699 end
700 class ASlashExpr
701 special ABinopExpr
702 end
703 class APercentExpr
704 special ABinopExpr
705 end
706 class AUminusExpr
707 special ASendExpr
708 readable writable attr _n_minus: TMinus = null
709 end
710 class ANewExpr
711 special PExpr
712 readable writable attr _n_kwnew: TKwnew = null
713 readable writable attr _n_type: PType = null
714 readable writable attr _n_id: TId = null
715 readable writable attr _n_args: List[PExpr] = null
716 end
717 class AAttrFormExpr
718 special PExpr
719 readable writable attr _n_expr: PExpr = null
720 readable writable attr _n_id: TAttrid = null
721 end
722 class AAttrExpr
723 special AAttrFormExpr
724 end
725 class AAttrAssignExpr
726 special AAttrFormExpr
727 special AAssignFormExpr
728 end
729 class ACallFormExpr
730 special ASendExpr
731 readable writable attr _n_id: TId = null
732 readable writable attr _n_args: List[PExpr] = null
733 end
734 class AAttrReassignExpr
735 special PExpr
736 special AAttrFormExpr
737 special AReassignFormExpr
738 end
739 class ACallExpr
740 special ACallFormExpr
741 end
742 class ACallAssignExpr
743 special ACallFormExpr
744 special AAssignFormExpr
745 end
746 class ACallReassignExpr
747 special PExpr
748 special ACallFormExpr
749 special AReassignFormExpr
750 end
751 class ASuperExpr
752 special PExpr
753 readable writable attr _n_qualified: PQualified = null
754 readable writable attr _n_kwsuper: TKwsuper = null
755 readable writable attr _n_args: List[PExpr] = null
756 end
757 class AInitExpr
758 special ASendExpr
759 readable writable attr _n_kwinit: TKwinit = null
760 readable writable attr _n_args: List[PExpr] = null
761 end
762 class ABraFormExpr
763 special ASendExpr
764 readable writable attr _n_args: List[PExpr] = null
765 end
766 class ABraExpr
767 special ABraFormExpr
768 end
769 class ABraAssignExpr
770 special ABraFormExpr
771 special AAssignFormExpr
772 end
773 class AVarFormExpr
774 special PExpr
775 readable writable attr _n_id: TId = null
776 end
777 class ABraReassignExpr
778 special ABraFormExpr
779 special AReassignFormExpr
780 end
781 class AVarExpr
782 special AVarFormExpr
783 end
784 class AVarAssignExpr
785 special AVarFormExpr
786 special AAssignFormExpr
787 end
788 class AVarReassignExpr
789 special AVarFormExpr
790 special AReassignFormExpr
791 end
792 class AClosureCallExpr
793 special ACallFormExpr
794 init(i: TId, a: List[PExpr], c: List[PClosureDef])
795 do
796 _n_id = i
797 _n_args = a
798 _n_closure_defs = c
799 _n_expr = null
800 end
801 end
802 class ARangeExpr
803 special PExpr
804 readable writable attr _n_expr: PExpr = null
805 readable writable attr _n_expr2: PExpr = null
806 end
807 class ACrangeExpr
808 special ARangeExpr
809 end
810 class AOrangeExpr
811 special ARangeExpr
812 end
813 class AArrayExpr
814 special PExpr
815 readable writable attr _n_exprs: List[PExpr] = null
816 end
817 class ASelfExpr
818 special PExpr
819 readable writable attr _n_kwself: TKwself = null
820 end
821 class AImplicitSelfExpr
822 special ASelfExpr
823 end
824 class ATrueExpr
825 special ABoolExpr
826 readable writable attr _n_kwtrue: TKwtrue = null
827 end
828 class AFalseExpr
829 special ABoolExpr
830 readable writable attr _n_kwfalse: TKwfalse = null
831 end
832 class ANullExpr
833 special PExpr
834 readable writable attr _n_kwnull: TKwnull = null
835 end
836 class AIntExpr
837 special PExpr
838 readable writable attr _n_number: TNumber = null
839 end
840 class AFloatExpr
841 special PExpr
842 readable writable attr _n_float: TFloat = null
843 end
844 class ACharExpr
845 special PExpr
846 readable writable attr _n_char: TChar = null
847 end
848 class AStringFormExpr
849 special PExpr
850 end
851 class AStringExpr
852 special AStringFormExpr
853 readable writable attr _n_string: TString = null
854 end
855 class AStartStringExpr
856 special AStringFormExpr
857 readable writable attr _n_string: TStartString = null
858 end
859 class AMidStringExpr
860 special AStringFormExpr
861 readable writable attr _n_string: TMidString = null
862 end
863 class AEndStringExpr
864 special AStringFormExpr
865 readable writable attr _n_string: TEndString = null
866 end
867 class ASuperstringExpr
868 special PExpr
869 readable writable attr _n_exprs: List[PExpr] = null
870 end
871 class AParExpr
872 special AProxyExpr
873 end
874 class AProxyExpr
875 special PExpr
876 readable writable attr _n_expr: PExpr = null
877 end
878 class AAsCastExpr
879 special PExpr
880 readable writable attr _n_expr: PExpr = null
881 readable writable attr _n_kwas: TKwas = null
882 readable writable attr _n_type: PType = null
883 end
884 class APlusAssignOp
885 special PAssignOp
886 readable writable attr _n_pluseq: TPluseq = null
887 end
888 class AMinusAssignOp
889 special PAssignOp
890 readable writable attr _n_minuseq: TMinuseq = null
891 end
892 class AClosureDef
893 special PClosureDef
894 readable writable attr _n_kwwith: TKwwith = null
895 readable writable attr _n_id: List[TId] = null
896 readable writable attr _n_kwdo: TKwdo = null
897 readable writable attr _n_expr: PExpr = null
898 end
899 class AQualified
900 special PQualified
901 readable writable attr _n_id: List[TId] = null
902 readable writable attr _n_classid: TClassid = null
903 end
904 class ADoc
905 special PDoc
906 readable writable attr _n_comment: List[TComment] = null
907 end
908
909 class Start
910 special Prod
911 readable writable attr _n_base: PModule
912 readable writable attr _n_eof: EOF
913 end