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