Merge: new `with` statement
[nit.git] / src / parser / parser_abs.nit
1 # Raw AST node hierarchy.
2 # This file was generated by SableCC (http://www.sablecc.org/).
3 module parser_abs is no_warning("missing-doc")
4
5 import location
6
7 class TEol
8 super Token
9 end
10 class TComment
11 super Token
12 end
13 class TKwpackage
14 super Token
15 end
16 class TKwmodule
17 super Token
18 end
19 class TKwimport
20 super Token
21 end
22 class TKwclass
23 super Token
24 end
25 class TKwabstract
26 super Token
27 end
28 class TKwinterface
29 super Token
30 end
31 class TKwenum
32 super Token
33 end
34 class TKwend
35 super Token
36 end
37 class TKwmeth
38 super Token
39 end
40 class TKwtype
41 super Token
42 end
43 class TKwinit
44 super Token
45 end
46 class TKwredef
47 super Token
48 end
49 class TKwis
50 super Token
51 end
52 class TKwdo
53 super Token
54 end
55 class TKwvar
56 super Token
57 end
58 class TKwextern
59 super Token
60 end
61 class TKwpublic
62 super Token
63 end
64 class TKwprotected
65 super Token
66 end
67 class TKwprivate
68 super Token
69 end
70 class TKwintrude
71 super Token
72 end
73 class TKwif
74 super Token
75 end
76 class TKwthen
77 super Token
78 end
79 class TKwelse
80 super Token
81 end
82 class TKwwhile
83 super Token
84 end
85 class TKwloop
86 super Token
87 end
88 class TKwfor
89 super Token
90 end
91 class TKwin
92 super Token
93 end
94 class TKwand
95 super Token
96 end
97 class TKwor
98 super Token
99 end
100 class TKwnot
101 super Token
102 end
103 class TKwimplies
104 super Token
105 end
106 class TKwreturn
107 super Token
108 end
109 class TKwcontinue
110 super Token
111 end
112 class TKwbreak
113 super Token
114 end
115 class TKwabort
116 super Token
117 end
118 class TKwassert
119 super Token
120 end
121 class TKwnew
122 super Token
123 end
124 class TKwisa
125 super Token
126 end
127 class TKwonce
128 super Token
129 end
130 class TKwsuper
131 super Token
132 end
133 class TKwself
134 super Token
135 end
136 class TKwtrue
137 super Token
138 end
139 class TKwfalse
140 super Token
141 end
142 class TKwnull
143 super Token
144 end
145 class TKwas
146 super Token
147 end
148 class TKwnullable
149 super Token
150 end
151 class TKwisset
152 super Token
153 end
154 class TKwlabel
155 super Token
156 end
157 class TKwwith
158 super Token
159 end
160 class TKwdebug
161 super Token
162 end
163 class TOpar
164 super Token
165 end
166 class TCpar
167 super Token
168 end
169 class TObra
170 super Token
171 end
172 class TCbra
173 super Token
174 end
175 class TComma
176 super Token
177 end
178 class TColumn
179 super Token
180 end
181 class TQuad
182 super Token
183 end
184 class TAssign
185 super Token
186 end
187 class TPluseq
188 super Token
189 end
190 class TMinuseq
191 super Token
192 end
193 class TDotdotdot
194 super Token
195 end
196 class TDotdot
197 super Token
198 end
199 class TDot
200 super Token
201 end
202 class TPlus
203 super Token
204 end
205 class TMinus
206 super Token
207 end
208 class TStar
209 super Token
210 end
211 class TStarstar
212 super Token
213 end
214 class TSlash
215 super Token
216 end
217 class TPercent
218 super Token
219 end
220 class TEq
221 super Token
222 end
223 class TNe
224 super Token
225 end
226 class TLt
227 super Token
228 end
229 class TLe
230 super Token
231 end
232 class TLl
233 super Token
234 end
235 class TGt
236 super Token
237 end
238 class TGe
239 super Token
240 end
241 class TGg
242 super Token
243 end
244 class TStarship
245 super Token
246 end
247 class TBang
248 super Token
249 end
250 class TAt
251 super Token
252 end
253 class TClassid
254 super Token
255 end
256 class TId
257 super Token
258 end
259 class TAttrid
260 super Token
261 end
262 class TNumber
263 super Token
264 end
265 class THexNumber
266 super Token
267 end
268 class TFloat
269 super Token
270 end
271 class TString
272 super Token
273 end
274 class TStartString
275 super Token
276 end
277 class TMidString
278 super Token
279 end
280 class TEndString
281 super Token
282 end
283 class TChar
284 super Token
285 end
286 class TBadString
287 super Token
288 end
289 class TBadChar
290 super Token
291 end
292 class TExternCodeSegment
293 super Token
294 end
295 class EOF
296 super Token
297 end
298 class AError
299 super EOF
300 end
301 class ALexerError
302 super AError
303 end
304 class AParserError
305 super AError
306 end
307
308 class AModule super Prod end
309 class AModuledecl super Prod end
310 class AImport super Prod end
311 class AVisibility super Prod end
312 class AClassdef super Prod end
313 class AClasskind super Prod end
314 class AFormaldef super Prod end
315 class APropdef super Prod end
316 class AMethid super Prod end
317 class ASignature super Prod end
318 class AParam super Prod end
319 class AType super Prod end
320 class ALabel super Prod end
321 class AExpr super Prod end
322 class AExprs super Prod end
323 class AAssignOp super Prod end
324 class AModuleName super Prod end
325 class AExternCalls super Prod end
326 class AExternCall super Prod end
327 class AInLanguage super Prod end
328 class AExternCodeBlock super Prod end
329 class AQualified super Prod end
330 class ADoc super Prod end
331 class AAnnotations super Prod end
332 class AAnnotation super Prod end
333 class AAtid super Prod end
334
335 class AModule
336 super AModule
337 var n_moduledecl: nullable AModuledecl = null is writable
338 var n_imports: List[AImport] = new List[AImport]
339 var n_extern_code_blocks: List[AExternCodeBlock] = new List[AExternCodeBlock]
340 var n_classdefs: List[AClassdef] = new List[AClassdef]
341 end
342 class AModuledecl
343 super AModuledecl
344 var n_doc: nullable ADoc = null is writable
345 var n_kwredef: nullable TKwredef = null is writable
346 var n_visibility: AVisibility is writable, noinit
347 var n_kwmodule: TKwmodule is writable, noinit
348 var n_name: AModuleName is writable, noinit
349 var n_annotations: nullable AAnnotations = null is writable
350 end
351 class AStdImport
352 super AImport
353 var n_visibility: AVisibility is writable, noinit
354 var n_kwimport: TKwimport is writable, noinit
355 var n_name: AModuleName is writable, noinit
356 var n_annotations: nullable AAnnotations = null is writable
357 end
358 class ANoImport
359 super AImport
360 var n_visibility: AVisibility is writable, noinit
361 var n_kwimport: TKwimport is writable, noinit
362 var n_kwend: TKwend is writable, noinit
363 end
364 class APublicVisibility
365 super AVisibility
366 var n_kwpublic: nullable TKwpublic = null is writable
367 end
368 class APrivateVisibility
369 super AVisibility
370 var n_kwprivate: TKwprivate is writable, noinit
371 end
372 class AProtectedVisibility
373 super AVisibility
374 var n_kwprotected: TKwprotected is writable, noinit
375 end
376 class AIntrudeVisibility
377 super AVisibility
378 var n_kwintrude: TKwintrude is writable, noinit
379 end
380 class AStdClassdef
381 super AClassdef
382 var n_doc: nullable ADoc = null is writable
383 var n_kwredef: nullable TKwredef = null is writable
384 var n_visibility: AVisibility is writable, noinit
385 var n_classkind: AClasskind is writable, noinit
386 var n_id: nullable TClassid = null is writable
387 var n_formaldefs: List[AFormaldef] = new List[AFormaldef]
388 var n_extern_code_block: nullable AExternCodeBlock = null is writable
389 var n_propdefs: List[APropdef] = new List[APropdef]
390 var n_kwend: TKwend is writable, noinit
391 end
392 class ATopClassdef
393 super AClassdef
394 var n_propdefs: List[APropdef] = new List[APropdef]
395 end
396 class AMainClassdef
397 super AClassdef
398 var n_propdefs: List[APropdef] = new List[APropdef]
399 end
400 class AConcreteClasskind
401 super AClasskind
402 var n_kwclass: TKwclass is writable, noinit
403 end
404 class AAbstractClasskind
405 super AClasskind
406 var n_kwabstract: TKwabstract is writable, noinit
407 var n_kwclass: TKwclass is writable, noinit
408 end
409 class AInterfaceClasskind
410 super AClasskind
411 var n_kwinterface: TKwinterface is writable, noinit
412 end
413 class AEnumClasskind
414 super AClasskind
415 var n_kwenum: TKwenum is writable, noinit
416 end
417 class AExternClasskind
418 super AClasskind
419 var n_kwextern: TKwextern is writable, noinit
420 var n_kwclass: nullable TKwclass = null is writable
421 end
422 class AFormaldef
423 super AFormaldef
424 var n_id: TClassid is writable, noinit
425 var n_type: nullable AType = null is writable
426 var n_annotations: nullable AAnnotations = null is writable
427 end
428 class AAttrPropdef
429 super APropdef
430 var n_doc: nullable ADoc = null is writable
431 var n_kwredef: nullable TKwredef = null is writable
432 var n_visibility: AVisibility is writable, noinit
433 var n_kwvar: TKwvar is writable, noinit
434 var n_id2: TId is writable, noinit
435 var n_type: nullable AType = null is writable
436 var n_expr: nullable AExpr = null is writable
437 var n_annotations: nullable AAnnotations = null is writable
438 var n_block: nullable AExpr = null is writable
439 end
440 class AMainMethPropdef
441 super APropdef
442 var n_kwredef: nullable TKwredef = null is writable
443 var n_block: nullable AExpr = null is writable
444 end
445 class ATypePropdef
446 super APropdef
447 var n_doc: nullable ADoc = null is writable
448 var n_kwredef: nullable TKwredef = null is writable
449 var n_visibility: AVisibility is writable, noinit
450 var n_kwtype: TKwtype is writable, noinit
451 var n_id: TClassid is writable, noinit
452 var n_type: AType is writable, noinit
453 var n_annotations: nullable AAnnotations = null is writable
454 end
455 class AMethPropdef
456 super APropdef
457 var n_doc: nullable ADoc = null is writable
458 var n_kwredef: nullable TKwredef = null is writable
459 var n_visibility: AVisibility is writable, noinit
460 var n_kwmeth: nullable TKwmeth = null is writable
461 var n_kwinit: nullable TKwinit = null is writable
462 var n_kwnew: nullable TKwnew = null is writable
463 var n_methid: nullable AMethid = null is writable
464 var n_signature: ASignature is writable, noinit
465 var n_annotations: nullable AAnnotations = null is writable
466 var n_extern_calls: nullable AExternCalls = null is writable
467 var n_extern_code_block: nullable AExternCodeBlock = null is writable
468 var n_block: nullable AExpr = null is writable
469 end
470 class ASuperPropdef
471 super APropdef
472 var n_doc: nullable ADoc = null is writable
473 var n_kwredef: nullable TKwredef = null is writable
474 var n_visibility: AVisibility is writable, noinit
475 var n_kwsuper: TKwsuper is writable, noinit
476 var n_type: AType is writable, noinit
477 var n_annotations: nullable AAnnotations = null is writable
478 end
479 class AAnnotPropdef
480 super APropdef
481 var n_doc: nullable ADoc = null is writable
482 var n_kwredef: nullable TKwredef = null is writable
483 var n_visibility: nullable AVisibility = null is writable
484 var n_atid: AAtid is writable, noinit
485 var n_opar: nullable TOpar = null is writable
486 var n_args: List[AExpr] = new List[AExpr]
487 var n_cpar: nullable TCpar = null is writable
488 var n_annotations: nullable AAnnotations = null is writable
489 end
490 class AIdMethid
491 super AMethid
492 var n_id: TId is writable, noinit
493 end
494 class APlusMethid
495 super AMethid
496 var n_plus: TPlus is writable, noinit
497 end
498 class AMinusMethid
499 super AMethid
500 var n_minus: TMinus is writable, noinit
501 end
502 class AStarMethid
503 super AMethid
504 var n_star: TStar is writable, noinit
505 end
506 class AStarstarMethid
507 super AMethid
508 var n_starstar: TStarstar is writable, noinit
509 end
510 class ASlashMethid
511 super AMethid
512 var n_slash: TSlash is writable, noinit
513 end
514 class APercentMethid
515 super AMethid
516 var n_percent: TPercent is writable, noinit
517 end
518 class AEqMethid
519 super AMethid
520 var n_eq: TEq is writable, noinit
521 end
522 class ANeMethid
523 super AMethid
524 var n_ne: TNe is writable, noinit
525 end
526 class ALeMethid
527 super AMethid
528 var n_le: TLe is writable, noinit
529 end
530 class AGeMethid
531 super AMethid
532 var n_ge: TGe is writable, noinit
533 end
534 class ALtMethid
535 super AMethid
536 var n_lt: TLt is writable, noinit
537 end
538 class AGtMethid
539 super AMethid
540 var n_gt: TGt is writable, noinit
541 end
542 class ALlMethid
543 super AMethid
544 var n_ll: TLl is writable, noinit
545 end
546 class AGgMethid
547 super AMethid
548 var n_gg: TGg is writable, noinit
549 end
550 class ABraMethid
551 super AMethid
552 var n_obra: TObra is writable, noinit
553 var n_cbra: TCbra is writable, noinit
554 end
555 class AStarshipMethid
556 super AMethid
557 var n_starship: TStarship is writable, noinit
558 end
559 class AAssignMethid
560 super AMethid
561 var n_id: TId is writable, noinit
562 var n_assign: TAssign is writable, noinit
563 end
564 class ABraassignMethid
565 super AMethid
566 var n_obra: TObra is writable, noinit
567 var n_cbra: TCbra is writable, noinit
568 var n_assign: TAssign is writable, noinit
569 end
570 class ASignature
571 super ASignature
572 var n_opar: nullable TOpar = null is writable
573 var n_params: List[AParam] = new List[AParam]
574 var n_cpar: nullable TCpar = null is writable
575 var n_type: nullable AType = null is writable
576 end
577 class AParam
578 super AParam
579 var n_id: TId is writable, noinit
580 var n_type: nullable AType = null is writable
581 var n_dotdotdot: nullable TDotdotdot = null is writable
582 var n_annotations: nullable AAnnotations = null is writable
583 end
584 class AType
585 super AType
586 var n_kwnullable: nullable TKwnullable = null is writable
587 var n_id: TClassid is writable, noinit
588 var n_types: List[AType] = new List[AType]
589 var n_annotations: nullable AAnnotations = null is writable
590 end
591 class ALabel
592 super ALabel
593 var n_kwlabel: TKwlabel is writable, noinit
594 var n_id: nullable TId = null is writable
595 end
596 class ABlockExpr
597 super AExpr
598 var n_expr: List[AExpr] = new List[AExpr]
599 var n_kwend: nullable TKwend = null is writable
600 end
601 class AVardeclExpr
602 super AExpr
603 var n_kwvar: nullable TKwvar = null is writable
604 var n_id: TId is writable, noinit
605 var n_type: nullable AType = null is writable
606 var n_assign: nullable TAssign = null is writable
607 var n_expr: nullable AExpr = null is writable
608 var n_annotations: nullable AAnnotations = null is writable
609 end
610 class AReturnExpr
611 super AExpr
612 var n_kwreturn: nullable TKwreturn = null is writable
613 var n_expr: nullable AExpr = null is writable
614 end
615 class ABreakExpr
616 super AExpr
617 var n_kwbreak: TKwbreak is writable, noinit
618 var n_label: nullable ALabel = null is writable
619 end
620 class AAbortExpr
621 super AExpr
622 var n_kwabort: TKwabort is writable, noinit
623 end
624 class AContinueExpr
625 super AExpr
626 var n_kwcontinue: nullable TKwcontinue = null is writable
627 var n_label: nullable ALabel = null is writable
628 end
629 class ADoExpr
630 super AExpr
631 var n_kwdo: TKwdo is writable, noinit
632 var n_block: nullable AExpr = null is writable
633 var n_label: nullable ALabel = null is writable
634 end
635 class AIfExpr
636 super AExpr
637 var n_kwif: TKwif is writable, noinit
638 var n_expr: AExpr is writable, noinit
639 var n_then: nullable AExpr = null is writable
640 var n_else: nullable AExpr = null is writable
641 end
642 class AIfexprExpr
643 super AExpr
644 var n_kwif: TKwif is writable, noinit
645 var n_expr: AExpr is writable, noinit
646 var n_kwthen: TKwthen is writable, noinit
647 var n_then: AExpr is writable, noinit
648 var n_kwelse: TKwelse is writable, noinit
649 var n_else: AExpr is writable, noinit
650 end
651 class AWhileExpr
652 super AExpr
653 var n_kwwhile: TKwwhile is writable, noinit
654 var n_expr: AExpr is writable, noinit
655 var n_kwdo: TKwdo is writable, noinit
656 var n_block: nullable AExpr = null is writable
657 var n_label: nullable ALabel = null is writable
658 end
659 class ALoopExpr
660 super AExpr
661 var n_kwloop: TKwloop is writable, noinit
662 var n_block: nullable AExpr = null is writable
663 var n_label: nullable ALabel = null is writable
664 end
665 class AForExpr
666 super AExpr
667 var n_kwfor: TKwfor is writable, noinit
668 var n_ids: List[TId] = new List[TId]
669 var n_expr: AExpr is writable, noinit
670 var n_kwdo: TKwdo is writable, noinit
671 var n_block: nullable AExpr = null is writable
672 var n_label: nullable ALabel = null is writable
673 end
674 class AWithExpr
675 super AExpr
676 var n_kwwith: TKwwith is writable, noinit
677 var n_expr: AExpr is writable, noinit
678 var n_kwdo: TKwdo is writable, noinit
679 var n_block: nullable AExpr = null is writable
680 var n_label: nullable ALabel = null is writable
681 end
682 class AAssertExpr
683 super AExpr
684 var n_kwassert: TKwassert is writable, noinit
685 var n_id: nullable TId = null is writable
686 var n_expr: AExpr is writable, noinit
687 var n_else: nullable AExpr = null is writable
688 end
689 class AOnceExpr
690 super AExpr
691 var n_kwonce: TKwonce is writable, noinit
692 var n_expr: AExpr is writable, noinit
693 end
694 class ASendExpr
695 super AExpr
696 var n_expr: AExpr is writable, noinit
697 end
698 class ABinopExpr
699 super AExpr
700 var n_expr: AExpr is writable, noinit
701 var n_expr2: AExpr is writable, noinit
702 end
703 class AOrExpr
704 super AExpr
705 var n_expr: AExpr is writable, noinit
706 var n_expr2: AExpr is writable, noinit
707 end
708 class AAndExpr
709 super AExpr
710 var n_expr: AExpr is writable, noinit
711 var n_expr2: AExpr is writable, noinit
712 end
713 class AOrElseExpr
714 super AExpr
715 var n_expr: AExpr is writable, noinit
716 var n_expr2: AExpr is writable, noinit
717 end
718 class AImpliesExpr
719 super AExpr
720 var n_expr: AExpr is writable, noinit
721 var n_expr2: AExpr is writable, noinit
722 end
723 class ANotExpr
724 super AExpr
725 var n_kwnot: TKwnot is writable, noinit
726 var n_expr: AExpr is writable, noinit
727 end
728 class AEqExpr
729 super AExpr
730 var n_expr: AExpr is writable, noinit
731 var n_expr2: AExpr is writable, noinit
732 end
733 class ANeExpr
734 super AExpr
735 var n_expr: AExpr is writable, noinit
736 var n_expr2: AExpr is writable, noinit
737 end
738 class ALtExpr
739 super AExpr
740 var n_expr: AExpr is writable, noinit
741 var n_expr2: AExpr is writable, noinit
742 end
743 class ALeExpr
744 super AExpr
745 var n_expr: AExpr is writable, noinit
746 var n_expr2: AExpr is writable, noinit
747 end
748 class ALlExpr
749 super AExpr
750 var n_expr: AExpr is writable, noinit
751 var n_expr2: AExpr is writable, noinit
752 end
753 class AGtExpr
754 super AExpr
755 var n_expr: AExpr is writable, noinit
756 var n_expr2: AExpr is writable, noinit
757 end
758 class AGeExpr
759 super AExpr
760 var n_expr: AExpr is writable, noinit
761 var n_expr2: AExpr is writable, noinit
762 end
763 class AGgExpr
764 super AExpr
765 var n_expr: AExpr is writable, noinit
766 var n_expr2: AExpr is writable, noinit
767 end
768 class AIsaExpr
769 super AExpr
770 var n_expr: AExpr is writable, noinit
771 var n_type: AType is writable, noinit
772 end
773 class APlusExpr
774 super AExpr
775 var n_expr: AExpr is writable, noinit
776 var n_expr2: AExpr is writable, noinit
777 end
778 class AMinusExpr
779 super AExpr
780 var n_expr: AExpr is writable, noinit
781 var n_expr2: AExpr is writable, noinit
782 end
783 class AStarshipExpr
784 super AExpr
785 var n_expr: AExpr is writable, noinit
786 var n_expr2: AExpr is writable, noinit
787 end
788 class AStarExpr
789 super AExpr
790 var n_expr: AExpr is writable, noinit
791 var n_expr2: AExpr is writable, noinit
792 end
793 class AStarstarExpr
794 super AExpr
795 var n_expr: AExpr is writable, noinit
796 var n_expr2: AExpr is writable, noinit
797 end
798 class ASlashExpr
799 super AExpr
800 var n_expr: AExpr is writable, noinit
801 var n_expr2: AExpr is writable, noinit
802 end
803 class APercentExpr
804 super AExpr
805 var n_expr: AExpr is writable, noinit
806 var n_expr2: AExpr is writable, noinit
807 end
808 class AUminusExpr
809 super AExpr
810 var n_minus: TMinus is writable, noinit
811 var n_expr: AExpr is writable, noinit
812 end
813 class ANewExpr
814 super AExpr
815 var n_kwnew: TKwnew is writable, noinit
816 var n_type: AType is writable, noinit
817 var n_id: nullable TId = null is writable
818 var n_args: AExprs is writable, noinit
819 end
820 class AAttrExpr
821 super AExpr
822 var n_expr: AExpr is writable, noinit
823 var n_id: TAttrid is writable, noinit
824 end
825 class AAttrAssignExpr
826 super AExpr
827 var n_expr: AExpr is writable, noinit
828 var n_id: TAttrid is writable, noinit
829 var n_assign: TAssign is writable, noinit
830 var n_value: AExpr is writable, noinit
831 end
832 class AAttrReassignExpr
833 super AExpr
834 var n_expr: AExpr is writable, noinit
835 var n_id: TAttrid is writable, noinit
836 var n_assign_op: AAssignOp is writable, noinit
837 var n_value: AExpr is writable, noinit
838 end
839 class ACallExpr
840 super AExpr
841 var n_expr: AExpr is writable, noinit
842 var n_id: TId is writable, noinit
843 var n_args: AExprs is writable, noinit
844 end
845 class ACallAssignExpr
846 super AExpr
847 var n_expr: AExpr is writable, noinit
848 var n_id: TId is writable, noinit
849 var n_args: AExprs is writable, noinit
850 var n_assign: TAssign is writable, noinit
851 var n_value: AExpr is writable, noinit
852 end
853 class ACallReassignExpr
854 super AExpr
855 var n_expr: AExpr is writable, noinit
856 var n_id: TId is writable, noinit
857 var n_args: AExprs is writable, noinit
858 var n_assign_op: AAssignOp is writable, noinit
859 var n_value: AExpr is writable, noinit
860 end
861 class ASuperExpr
862 super AExpr
863 var n_qualified: nullable AQualified = null is writable
864 var n_kwsuper: TKwsuper is writable, noinit
865 var n_args: AExprs is writable, noinit
866 end
867 class AInitExpr
868 super AExpr
869 var n_expr: AExpr is writable, noinit
870 var n_kwinit: TKwinit is writable, noinit
871 var n_args: AExprs is writable, noinit
872 end
873 class ABraExpr
874 super AExpr
875 var n_expr: AExpr is writable, noinit
876 var n_args: AExprs is writable, noinit
877 end
878 class ABraAssignExpr
879 super AExpr
880 var n_expr: AExpr is writable, noinit
881 var n_args: AExprs is writable, noinit
882 var n_assign: TAssign is writable, noinit
883 var n_value: AExpr is writable, noinit
884 end
885 class ABraReassignExpr
886 super AExpr
887 var n_expr: AExpr is writable, noinit
888 var n_args: AExprs is writable, noinit
889 var n_assign_op: AAssignOp is writable, noinit
890 var n_value: AExpr is writable, noinit
891 end
892 class AVarExpr
893 super AExpr
894 var n_id: TId is writable, noinit
895 end
896 class AVarAssignExpr
897 super AExpr
898 var n_id: TId is writable, noinit
899 var n_assign: TAssign is writable, noinit
900 var n_value: AExpr is writable, noinit
901 end
902 class AVarReassignExpr
903 super AExpr
904 var n_id: TId is writable, noinit
905 var n_assign_op: AAssignOp is writable, noinit
906 var n_value: AExpr is writable, noinit
907 end
908 class ARangeExpr
909 super AExpr
910 var n_expr: AExpr is writable, noinit
911 var n_expr2: AExpr is writable, noinit
912 var n_annotations: nullable AAnnotations = null is writable
913 end
914 class ACrangeExpr
915 super AExpr
916 var n_obra: TObra is writable, noinit
917 var n_expr: AExpr is writable, noinit
918 var n_expr2: AExpr is writable, noinit
919 var n_cbra: TCbra is writable, noinit
920 var n_annotations: nullable AAnnotations = null is writable
921 end
922 class AOrangeExpr
923 super AExpr
924 var n_obra: TObra is writable, noinit
925 var n_expr: AExpr is writable, noinit
926 var n_expr2: AExpr is writable, noinit
927 var n_cbra: TObra is writable, noinit
928 var n_annotations: nullable AAnnotations = null is writable
929 end
930 class AArrayExpr
931 super AExpr
932 var n_obra: TObra is writable, noinit
933 var n_exprs: List[AExpr] = new List[AExpr]
934 var n_type: nullable AType = null is writable
935 var n_cbra: TCbra is writable, noinit
936 var n_annotations: nullable AAnnotations = null is writable
937 end
938 class ASelfExpr
939 super AExpr
940 var n_kwself: TKwself is writable, noinit
941 var n_annotations: nullable AAnnotations = null is writable
942 end
943 class AImplicitSelfExpr
944 super AExpr
945 end
946 class ATrueExpr
947 super AExpr
948 var n_kwtrue: TKwtrue is writable, noinit
949 var n_annotations: nullable AAnnotations = null is writable
950 end
951 class AFalseExpr
952 super AExpr
953 var n_kwfalse: TKwfalse is writable, noinit
954 var n_annotations: nullable AAnnotations = null is writable
955 end
956 class ANullExpr
957 super AExpr
958 var n_kwnull: TKwnull is writable, noinit
959 var n_annotations: nullable AAnnotations = null is writable
960 end
961 class ADecIntExpr
962 super AExpr
963 var n_number: TNumber is writable, noinit
964 var n_annotations: nullable AAnnotations = null is writable
965 end
966 class AHexIntExpr
967 super AExpr
968 var n_hex_number: THexNumber is writable, noinit
969 var n_annotations: nullable AAnnotations = null is writable
970 end
971 class AFloatExpr
972 super AExpr
973 var n_float: TFloat is writable, noinit
974 var n_annotations: nullable AAnnotations = null is writable
975 end
976 class ACharExpr
977 super AExpr
978 var n_char: TChar is writable, noinit
979 var n_annotations: nullable AAnnotations = null is writable
980 end
981 class AStringExpr
982 super AExpr
983 var n_string: TString is writable, noinit
984 var n_annotations: nullable AAnnotations = null is writable
985 end
986 class AStartStringExpr
987 super AExpr
988 var n_string: TStartString is writable, noinit
989 end
990 class AMidStringExpr
991 super AExpr
992 var n_string: TMidString is writable, noinit
993 end
994 class AEndStringExpr
995 super AExpr
996 var n_string: TEndString is writable, noinit
997 end
998 class ASuperstringExpr
999 super AExpr
1000 var n_exprs: List[AExpr] = new List[AExpr]
1001 var n_annotations: nullable AAnnotations = null is writable
1002 end
1003 class AParExpr
1004 super AExpr
1005 var n_opar: TOpar is writable, noinit
1006 var n_expr: AExpr is writable, noinit
1007 var n_cpar: TCpar is writable, noinit
1008 var n_annotations: nullable AAnnotations = null is writable
1009 end
1010 class AAsCastExpr
1011 super AExpr
1012 var n_expr: AExpr is writable, noinit
1013 var n_kwas: TKwas is writable, noinit
1014 var n_opar: nullable TOpar = null is writable
1015 var n_type: AType is writable, noinit
1016 var n_cpar: nullable TCpar = null is writable
1017 end
1018 class AAsNotnullExpr
1019 super AExpr
1020 var n_expr: AExpr is writable, noinit
1021 var n_kwas: TKwas is writable, noinit
1022 var n_opar: nullable TOpar = null is writable
1023 var n_kwnot: TKwnot is writable, noinit
1024 var n_kwnull: TKwnull is writable, noinit
1025 var n_cpar: nullable TCpar = null is writable
1026 end
1027 class AIssetAttrExpr
1028 super AExpr
1029 var n_kwisset: TKwisset is writable, noinit
1030 var n_expr: AExpr is writable, noinit
1031 var n_id: TAttrid is writable, noinit
1032 end
1033 class ADebugTypeExpr
1034 super AExpr
1035 var n_kwdebug: TKwdebug is writable, noinit
1036 var n_kwtype: TKwtype is writable, noinit
1037 var n_expr: AExpr is writable, noinit
1038 var n_type: AType is writable, noinit
1039 end
1040 class AVarargExpr
1041 super AExpr
1042 var n_expr: AExpr is writable, noinit
1043 var n_dotdotdot: TDotdotdot is writable, noinit
1044 end
1045 class ATypeExpr
1046 super AExpr
1047 var n_type: AType is writable, noinit
1048 end
1049 class AMethidExpr
1050 super AExpr
1051 var n_expr: AExpr is writable, noinit
1052 var n_id: AMethid is writable, noinit
1053 end
1054 class AAtExpr
1055 super AExpr
1056 var n_annotations: AAnnotations is writable, noinit
1057 end
1058 class AManyExpr
1059 super AExpr
1060 var n_exprs: List[AExpr] = new List[AExpr]
1061 end
1062 class AListExprs
1063 super AExprs
1064 var n_exprs: List[AExpr] = new List[AExpr]
1065 end
1066 class AParExprs
1067 super AExprs
1068 var n_opar: TOpar is writable, noinit
1069 var n_exprs: List[AExpr] = new List[AExpr]
1070 var n_cpar: TCpar is writable, noinit
1071 end
1072 class ABraExprs
1073 super AExprs
1074 var n_obra: TObra is writable, noinit
1075 var n_exprs: List[AExpr] = new List[AExpr]
1076 var n_cbra: TCbra is writable, noinit
1077 end
1078 class APlusAssignOp
1079 super AAssignOp
1080 var n_pluseq: TPluseq is writable, noinit
1081 end
1082 class AMinusAssignOp
1083 super AAssignOp
1084 var n_minuseq: TMinuseq is writable, noinit
1085 end
1086 class AModuleName
1087 super AModuleName
1088 var n_quad: nullable TQuad = null is writable
1089 var n_path: List[TId] = new List[TId]
1090 var n_id: TId is writable, noinit
1091 end
1092 class AExternCalls
1093 super AExternCalls
1094 var n_kwimport: TKwimport is writable, noinit
1095 var n_extern_calls: List[AExternCall] = new List[AExternCall]
1096 end
1097 class AExternCall
1098 super AExternCall
1099 end
1100 class ASuperExternCall
1101 super AExternCall
1102 var n_kwsuper: TKwsuper is writable, noinit
1103 end
1104 class ALocalPropExternCall
1105 super AExternCall
1106 var n_methid: AMethid is writable, noinit
1107 end
1108 class AFullPropExternCall
1109 super AExternCall
1110 var n_type: AType is writable, noinit
1111 var n_dot: nullable TDot = null is writable
1112 var n_methid: AMethid is writable, noinit
1113 end
1114 class AInitPropExternCall
1115 super AExternCall
1116 var n_type: AType is writable, noinit
1117 end
1118 class ACastAsExternCall
1119 super AExternCall
1120 var n_from_type: AType is writable, noinit
1121 var n_dot: nullable TDot = null is writable
1122 var n_kwas: TKwas is writable, noinit
1123 var n_to_type: AType is writable, noinit
1124 end
1125 class AAsNullableExternCall
1126 super AExternCall
1127 var n_type: AType is writable, noinit
1128 var n_kwas: TKwas is writable, noinit
1129 var n_kwnullable: TKwnullable is writable, noinit
1130 end
1131 class AAsNotNullableExternCall
1132 super AExternCall
1133 var n_type: AType is writable, noinit
1134 var n_kwas: TKwas is writable, noinit
1135 var n_kwnot: TKwnot is writable, noinit
1136 var n_kwnullable: TKwnullable is writable, noinit
1137 end
1138 class AInLanguage
1139 super AInLanguage
1140 var n_kwin: TKwin is writable, noinit
1141 var n_string: TString is writable, noinit
1142 end
1143 class AExternCodeBlock
1144 super AExternCodeBlock
1145 var n_in_language: nullable AInLanguage = null is writable
1146 var n_extern_code_segment: TExternCodeSegment is writable, noinit
1147 end
1148 class AQualified
1149 super AQualified
1150 var n_id: List[TId] = new List[TId]
1151 var n_classid: nullable TClassid = null is writable
1152 end
1153 class ADoc
1154 super ADoc
1155 var n_comment: List[TComment] = new List[TComment]
1156 end
1157 class AAnnotations
1158 super AAnnotations
1159 var n_at: nullable TAt = null is writable
1160 var n_opar: nullable TOpar = null is writable
1161 var n_items: List[AAnnotation] = new List[AAnnotation]
1162 var n_cpar: nullable TCpar = null is writable
1163 end
1164 class AAnnotation
1165 super AAnnotation
1166 var n_doc: nullable ADoc = null is writable
1167 var n_kwredef: nullable TKwredef = null is writable
1168 var n_visibility: nullable AVisibility = null is writable
1169 var n_atid: AAtid is writable, noinit
1170 var n_opar: nullable TOpar = null is writable
1171 var n_args: List[AExpr] = new List[AExpr]
1172 var n_cpar: nullable TCpar = null is writable
1173 var n_annotations: nullable AAnnotations = null is writable
1174 end
1175 class AIdAtid
1176 super AAtid
1177 var n_id: TId is writable, noinit
1178 end
1179 class AKwexternAtid
1180 super AAtid
1181 var n_id: TKwextern is writable, noinit
1182 end
1183 class AKwabstractAtid
1184 super AAtid
1185 var n_id: TKwabstract is writable, noinit
1186 end
1187 class AKwimportAtid
1188 super AAtid
1189 var n_id: TKwimport is writable, noinit
1190 end
1191
1192 class Start
1193 super Prod
1194 var n_base: nullable AModule is writable, noinit
1195 var n_eof: EOF is writable, noinit
1196 init(
1197 n_base: nullable AModule,
1198 n_eof: EOF)
1199 do
1200 _n_base = n_base
1201 _n_eof = n_eof
1202 end
1203 end