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