1 # Raw AST node hierarchy.
2 # This file was generated by SableCC (http://www.sablecc.org/).
7 # Root of the AST hierarchy
9 var _location
: nullable Location
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)
16 # Ancestor of all tokens
21 # Ancestor of all productions
24 fun location
=(loc
: Location) do _location
= loc
301 private init noinit
do end
305 private init noinit
do end
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 ASuperclass super Prod end
316 class APropdef super Prod end
317 class AAble super Prod end
318 class AMethid super Prod end
319 class ASignature super Prod end
320 class AParam super Prod end
321 class AClosureDecl super Prod end
322 class AType super Prod end
323 class ALabel super Prod end
324 class AExpr super Prod end
325 class AAssignOp super Prod end
326 class AClosureDef super Prod end
327 class AClosureId super Prod end
328 class AModuleName super Prod end
329 class AExternCalls super Prod end
330 class AExternCall super Prod end
331 class AQualified super Prod end
332 class ADoc super Prod end
336 readable var _n_moduledecl
: nullable AModuledecl = null
337 readable var _n_imports
: List[AImport] = new List[AImport]
338 readable var _n_classdefs
: List[AClassdef] = new List[AClassdef]
342 readable var _n_doc
: nullable ADoc = null
343 readable var _n_kwmodule
: TKwmodule
344 readable var _n_name
: AModuleName
348 readable var _n_visibility
: AVisibility
349 readable var _n_kwimport
: TKwimport
350 readable var _n_name
: AModuleName
354 readable var _n_visibility
: AVisibility
355 readable var _n_kwimport
: TKwimport
356 readable var _n_kwend
: TKwend
358 class APublicVisibility
361 class APrivateVisibility
363 readable var _n_kwprivate
: TKwprivate
365 class AProtectedVisibility
367 readable var _n_kwprotected
: TKwprotected
369 class AIntrudeVisibility
371 readable var _n_kwintrude
: TKwintrude
375 readable var _n_doc
: nullable ADoc = null
376 readable var _n_kwredef
: nullable TKwredef = null
377 readable var _n_visibility
: AVisibility
378 readable var _n_classkind
: AClasskind
379 readable var _n_id
: nullable TClassid = null
380 readable var _n_formaldefs
: List[AFormaldef] = new List[AFormaldef]
381 readable var _n_superclasses
: List[ASuperclass] = new List[ASuperclass]
382 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
383 readable var _n_kwend
: TKwend
387 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
391 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
393 class AConcreteClasskind
395 readable var _n_kwclass
: TKwclass
397 class AAbstractClasskind
399 readable var _n_kwabstract
: TKwabstract
400 readable var _n_kwclass
: TKwclass
402 class AInterfaceClasskind
404 readable var _n_kwinterface
: TKwinterface
408 readable var _n_kwenum
: TKwenum
410 class AExternClasskind
412 readable var _n_kwextern
: TKwextern
416 readable var _n_id
: TClassid
417 readable var _n_type
: nullable AType = null
421 readable var _n_kwspecial
: nullable TKwspecial = null
422 readable var _n_kwsuper
: nullable TKwsuper = null
423 readable var _n_type
: AType
427 readable var _n_doc
: nullable ADoc = null
428 readable var _n_readable
: nullable AAble = null
429 readable var _n_writable
: nullable AAble = null
430 readable var _n_kwredef
: nullable TKwredef = null
431 readable var _n_visibility
: AVisibility
432 readable var _n_kwvar
: TKwvar
433 readable var _n_id
: nullable TAttrid = null
434 readable var _n_id2
: nullable TId = null
435 readable var _n_type
: nullable AType = null
436 readable var _n_expr
: nullable AExpr = null
440 readable var _n_doc
: nullable ADoc = null
441 readable var _n_kwredef
: nullable TKwredef = null
442 readable var _n_visibility
: AVisibility
443 readable var _n_methid
: AMethid
444 readable var _n_signature
: ASignature
446 class ADeferredMethPropdef
448 readable var _n_doc
: nullable ADoc = null
449 readable var _n_kwredef
: nullable TKwredef = null
450 readable var _n_visibility
: AVisibility
451 readable var _n_kwmeth
: TKwmeth
452 readable var _n_methid
: AMethid
453 readable var _n_signature
: ASignature
455 class AInternMethPropdef
457 readable var _n_doc
: nullable ADoc = null
458 readable var _n_kwredef
: nullable TKwredef = null
459 readable var _n_visibility
: AVisibility
460 readable var _n_kwmeth
: TKwmeth
461 readable var _n_methid
: AMethid
462 readable var _n_signature
: ASignature
464 class AExternMethPropdef
466 readable var _n_doc
: nullable ADoc = null
467 readable var _n_kwredef
: nullable TKwredef = null
468 readable var _n_visibility
: AVisibility
469 readable var _n_kwmeth
: TKwmeth
470 readable var _n_methid
: AMethid
471 readable var _n_signature
: ASignature
472 readable var _n_extern
: nullable TString = null
473 readable var _n_extern_calls
: nullable AExternCalls = null
475 class AConcreteMethPropdef
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_block
: nullable AExpr = null
485 class AConcreteInitPropdef
487 readable var _n_doc
: nullable ADoc = null
488 readable var _n_kwredef
: nullable TKwredef = null
489 readable var _n_visibility
: AVisibility
490 readable var _n_kwinit
: TKwinit
491 readable var _n_methid
: nullable AMethid = null
492 readable var _n_signature
: ASignature
493 readable var _n_block
: nullable AExpr = null
495 class AExternInitPropdef
497 readable var _n_doc
: nullable ADoc = null
498 readable var _n_kwredef
: nullable TKwredef = null
499 readable var _n_visibility
: AVisibility
500 readable var _n_kwnew
: TKwnew
501 readable var _n_methid
: nullable AMethid = null
502 readable var _n_signature
: ASignature
503 readable var _n_extern
: nullable TString = null
504 readable var _n_extern_calls
: nullable AExternCalls = null
506 class AMainMethPropdef
508 readable var _n_kwredef
: nullable TKwredef = null
509 readable var _n_block
: nullable AExpr = null
513 readable var _n_doc
: nullable ADoc = null
514 readable var _n_kwredef
: nullable TKwredef = null
515 readable var _n_visibility
: AVisibility
516 readable var _n_kwtype
: TKwtype
517 readable var _n_id
: TClassid
518 readable var _n_type
: AType
522 readable var _n_kwredef
: nullable TKwredef = null
523 readable var _n_kwreadable
: TKwreadable
527 readable var _n_kwredef
: nullable TKwredef = null
528 readable var _n_visibility
: nullable AVisibility = null
529 readable var _n_kwwritable
: TKwwritable
533 readable var _n_id
: TId
537 readable var _n_plus
: TPlus
541 readable var _n_minus
: TMinus
545 readable var _n_star
: TStar
549 readable var _n_slash
: TSlash
553 readable var _n_percent
: TPercent
557 readable var _n_eq
: TEq
561 readable var _n_ne
: TNe
565 readable var _n_le
: TLe
569 readable var _n_ge
: TGe
573 readable var _n_lt
: TLt
577 readable var _n_gt
: TGt
581 readable var _n_ll
: TLl
585 readable var _n_gg
: TGg
589 readable var _n_obra
: TObra
590 readable var _n_cbra
: TCbra
592 class AStarshipMethid
594 readable var _n_starship
: TStarship
598 readable var _n_id
: TId
599 readable var _n_assign
: TAssign
601 class ABraassignMethid
603 readable var _n_obra
: TObra
604 readable var _n_cbra
: TCbra
605 readable var _n_assign
: TAssign
609 readable var _n_params
: List[AParam] = new List[AParam]
610 readable var _n_type
: nullable AType = null
611 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
615 readable var _n_id
: TId
616 readable var _n_type
: nullable AType = null
617 readable var _n_dotdotdot
: nullable TDotdotdot = null
621 readable var _n_kwbreak
: nullable TKwbreak = null
622 readable var _n_bang
: TBang
623 readable var _n_id
: TId
624 readable var _n_signature
: ASignature
625 readable var _n_expr
: nullable AExpr = null
629 readable var _n_kwnullable
: nullable TKwnullable = null
630 readable var _n_id
: TClassid
631 readable var _n_types
: List[AType] = new List[AType]
635 readable var _n_kwlabel
: TKwlabel
636 readable var _n_id
: TId
640 readable var _n_expr
: List[AExpr] = new List[AExpr]
641 readable var _n_kwend
: nullable TKwend = null
645 readable var _n_kwvar
: TKwvar
646 readable var _n_id
: TId
647 readable var _n_type
: nullable AType = null
648 readable var _n_assign
: nullable TAssign = null
649 readable var _n_expr
: nullable AExpr = null
653 readable var _n_kwreturn
: nullable TKwreturn = null
654 readable var _n_expr
: nullable AExpr = null
658 readable var _n_kwbreak
: TKwbreak
659 readable var _n_label
: nullable ALabel = null
660 readable var _n_expr
: nullable AExpr = null
664 readable var _n_kwabort
: TKwabort
668 readable var _n_kwcontinue
: nullable TKwcontinue = null
669 readable var _n_label
: nullable ALabel = null
670 readable var _n_expr
: nullable AExpr = null
674 readable var _n_kwdo
: TKwdo
675 readable var _n_block
: nullable AExpr = null
676 readable var _n_label
: nullable ALabel = null
680 readable var _n_kwif
: TKwif
681 readable var _n_expr
: AExpr
682 readable var _n_then
: nullable AExpr = null
683 readable var _n_else
: nullable AExpr = null
687 readable var _n_kwif
: TKwif
688 readable var _n_expr
: AExpr
689 readable var _n_kwthen
: TKwthen
690 readable var _n_then
: AExpr
691 readable var _n_kwelse
: TKwelse
692 readable var _n_else
: AExpr
696 readable var _n_kwwhile
: TKwwhile
697 readable var _n_expr
: AExpr
698 readable var _n_kwdo
: TKwdo
699 readable var _n_block
: nullable AExpr = null
700 readable var _n_label
: nullable ALabel = null
704 readable var _n_kwloop
: TKwloop
705 readable var _n_block
: nullable AExpr = null
706 readable var _n_label
: nullable ALabel = null
710 readable var _n_kwfor
: TKwfor
711 readable var _n_ids
: List[TId] = new List[TId]
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
719 readable var _n_kwassert
: TKwassert
720 readable var _n_id
: nullable TId = null
721 readable var _n_expr
: AExpr
722 readable var _n_else
: nullable AExpr = null
726 readable var _n_kwonce
: TKwonce
727 readable var _n_expr
: AExpr
731 readable var _n_expr
: AExpr
735 readable var _n_expr
: AExpr
736 readable var _n_expr2
: AExpr
740 readable var _n_expr
: AExpr
741 readable var _n_expr2
: AExpr
745 readable var _n_expr
: AExpr
746 readable var _n_expr2
: AExpr
750 readable var _n_expr
: AExpr
751 readable var _n_expr2
: AExpr
755 readable var _n_kwnot
: TKwnot
756 readable var _n_expr
: AExpr
760 readable var _n_expr
: AExpr
761 readable var _n_expr2
: AExpr
765 readable var _n_expr
: AExpr
766 readable var _n_expr2
: AExpr
770 readable var _n_expr
: AExpr
771 readable var _n_expr2
: AExpr
775 readable var _n_expr
: AExpr
776 readable var _n_expr2
: AExpr
780 readable var _n_expr
: AExpr
781 readable var _n_expr2
: AExpr
785 readable var _n_expr
: AExpr
786 readable var _n_expr2
: AExpr
790 readable var _n_expr
: AExpr
791 readable var _n_expr2
: AExpr
795 readable var _n_expr
: AExpr
796 readable var _n_expr2
: AExpr
800 readable var _n_expr
: AExpr
801 readable var _n_expr2
: AExpr
805 readable var _n_expr
: AExpr
806 readable var _n_type
: AType
810 readable var _n_expr
: AExpr
811 readable var _n_expr2
: AExpr
815 readable var _n_expr
: AExpr
816 readable var _n_expr2
: AExpr
820 readable var _n_expr
: AExpr
821 readable var _n_expr2
: AExpr
825 readable var _n_expr
: AExpr
826 readable var _n_expr2
: AExpr
830 readable var _n_expr
: AExpr
831 readable var _n_expr2
: AExpr
835 readable var _n_expr
: AExpr
836 readable var _n_expr2
: AExpr
840 readable var _n_minus
: TMinus
841 readable var _n_expr
: AExpr
845 readable var _n_kwnew
: TKwnew
846 readable var _n_type
: AType
847 readable var _n_id
: nullable TId = null
848 readable var _n_args
: List[AExpr] = new List[AExpr]
852 readable var _n_expr
: AExpr
853 readable var _n_id
: TAttrid
855 class AAttrAssignExpr
857 readable var _n_expr
: AExpr
858 readable var _n_id
: TAttrid
859 readable var _n_assign
: TAssign
860 readable var _n_value
: AExpr
862 class AAttrReassignExpr
864 readable var _n_expr
: AExpr
865 readable var _n_id
: TAttrid
866 readable var _n_assign_op
: AAssignOp
867 readable var _n_value
: AExpr
871 readable var _n_expr
: AExpr
872 readable var _n_id
: TId
873 readable var _n_args
: List[AExpr] = new List[AExpr]
874 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
876 class ACallAssignExpr
878 readable var _n_expr
: AExpr
879 readable var _n_id
: TId
880 readable var _n_args
: List[AExpr] = new List[AExpr]
881 readable var _n_assign
: TAssign
882 readable var _n_value
: AExpr
884 class ACallReassignExpr
886 readable var _n_expr
: AExpr
887 readable var _n_id
: TId
888 readable var _n_args
: List[AExpr] = new List[AExpr]
889 readable var _n_assign_op
: AAssignOp
890 readable var _n_value
: AExpr
894 readable var _n_qualified
: nullable AQualified = null
895 readable var _n_kwsuper
: TKwsuper
896 readable var _n_args
: List[AExpr] = new List[AExpr]
900 readable var _n_expr
: AExpr
901 readable var _n_kwinit
: TKwinit
902 readable var _n_args
: List[AExpr] = new List[AExpr]
906 readable var _n_expr
: AExpr
907 readable var _n_args
: List[AExpr] = new List[AExpr]
908 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
912 readable var _n_expr
: AExpr
913 readable var _n_args
: List[AExpr] = new List[AExpr]
914 readable var _n_assign
: TAssign
915 readable var _n_value
: AExpr
917 class ABraReassignExpr
919 readable var _n_expr
: AExpr
920 readable var _n_args
: List[AExpr] = new List[AExpr]
921 readable var _n_assign_op
: AAssignOp
922 readable var _n_value
: AExpr
924 class AClosureCallExpr
926 readable var _n_id
: TId
927 readable var _n_args
: List[AExpr] = new List[AExpr]
928 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
932 readable var _n_id
: TId
936 readable var _n_id
: TId
937 readable var _n_assign
: TAssign
938 readable var _n_value
: AExpr
940 class AVarReassignExpr
942 readable var _n_id
: TId
943 readable var _n_assign_op
: AAssignOp
944 readable var _n_value
: AExpr
948 readable var _n_expr
: AExpr
949 readable var _n_expr2
: AExpr
953 readable var _n_obra
: TObra
954 readable var _n_expr
: AExpr
955 readable var _n_expr2
: AExpr
956 readable var _n_cbra
: TCbra
960 readable var _n_obra
: TObra
961 readable var _n_expr
: AExpr
962 readable var _n_expr2
: AExpr
963 readable var _n_cbra
: TObra
967 readable var _n_exprs
: List[AExpr] = new List[AExpr]
971 readable var _n_kwself
: TKwself
973 class AImplicitSelfExpr
978 readable var _n_kwtrue
: TKwtrue
982 readable var _n_kwfalse
: TKwfalse
986 readable var _n_kwnull
: TKwnull
990 readable var _n_number
: TNumber
994 readable var _n_float
: TFloat
998 readable var _n_char
: TChar
1002 readable var _n_string
: TString
1004 class AStartStringExpr
1006 readable var _n_string
: TStartString
1008 class AMidStringExpr
1010 readable var _n_string
: TMidString
1012 class AEndStringExpr
1014 readable var _n_string
: TEndString
1016 class ASuperstringExpr
1018 readable var _n_exprs
: List[AExpr] = new List[AExpr]
1022 readable var _n_opar
: TOpar
1023 readable var _n_expr
: AExpr
1024 readable var _n_cpar
: TCpar
1028 readable var _n_expr
: AExpr
1029 readable var _n_kwas
: TKwas
1030 readable var _n_opar
: TOpar
1031 readable var _n_type
: AType
1032 readable var _n_cpar
: TCpar
1034 class AAsNotnullExpr
1036 readable var _n_expr
: AExpr
1037 readable var _n_kwas
: TKwas
1038 readable var _n_opar
: TOpar
1039 readable var _n_kwnot
: TKwnot
1040 readable var _n_kwnull
: TKwnull
1041 readable var _n_cpar
: TCpar
1043 class AIssetAttrExpr
1045 readable var _n_kwisset
: TKwisset
1046 readable var _n_expr
: AExpr
1047 readable var _n_id
: TAttrid
1051 readable var _n_pluseq
: TPluseq
1053 class AMinusAssignOp
1055 readable var _n_minuseq
: TMinuseq
1059 readable var _n_bang
: TBang
1060 readable var _n_id
: AClosureId
1061 readable var _n_ids
: List[TId] = new List[TId]
1062 readable var _n_kwdo
: nullable TKwdo = null
1063 readable var _n_expr
: nullable AExpr = null
1064 readable var _n_label
: nullable ALabel = null
1066 class ASimpleClosureId
1068 readable var _n_id
: TId
1070 class ABreakClosureId
1072 readable var _n_kwbreak
: TKwbreak
1076 readable var _n_quad
: nullable TQuad = null
1077 readable var _n_path
: List[TId] = new List[TId]
1078 readable var _n_id
: TId
1082 readable var _n_kwimport
: TKwimport
1083 readable var _n_extern_calls
: List[AExternCall] = new List[AExternCall]
1088 class ASuperExternCall
1090 readable var _n_kwsuper
: TKwsuper
1092 class ALocalPropExternCall
1094 readable var _n_methid
: AMethid
1096 class AFullPropExternCall
1098 readable var _n_classid
: TClassid
1099 readable var _n_quad
: nullable TQuad = null
1100 readable var _n_methid
: AMethid
1102 class AInitPropExternCall
1104 readable var _n_classid
: TClassid
1106 class ACastAsExternCall
1108 readable var _n_from_type
: AType
1109 readable var _n_kwas
: TKwas
1110 readable var _n_to_type
: AType
1112 class AAsNullableExternCall
1114 readable var _n_type
: AType
1115 readable var _n_kwas
: TKwas
1116 readable var _n_kwnullable
: TKwnullable
1118 class AAsNotNullableExternCall
1120 readable var _n_type
: AType
1121 readable var _n_kwas
: TKwas
1122 readable var _n_kwnot
: TKwnot
1123 readable var _n_kwnullable
: TKwnullable
1127 readable var _n_id
: List[TId] = new List[TId]
1128 readable var _n_classid
: nullable TClassid = null
1132 readable var _n_comment
: List[TComment] = new List[TComment]
1137 readable var _n_base
: nullable AModule
1138 readable var _n_eof
: EOF