ffi: adds the FFI syntax to the grammar
[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 import location
6
7 # Root of the AST hierarchy
8 abstract class ANode
9 var _location: nullable Location
10
11 # Location is set during AST building. Once built, location cannon be null
12 # However, manual instanciated nodes may need mode care
13 fun location: Location do return _location.as(not null)
14 end
15
16 # Ancestor of all tokens
17 abstract class Token
18 super ANode
19 end
20
21 # Ancestor of all productions
22 abstract class Prod
23 super ANode
24 fun location=(loc: Location) do _location = loc
25 end
26 class TEol
27 super Token
28 end
29 class TComment
30 super Token
31 end
32 class TKwmodule
33 super Token
34 end
35 class TKwimport
36 super Token
37 end
38 class TKwclass
39 super Token
40 end
41 class TKwabstract
42 super Token
43 end
44 class TKwinterface
45 super Token
46 end
47 class TKwenum
48 super Token
49 end
50 class TKwspecial
51 super Token
52 end
53 class TKwend
54 super Token
55 end
56 class TKwmeth
57 super Token
58 end
59 class TKwtype
60 super Token
61 end
62 class TKwinit
63 super Token
64 end
65 class TKwredef
66 super Token
67 end
68 class TKwis
69 super Token
70 end
71 class TKwdo
72 super Token
73 end
74 class TKwreadable
75 super Token
76 end
77 class TKwwritable
78 super Token
79 end
80 class TKwvar
81 super Token
82 end
83 class TKwintern
84 super Token
85 end
86 class TKwextern
87 super Token
88 end
89 class TKwprotected
90 super Token
91 end
92 class TKwprivate
93 super Token
94 end
95 class TKwintrude
96 super Token
97 end
98 class TKwif
99 super Token
100 end
101 class TKwthen
102 super Token
103 end
104 class TKwelse
105 super Token
106 end
107 class TKwwhile
108 super Token
109 end
110 class TKwloop
111 super Token
112 end
113 class TKwfor
114 super Token
115 end
116 class TKwin
117 super Token
118 end
119 class TKwand
120 super Token
121 end
122 class TKwor
123 super Token
124 end
125 class TKwnot
126 super Token
127 end
128 class TKwreturn
129 super Token
130 end
131 class TKwcontinue
132 super Token
133 end
134 class TKwbreak
135 super Token
136 end
137 class TKwabort
138 super Token
139 end
140 class TKwassert
141 super Token
142 end
143 class TKwnew
144 super Token
145 end
146 class TKwisa
147 super Token
148 end
149 class TKwonce
150 super Token
151 end
152 class TKwsuper
153 super Token
154 end
155 class TKwself
156 super Token
157 end
158 class TKwtrue
159 super Token
160 end
161 class TKwfalse
162 super Token
163 end
164 class TKwnull
165 super Token
166 end
167 class TKwas
168 super Token
169 end
170 class TKwnullable
171 super Token
172 end
173 class TKwisset
174 super Token
175 end
176 class TKwlabel
177 super Token
178 end
179 class TKwdebug
180 super Token
181 end
182 class TOpar
183 super Token
184 end
185 class TCpar
186 super Token
187 end
188 class TObra
189 super Token
190 end
191 class TCbra
192 super Token
193 end
194 class TComma
195 super Token
196 end
197 class TColumn
198 super Token
199 end
200 class TQuad
201 super Token
202 end
203 class TAssign
204 super Token
205 end
206 class TPluseq
207 super Token
208 end
209 class TMinuseq
210 super Token
211 end
212 class TDotdotdot
213 super Token
214 end
215 class TDotdot
216 super Token
217 end
218 class TDot
219 super Token
220 end
221 class TPlus
222 super Token
223 end
224 class TMinus
225 super Token
226 end
227 class TStar
228 super Token
229 end
230 class TSlash
231 super Token
232 end
233 class TPercent
234 super Token
235 end
236 class TEq
237 super Token
238 end
239 class TNe
240 super Token
241 end
242 class TLt
243 super Token
244 end
245 class TLe
246 super Token
247 end
248 class TLl
249 super Token
250 end
251 class TGt
252 super Token
253 end
254 class TGe
255 super Token
256 end
257 class TGg
258 super Token
259 end
260 class TStarship
261 super Token
262 end
263 class TBang
264 super Token
265 end
266 class TClassid
267 super Token
268 end
269 class TId
270 super Token
271 end
272 class TAttrid
273 super Token
274 end
275 class TNumber
276 super Token
277 end
278 class TFloat
279 super Token
280 end
281 class TChar
282 super Token
283 end
284 class TString
285 super Token
286 end
287 class TStartString
288 super Token
289 end
290 class TMidString
291 super Token
292 end
293 class TEndString
294 super Token
295 end
296 class TBadChar
297 super Token
298 end
299 class TBadString
300 super Token
301 end
302 class TExternCodeSegment
303 super Token
304 end
305 class EOF
306 super Token
307 private init noinit do end
308 end
309 class AError
310 super EOF
311 private init noinit do end
312 end
313
314 class AModule super Prod end
315 class AModuledecl super Prod end
316 class AImport super Prod end
317 class AVisibility super Prod end
318 class AClassdef super Prod end
319 class AClasskind super Prod end
320 class AFormaldef super Prod end
321 class ASuperclass super Prod end
322 class APropdef super Prod end
323 class AAble super Prod end
324 class AMethid super Prod end
325 class ASignature super Prod end
326 class AParam super Prod end
327 class AClosureDecl super Prod end
328 class AType super Prod end
329 class ALabel super Prod end
330 class AExpr super Prod end
331 class AExprs super Prod end
332 class AAssignOp super Prod end
333 class AClosureDef super Prod end
334 class AClosureId super Prod end
335 class AModuleName super Prod end
336 class AExternCalls super Prod end
337 class AExternCall super Prod end
338 class AInLanguage super Prod end
339 class AExternCodeBlock super Prod end
340 class AQualified super Prod end
341 class ADoc super Prod end
342
343 class AModule
344 super AModule
345 readable var _n_moduledecl: nullable AModuledecl = null
346 readable var _n_imports: List[AImport] = new List[AImport]
347 readable var _n_extern_code_blocks: List[AExternCodeBlock] = new List[AExternCodeBlock]
348 readable var _n_classdefs: List[AClassdef] = new List[AClassdef]
349 end
350 class AModuledecl
351 super AModuledecl
352 readable var _n_doc: nullable ADoc = null
353 readable var _n_kwmodule: TKwmodule
354 readable var _n_name: AModuleName
355 end
356 class AStdImport
357 super AImport
358 readable var _n_visibility: AVisibility
359 readable var _n_kwimport: TKwimport
360 readable var _n_name: AModuleName
361 end
362 class ANoImport
363 super AImport
364 readable var _n_visibility: AVisibility
365 readable var _n_kwimport: TKwimport
366 readable var _n_kwend: TKwend
367 end
368 class APublicVisibility
369 super AVisibility
370 end
371 class APrivateVisibility
372 super AVisibility
373 readable var _n_kwprivate: TKwprivate
374 end
375 class AProtectedVisibility
376 super AVisibility
377 readable var _n_kwprotected: TKwprotected
378 end
379 class AIntrudeVisibility
380 super AVisibility
381 readable var _n_kwintrude: TKwintrude
382 end
383 class AStdClassdef
384 super AClassdef
385 readable var _n_doc: nullable ADoc = null
386 readable var _n_kwredef: nullable TKwredef = null
387 readable var _n_visibility: AVisibility
388 readable var _n_classkind: AClasskind
389 readable var _n_id: nullable TClassid = null
390 readable var _n_formaldefs: List[AFormaldef] = new List[AFormaldef]
391 readable var _n_extern_code_block: nullable AExternCodeBlock = null
392 readable var _n_superclasses: List[ASuperclass] = new List[ASuperclass]
393 readable var _n_propdefs: List[APropdef] = new List[APropdef]
394 readable var _n_kwend: TKwend
395 end
396 class ATopClassdef
397 super AClassdef
398 readable var _n_propdefs: List[APropdef] = new List[APropdef]
399 end
400 class AMainClassdef
401 super AClassdef
402 readable var _n_propdefs: List[APropdef] = new List[APropdef]
403 end
404 class AConcreteClasskind
405 super AClasskind
406 readable var _n_kwclass: TKwclass
407 end
408 class AAbstractClasskind
409 super AClasskind
410 readable var _n_kwabstract: TKwabstract
411 readable var _n_kwclass: TKwclass
412 end
413 class AInterfaceClasskind
414 super AClasskind
415 readable var _n_kwinterface: TKwinterface
416 end
417 class AEnumClasskind
418 super AClasskind
419 readable var _n_kwenum: TKwenum
420 end
421 class AExternClasskind
422 super AClasskind
423 readable var _n_kwextern: TKwextern
424 end
425 class AFormaldef
426 super AFormaldef
427 readable var _n_id: TClassid
428 readable var _n_type: nullable AType = null
429 end
430 class ASuperclass
431 super ASuperclass
432 readable var _n_kwspecial: nullable TKwspecial = null
433 readable var _n_kwsuper: nullable TKwsuper = null
434 readable var _n_type: AType
435 end
436 class AAttrPropdef
437 super APropdef
438 readable var _n_doc: nullable ADoc = null
439 readable var _n_readable: nullable AAble = null
440 readable var _n_writable: nullable AAble = null
441 readable var _n_kwredef: nullable TKwredef = null
442 readable var _n_visibility: AVisibility
443 readable var _n_kwvar: TKwvar
444 readable var _n_id: nullable TAttrid = null
445 readable var _n_id2: nullable TId = null
446 readable var _n_type: nullable AType = null
447 readable var _n_expr: nullable AExpr = null
448 end
449 class AMethPropdef
450 super APropdef
451 readable var _n_doc: nullable ADoc = null
452 readable var _n_kwredef: nullable TKwredef = null
453 readable var _n_visibility: AVisibility
454 readable var _n_methid: AMethid
455 readable var _n_signature: ASignature
456 end
457 class ADeferredMethPropdef
458 super APropdef
459 readable var _n_doc: nullable ADoc = null
460 readable var _n_kwredef: nullable TKwredef = null
461 readable var _n_visibility: AVisibility
462 readable var _n_kwmeth: TKwmeth
463 readable var _n_methid: AMethid
464 readable var _n_signature: ASignature
465 end
466 class AInternMethPropdef
467 super APropdef
468 readable var _n_doc: nullable ADoc = null
469 readable var _n_kwredef: nullable TKwredef = null
470 readable var _n_visibility: AVisibility
471 readable var _n_kwmeth: TKwmeth
472 readable var _n_methid: AMethid
473 readable var _n_signature: ASignature
474 end
475 class AExternMethPropdef
476 super APropdef
477 readable var _n_doc: nullable ADoc = null
478 readable var _n_kwredef: nullable TKwredef = null
479 readable var _n_visibility: AVisibility
480 readable var _n_kwmeth: TKwmeth
481 readable var _n_methid: AMethid
482 readable var _n_signature: ASignature
483 readable var _n_extern: nullable TString = null
484 readable var _n_extern_calls: nullable AExternCalls = null
485 readable var _n_extern_code_block: nullable AExternCodeBlock = null
486 end
487 class AConcreteMethPropdef
488 super APropdef
489 readable var _n_doc: nullable ADoc = null
490 readable var _n_kwredef: nullable TKwredef = null
491 readable var _n_visibility: AVisibility
492 readable var _n_kwmeth: TKwmeth
493 readable var _n_methid: AMethid
494 readable var _n_signature: ASignature
495 readable var _n_block: nullable AExpr = null
496 end
497 class AConcreteInitPropdef
498 super APropdef
499 readable var _n_doc: nullable ADoc = null
500 readable var _n_kwredef: nullable TKwredef = null
501 readable var _n_visibility: AVisibility
502 readable var _n_kwinit: TKwinit
503 readable var _n_methid: nullable AMethid = null
504 readable var _n_signature: ASignature
505 readable var _n_block: nullable AExpr = null
506 end
507 class AExternInitPropdef
508 super APropdef
509 readable var _n_doc: nullable ADoc = null
510 readable var _n_kwredef: nullable TKwredef = null
511 readable var _n_visibility: AVisibility
512 readable var _n_kwnew: TKwnew
513 readable var _n_methid: nullable AMethid = null
514 readable var _n_signature: ASignature
515 readable var _n_extern: nullable TString = null
516 readable var _n_extern_calls: nullable AExternCalls = null
517 readable var _n_extern_code_block: nullable AExternCodeBlock = null
518 end
519 class AMainMethPropdef
520 super APropdef
521 readable var _n_kwredef: nullable TKwredef = null
522 readable var _n_block: nullable AExpr = null
523 end
524 class ATypePropdef
525 super APropdef
526 readable var _n_doc: nullable ADoc = null
527 readable var _n_kwredef: nullable TKwredef = null
528 readable var _n_visibility: AVisibility
529 readable var _n_kwtype: TKwtype
530 readable var _n_id: TClassid
531 readable var _n_type: AType
532 end
533 class AReadAble
534 super AAble
535 readable var _n_kwredef: nullable TKwredef = null
536 readable var _n_kwreadable: TKwreadable
537 end
538 class AWriteAble
539 super AAble
540 readable var _n_kwredef: nullable TKwredef = null
541 readable var _n_visibility: nullable AVisibility = null
542 readable var _n_kwwritable: TKwwritable
543 end
544 class AIdMethid
545 super AMethid
546 readable var _n_id: TId
547 end
548 class APlusMethid
549 super AMethid
550 readable var _n_plus: TPlus
551 end
552 class AMinusMethid
553 super AMethid
554 readable var _n_minus: TMinus
555 end
556 class AStarMethid
557 super AMethid
558 readable var _n_star: TStar
559 end
560 class ASlashMethid
561 super AMethid
562 readable var _n_slash: TSlash
563 end
564 class APercentMethid
565 super AMethid
566 readable var _n_percent: TPercent
567 end
568 class AEqMethid
569 super AMethid
570 readable var _n_eq: TEq
571 end
572 class ANeMethid
573 super AMethid
574 readable var _n_ne: TNe
575 end
576 class ALeMethid
577 super AMethid
578 readable var _n_le: TLe
579 end
580 class AGeMethid
581 super AMethid
582 readable var _n_ge: TGe
583 end
584 class ALtMethid
585 super AMethid
586 readable var _n_lt: TLt
587 end
588 class AGtMethid
589 super AMethid
590 readable var _n_gt: TGt
591 end
592 class ALlMethid
593 super AMethid
594 readable var _n_ll: TLl
595 end
596 class AGgMethid
597 super AMethid
598 readable var _n_gg: TGg
599 end
600 class ABraMethid
601 super AMethid
602 readable var _n_obra: TObra
603 readable var _n_cbra: TCbra
604 end
605 class AStarshipMethid
606 super AMethid
607 readable var _n_starship: TStarship
608 end
609 class AAssignMethid
610 super AMethid
611 readable var _n_id: TId
612 readable var _n_assign: TAssign
613 end
614 class ABraassignMethid
615 super AMethid
616 readable var _n_obra: TObra
617 readable var _n_cbra: TCbra
618 readable var _n_assign: TAssign
619 end
620 class ASignature
621 super ASignature
622 readable var _n_opar: nullable TOpar = null
623 readable var _n_params: List[AParam] = new List[AParam]
624 readable var _n_cpar: nullable TCpar = null
625 readable var _n_type: nullable AType = null
626 readable var _n_closure_decls: List[AClosureDecl] = new List[AClosureDecl]
627 end
628 class AParam
629 super AParam
630 readable var _n_id: TId
631 readable var _n_type: nullable AType = null
632 readable var _n_dotdotdot: nullable TDotdotdot = null
633 end
634 class AClosureDecl
635 super AClosureDecl
636 readable var _n_kwbreak: nullable TKwbreak = null
637 readable var _n_bang: TBang
638 readable var _n_id: TId
639 readable var _n_signature: ASignature
640 readable var _n_expr: nullable AExpr = null
641 end
642 class AType
643 super AType
644 readable var _n_kwnullable: nullable TKwnullable = null
645 readable var _n_id: TClassid
646 readable var _n_types: List[AType] = new List[AType]
647 end
648 class ALabel
649 super ALabel
650 readable var _n_kwlabel: TKwlabel
651 readable var _n_id: TId
652 end
653 class ABlockExpr
654 super AExpr
655 readable var _n_expr: List[AExpr] = new List[AExpr]
656 readable var _n_kwend: nullable TKwend = null
657 end
658 class AVardeclExpr
659 super AExpr
660 readable var _n_kwvar: TKwvar
661 readable var _n_id: TId
662 readable var _n_type: nullable AType = null
663 readable var _n_assign: nullable TAssign = null
664 readable var _n_expr: nullable AExpr = null
665 end
666 class AReturnExpr
667 super AExpr
668 readable var _n_kwreturn: nullable TKwreturn = null
669 readable var _n_expr: nullable AExpr = null
670 end
671 class ABreakExpr
672 super AExpr
673 readable var _n_kwbreak: TKwbreak
674 readable var _n_label: nullable ALabel = null
675 readable var _n_expr: nullable AExpr = null
676 end
677 class AAbortExpr
678 super AExpr
679 readable var _n_kwabort: TKwabort
680 end
681 class AContinueExpr
682 super AExpr
683 readable var _n_kwcontinue: nullable TKwcontinue = null
684 readable var _n_label: nullable ALabel = null
685 readable var _n_expr: nullable AExpr = null
686 end
687 class ADoExpr
688 super AExpr
689 readable var _n_kwdo: TKwdo
690 readable var _n_block: nullable AExpr = null
691 readable var _n_label: nullable ALabel = null
692 end
693 class AIfExpr
694 super AExpr
695 readable var _n_kwif: TKwif
696 readable var _n_expr: AExpr
697 readable var _n_then: nullable AExpr = null
698 readable var _n_else: nullable AExpr = null
699 end
700 class AIfexprExpr
701 super AExpr
702 readable var _n_kwif: TKwif
703 readable var _n_expr: AExpr
704 readable var _n_kwthen: TKwthen
705 readable var _n_then: AExpr
706 readable var _n_kwelse: TKwelse
707 readable var _n_else: AExpr
708 end
709 class AWhileExpr
710 super AExpr
711 readable var _n_kwwhile: TKwwhile
712 readable var _n_expr: AExpr
713 readable var _n_kwdo: TKwdo
714 readable var _n_block: nullable AExpr = null
715 readable var _n_label: nullable ALabel = null
716 end
717 class ALoopExpr
718 super AExpr
719 readable var _n_kwloop: TKwloop
720 readable var _n_block: nullable AExpr = null
721 readable var _n_label: nullable ALabel = null
722 end
723 class AForExpr
724 super AExpr
725 readable var _n_kwfor: TKwfor
726 readable var _n_ids: List[TId] = new List[TId]
727 readable var _n_expr: AExpr
728 readable var _n_kwdo: TKwdo
729 readable var _n_block: nullable AExpr = null
730 readable var _n_label: nullable ALabel = null
731 end
732 class AAssertExpr
733 super AExpr
734 readable var _n_kwassert: TKwassert
735 readable var _n_id: nullable TId = null
736 readable var _n_expr: AExpr
737 readable var _n_else: nullable AExpr = null
738 end
739 class AOnceExpr
740 super AExpr
741 readable var _n_kwonce: TKwonce
742 readable var _n_expr: AExpr
743 end
744 class ASendExpr
745 super AExpr
746 readable var _n_expr: AExpr
747 end
748 class ABinopExpr
749 super AExpr
750 readable var _n_expr: AExpr
751 readable var _n_expr2: AExpr
752 end
753 class AOrExpr
754 super AExpr
755 readable var _n_expr: AExpr
756 readable var _n_expr2: AExpr
757 end
758 class AAndExpr
759 super AExpr
760 readable var _n_expr: AExpr
761 readable var _n_expr2: AExpr
762 end
763 class AOrElseExpr
764 super AExpr
765 readable var _n_expr: AExpr
766 readable var _n_expr2: AExpr
767 end
768 class ANotExpr
769 super AExpr
770 readable var _n_kwnot: TKwnot
771 readable var _n_expr: AExpr
772 end
773 class AEqExpr
774 super AExpr
775 readable var _n_expr: AExpr
776 readable var _n_expr2: AExpr
777 end
778 class AEeExpr
779 super AExpr
780 readable var _n_expr: AExpr
781 readable var _n_expr2: AExpr
782 end
783 class ANeExpr
784 super AExpr
785 readable var _n_expr: AExpr
786 readable var _n_expr2: AExpr
787 end
788 class ALtExpr
789 super AExpr
790 readable var _n_expr: AExpr
791 readable var _n_expr2: AExpr
792 end
793 class ALeExpr
794 super AExpr
795 readable var _n_expr: AExpr
796 readable var _n_expr2: AExpr
797 end
798 class ALlExpr
799 super AExpr
800 readable var _n_expr: AExpr
801 readable var _n_expr2: AExpr
802 end
803 class AGtExpr
804 super AExpr
805 readable var _n_expr: AExpr
806 readable var _n_expr2: AExpr
807 end
808 class AGeExpr
809 super AExpr
810 readable var _n_expr: AExpr
811 readable var _n_expr2: AExpr
812 end
813 class AGgExpr
814 super AExpr
815 readable var _n_expr: AExpr
816 readable var _n_expr2: AExpr
817 end
818 class AIsaExpr
819 super AExpr
820 readable var _n_expr: AExpr
821 readable var _n_type: AType
822 end
823 class APlusExpr
824 super AExpr
825 readable var _n_expr: AExpr
826 readable var _n_expr2: AExpr
827 end
828 class AMinusExpr
829 super AExpr
830 readable var _n_expr: AExpr
831 readable var _n_expr2: AExpr
832 end
833 class AStarshipExpr
834 super AExpr
835 readable var _n_expr: AExpr
836 readable var _n_expr2: AExpr
837 end
838 class AStarExpr
839 super AExpr
840 readable var _n_expr: AExpr
841 readable var _n_expr2: AExpr
842 end
843 class ASlashExpr
844 super AExpr
845 readable var _n_expr: AExpr
846 readable var _n_expr2: AExpr
847 end
848 class APercentExpr
849 super AExpr
850 readable var _n_expr: AExpr
851 readable var _n_expr2: AExpr
852 end
853 class AUminusExpr
854 super AExpr
855 readable var _n_minus: TMinus
856 readable var _n_expr: AExpr
857 end
858 class ANewExpr
859 super AExpr
860 readable var _n_kwnew: TKwnew
861 readable var _n_type: AType
862 readable var _n_id: nullable TId = null
863 readable var _n_args: AExprs
864 end
865 class AAttrExpr
866 super AExpr
867 readable var _n_expr: AExpr
868 readable var _n_id: TAttrid
869 end
870 class AAttrAssignExpr
871 super AExpr
872 readable var _n_expr: AExpr
873 readable var _n_id: TAttrid
874 readable var _n_assign: TAssign
875 readable var _n_value: AExpr
876 end
877 class AAttrReassignExpr
878 super AExpr
879 readable var _n_expr: AExpr
880 readable var _n_id: TAttrid
881 readable var _n_assign_op: AAssignOp
882 readable var _n_value: AExpr
883 end
884 class ACallExpr
885 super AExpr
886 readable var _n_expr: AExpr
887 readable var _n_id: TId
888 readable var _n_args: AExprs
889 readable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
890 end
891 class ACallAssignExpr
892 super AExpr
893 readable var _n_expr: AExpr
894 readable var _n_id: TId
895 readable var _n_args: AExprs
896 readable var _n_assign: TAssign
897 readable var _n_value: AExpr
898 end
899 class ACallReassignExpr
900 super AExpr
901 readable var _n_expr: AExpr
902 readable var _n_id: TId
903 readable var _n_args: AExprs
904 readable var _n_assign_op: AAssignOp
905 readable var _n_value: AExpr
906 end
907 class ASuperExpr
908 super AExpr
909 readable var _n_qualified: nullable AQualified = null
910 readable var _n_kwsuper: TKwsuper
911 readable var _n_args: AExprs
912 end
913 class AInitExpr
914 super AExpr
915 readable var _n_expr: AExpr
916 readable var _n_kwinit: TKwinit
917 readable var _n_args: AExprs
918 end
919 class ABraExpr
920 super AExpr
921 readable var _n_expr: AExpr
922 readable var _n_args: AExprs
923 readable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
924 end
925 class ABraAssignExpr
926 super AExpr
927 readable var _n_expr: AExpr
928 readable var _n_args: AExprs
929 readable var _n_assign: TAssign
930 readable var _n_value: AExpr
931 end
932 class ABraReassignExpr
933 super AExpr
934 readable var _n_expr: AExpr
935 readable var _n_args: AExprs
936 readable var _n_assign_op: AAssignOp
937 readable var _n_value: AExpr
938 end
939 class AClosureCallExpr
940 super AExpr
941 readable var _n_id: TId
942 readable var _n_args: AExprs
943 readable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
944 end
945 class AVarExpr
946 super AExpr
947 readable var _n_id: TId
948 end
949 class AVarAssignExpr
950 super AExpr
951 readable var _n_id: TId
952 readable var _n_assign: TAssign
953 readable var _n_value: AExpr
954 end
955 class AVarReassignExpr
956 super AExpr
957 readable var _n_id: TId
958 readable var _n_assign_op: AAssignOp
959 readable var _n_value: AExpr
960 end
961 class ARangeExpr
962 super AExpr
963 readable var _n_expr: AExpr
964 readable var _n_expr2: AExpr
965 end
966 class ACrangeExpr
967 super AExpr
968 readable var _n_obra: TObra
969 readable var _n_expr: AExpr
970 readable var _n_expr2: AExpr
971 readable var _n_cbra: TCbra
972 end
973 class AOrangeExpr
974 super AExpr
975 readable var _n_obra: TObra
976 readable var _n_expr: AExpr
977 readable var _n_expr2: AExpr
978 readable var _n_cbra: TObra
979 end
980 class AArrayExpr
981 super AExpr
982 readable var _n_exprs: AExprs
983 end
984 class ASelfExpr
985 super AExpr
986 readable var _n_kwself: TKwself
987 end
988 class AImplicitSelfExpr
989 super AExpr
990 end
991 class ATrueExpr
992 super AExpr
993 readable var _n_kwtrue: TKwtrue
994 end
995 class AFalseExpr
996 super AExpr
997 readable var _n_kwfalse: TKwfalse
998 end
999 class ANullExpr
1000 super AExpr
1001 readable var _n_kwnull: TKwnull
1002 end
1003 class AIntExpr
1004 super AExpr
1005 readable var _n_number: TNumber
1006 end
1007 class AFloatExpr
1008 super AExpr
1009 readable var _n_float: TFloat
1010 end
1011 class ACharExpr
1012 super AExpr
1013 readable var _n_char: TChar
1014 end
1015 class AStringExpr
1016 super AExpr
1017 readable var _n_string: TString
1018 end
1019 class AStartStringExpr
1020 super AExpr
1021 readable var _n_string: TStartString
1022 end
1023 class AMidStringExpr
1024 super AExpr
1025 readable var _n_string: TMidString
1026 end
1027 class AEndStringExpr
1028 super AExpr
1029 readable var _n_string: TEndString
1030 end
1031 class ASuperstringExpr
1032 super AExpr
1033 readable var _n_exprs: List[AExpr] = new List[AExpr]
1034 end
1035 class AParExpr
1036 super AExpr
1037 readable var _n_opar: TOpar
1038 readable var _n_expr: AExpr
1039 readable var _n_cpar: TCpar
1040 end
1041 class AAsCastExpr
1042 super AExpr
1043 readable var _n_expr: AExpr
1044 readable var _n_kwas: TKwas
1045 readable var _n_opar: TOpar
1046 readable var _n_type: AType
1047 readable var _n_cpar: TCpar
1048 end
1049 class AAsNotnullExpr
1050 super AExpr
1051 readable var _n_expr: AExpr
1052 readable var _n_kwas: TKwas
1053 readable var _n_opar: TOpar
1054 readable var _n_kwnot: TKwnot
1055 readable var _n_kwnull: TKwnull
1056 readable var _n_cpar: TCpar
1057 end
1058 class AIssetAttrExpr
1059 super AExpr
1060 readable var _n_kwisset: TKwisset
1061 readable var _n_expr: AExpr
1062 readable var _n_id: TAttrid
1063 end
1064 class ADebugTypeExpr
1065 super AExpr
1066 readable var _n_kwdebug: TKwdebug
1067 readable var _n_kwtype: TKwtype
1068 readable var _n_expr: AExpr
1069 readable var _n_type: AType
1070 end
1071 class AListExprs
1072 super AExprs
1073 readable var _n_exprs: List[AExpr] = new List[AExpr]
1074 end
1075 class AParExprs
1076 super AExprs
1077 readable var _n_opar: TOpar
1078 readable var _n_exprs: List[AExpr] = new List[AExpr]
1079 readable var _n_cpar: TCpar
1080 end
1081 class ABraExprs
1082 super AExprs
1083 readable var _n_obra: TObra
1084 readable var _n_exprs: List[AExpr] = new List[AExpr]
1085 readable var _n_cbra: TCbra
1086 end
1087 class APlusAssignOp
1088 super AAssignOp
1089 readable var _n_pluseq: TPluseq
1090 end
1091 class AMinusAssignOp
1092 super AAssignOp
1093 readable var _n_minuseq: TMinuseq
1094 end
1095 class AClosureDef
1096 super AClosureDef
1097 readable var _n_bang: TBang
1098 readable var _n_id: AClosureId
1099 readable var _n_ids: List[TId] = new List[TId]
1100 readable var _n_kwdo: nullable TKwdo = null
1101 readable var _n_expr: nullable AExpr = null
1102 readable var _n_label: nullable ALabel = null
1103 end
1104 class ASimpleClosureId
1105 super AClosureId
1106 readable var _n_id: TId
1107 end
1108 class ABreakClosureId
1109 super AClosureId
1110 readable var _n_kwbreak: TKwbreak
1111 end
1112 class AModuleName
1113 super AModuleName
1114 readable var _n_quad: nullable TQuad = null
1115 readable var _n_path: List[TId] = new List[TId]
1116 readable var _n_id: TId
1117 end
1118 class AExternCalls
1119 super AExternCalls
1120 readable var _n_kwimport: TKwimport
1121 readable var _n_extern_calls: List[AExternCall] = new List[AExternCall]
1122 end
1123 class AExternCall
1124 super AExternCall
1125 end
1126 class ASuperExternCall
1127 super AExternCall
1128 readable var _n_kwsuper: TKwsuper
1129 end
1130 class ALocalPropExternCall
1131 super AExternCall
1132 readable var _n_methid: AMethid
1133 end
1134 class AFullPropExternCall
1135 super AExternCall
1136 readable var _n_classid: TClassid
1137 readable var _n_quad: nullable TQuad = null
1138 readable var _n_methid: AMethid
1139 end
1140 class AInitPropExternCall
1141 super AExternCall
1142 readable var _n_classid: TClassid
1143 end
1144 class ACastAsExternCall
1145 super AExternCall
1146 readable var _n_from_type: AType
1147 readable var _n_kwas: TKwas
1148 readable var _n_to_type: AType
1149 end
1150 class AAsNullableExternCall
1151 super AExternCall
1152 readable var _n_type: AType
1153 readable var _n_kwas: TKwas
1154 readable var _n_kwnullable: TKwnullable
1155 end
1156 class AAsNotNullableExternCall
1157 super AExternCall
1158 readable var _n_type: AType
1159 readable var _n_kwas: TKwas
1160 readable var _n_kwnot: TKwnot
1161 readable var _n_kwnullable: TKwnullable
1162 end
1163 class AInLanguage
1164 super AInLanguage
1165 readable var _n_kwin: TKwin
1166 readable var _n_string: TString
1167 end
1168 class AExternCodeBlock
1169 super AExternCodeBlock
1170 readable var _n_in_language: nullable AInLanguage = null
1171 readable var _n_extern_code_segment: TExternCodeSegment
1172 end
1173 class AQualified
1174 super AQualified
1175 readable var _n_id: List[TId] = new List[TId]
1176 readable var _n_classid: nullable TClassid = null
1177 end
1178 class ADoc
1179 super ADoc
1180 readable var _n_comment: List[TComment] = new List[TComment]
1181 end
1182
1183 class Start
1184 super Prod
1185 readable var _n_base: nullable AModule
1186 readable var _n_eof: EOF
1187 init(
1188 n_base: nullable AModule,
1189 n_eof: EOF)
1190 do
1191 _n_base = n_base
1192 _n_eof = n_eof
1193 end
1194
1195 end