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
295 private init noinit
do end
299 private init noinit
do end
302 class AModule super Prod end
303 class AModuledecl super Prod end
304 class AImport super Prod end
305 class AVisibility super Prod end
306 class AClassdef super Prod end
307 class AClasskind super Prod end
308 class AFormaldef super Prod end
309 class ASuperclass super Prod end
310 class APropdef super Prod end
311 class AAble super Prod end
312 class AMethid super Prod end
313 class ASignature super Prod end
314 class AParam super Prod end
315 class AClosureDecl super Prod end
316 class AType super Prod end
317 class ALabel super Prod end
318 class AExpr super Prod end
319 class AAssignOp super Prod end
320 class AClosureDef super Prod end
321 class AClosureId super Prod end
322 class AModuleName super Prod end
323 class AExternCalls super Prod end
324 class AExternCall super Prod end
325 class AQualified super Prod end
326 class ADoc super Prod end
330 readable var _n_moduledecl
: nullable AModuledecl = null
331 readable var _n_imports
: List[AImport] = new List[AImport]
332 readable var _n_classdefs
: List[AClassdef] = new List[AClassdef]
336 readable var _n_doc
: nullable ADoc = null
337 readable var _n_kwmodule
: TKwmodule
338 readable var _n_name
: AModuleName
342 readable var _n_visibility
: AVisibility
343 readable var _n_kwimport
: TKwimport
344 readable var _n_name
: AModuleName
348 readable var _n_visibility
: AVisibility
349 readable var _n_kwimport
: TKwimport
350 readable var _n_kwend
: TKwend
352 class APublicVisibility
355 class APrivateVisibility
357 readable var _n_kwprivate
: TKwprivate
359 class AProtectedVisibility
361 readable var _n_kwprotected
: TKwprotected
363 class AIntrudeVisibility
365 readable var _n_kwintrude
: TKwintrude
369 readable var _n_doc
: nullable ADoc = null
370 readable var _n_kwredef
: nullable TKwredef = null
371 readable var _n_visibility
: AVisibility
372 readable var _n_classkind
: AClasskind
373 readable var _n_id
: nullable TClassid = null
374 readable var _n_formaldefs
: List[AFormaldef] = new List[AFormaldef]
375 readable var _n_superclasses
: List[ASuperclass] = new List[ASuperclass]
376 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
380 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
384 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
386 class AConcreteClasskind
388 readable var _n_kwclass
: TKwclass
390 class AAbstractClasskind
392 readable var _n_kwabstract
: TKwabstract
393 readable var _n_kwclass
: TKwclass
395 class AInterfaceClasskind
397 readable var _n_kwinterface
: TKwinterface
401 readable var _n_kwenum
: TKwenum
403 class AExternClasskind
405 readable var _n_kwextern
: TKwextern
409 readable var _n_id
: TClassid
410 readable var _n_type
: nullable AType = null
414 readable var _n_kwspecial
: nullable TKwspecial = null
415 readable var _n_kwsuper
: nullable TKwsuper = null
416 readable var _n_type
: AType
420 readable var _n_doc
: nullable ADoc = null
421 readable var _n_readable
: nullable AAble = null
422 readable var _n_writable
: nullable AAble = null
423 readable var _n_kwredef
: nullable TKwredef = null
424 readable var _n_visibility
: AVisibility
425 readable var _n_kwvar
: TKwvar
426 readable var _n_id
: nullable TAttrid = null
427 readable var _n_id2
: nullable TId = null
428 readable var _n_type
: nullable AType = null
429 readable var _n_expr
: nullable AExpr = null
433 readable var _n_doc
: nullable ADoc = null
434 readable var _n_kwredef
: nullable TKwredef = null
435 readable var _n_visibility
: AVisibility
436 readable var _n_methid
: AMethid
437 readable var _n_signature
: ASignature
439 class ADeferredMethPropdef
441 readable var _n_doc
: nullable ADoc = null
442 readable var _n_kwredef
: nullable TKwredef = null
443 readable var _n_visibility
: AVisibility
444 readable var _n_kwmeth
: TKwmeth
445 readable var _n_methid
: AMethid
446 readable var _n_signature
: ASignature
448 class AInternMethPropdef
450 readable var _n_doc
: nullable ADoc = null
451 readable var _n_kwredef
: nullable TKwredef = null
452 readable var _n_visibility
: AVisibility
453 readable var _n_kwmeth
: TKwmeth
454 readable var _n_methid
: AMethid
455 readable var _n_signature
: ASignature
457 class AExternMethPropdef
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 readable var _n_extern
: nullable TString = null
466 readable var _n_extern_calls
: nullable AExternCalls = null
468 class AConcreteMethPropdef
470 readable var _n_doc
: nullable ADoc = null
471 readable var _n_kwredef
: nullable TKwredef = null
472 readable var _n_visibility
: AVisibility
473 readable var _n_kwmeth
: TKwmeth
474 readable var _n_methid
: AMethid
475 readable var _n_signature
: ASignature
476 readable var _n_block
: nullable AExpr = null
478 class AConcreteInitPropdef
480 readable var _n_doc
: nullable ADoc = null
481 readable var _n_kwredef
: nullable TKwredef = null
482 readable var _n_visibility
: AVisibility
483 readable var _n_kwinit
: TKwinit
484 readable var _n_methid
: nullable AMethid = null
485 readable var _n_signature
: ASignature
486 readable var _n_block
: nullable AExpr = null
488 class AExternInitPropdef
490 readable var _n_doc
: nullable ADoc = null
491 readable var _n_kwredef
: nullable TKwredef = null
492 readable var _n_visibility
: AVisibility
493 readable var _n_kwnew
: TKwnew
494 readable var _n_methid
: nullable AMethid = null
495 readable var _n_signature
: ASignature
496 readable var _n_extern
: nullable TString = null
497 readable var _n_extern_calls
: nullable AExternCalls = null
499 class AMainMethPropdef
501 readable var _n_kwredef
: nullable TKwredef = null
502 readable var _n_block
: nullable AExpr = null
506 readable var _n_doc
: nullable ADoc = null
507 readable var _n_kwredef
: nullable TKwredef = null
508 readable var _n_visibility
: AVisibility
509 readable var _n_kwtype
: TKwtype
510 readable var _n_id
: TClassid
511 readable var _n_type
: AType
515 readable var _n_kwredef
: nullable TKwredef = null
516 readable var _n_kwreadable
: TKwreadable
520 readable var _n_kwredef
: nullable TKwredef = null
521 readable var _n_visibility
: nullable AVisibility = null
522 readable var _n_kwwritable
: TKwwritable
526 readable var _n_id
: TId
530 readable var _n_plus
: TPlus
534 readable var _n_minus
: TMinus
538 readable var _n_star
: TStar
542 readable var _n_slash
: TSlash
546 readable var _n_percent
: TPercent
550 readable var _n_eq
: TEq
554 readable var _n_ne
: TNe
558 readable var _n_le
: TLe
562 readable var _n_ge
: TGe
566 readable var _n_lt
: TLt
570 readable var _n_gt
: TGt
574 readable var _n_ll
: TLl
578 readable var _n_gg
: TGg
582 readable var _n_obra
: TObra
583 readable var _n_cbra
: TCbra
585 class AStarshipMethid
587 readable var _n_starship
: TStarship
591 readable var _n_id
: TId
592 readable var _n_assign
: TAssign
594 class ABraassignMethid
596 readable var _n_obra
: TObra
597 readable var _n_cbra
: TCbra
598 readable var _n_assign
: TAssign
602 readable var _n_params
: List[AParam] = new List[AParam]
603 readable var _n_type
: nullable AType = null
604 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
608 readable var _n_id
: TId
609 readable var _n_type
: nullable AType = null
610 readable var _n_dotdotdot
: nullable TDotdotdot = null
614 readable var _n_kwbreak
: nullable TKwbreak = null
615 readable var _n_bang
: TBang
616 readable var _n_id
: TId
617 readable var _n_signature
: ASignature
618 readable var _n_expr
: nullable AExpr = null
622 readable var _n_kwnullable
: nullable TKwnullable = null
623 readable var _n_id
: TClassid
624 readable var _n_types
: List[AType] = new List[AType]
628 readable var _n_kwlabel
: TKwlabel
629 readable var _n_id
: TId
633 readable var _n_expr
: List[AExpr] = new List[AExpr]
637 readable var _n_kwvar
: TKwvar
638 readable var _n_id
: TId
639 readable var _n_type
: nullable AType = null
640 readable var _n_assign
: nullable TAssign = null
641 readable var _n_expr
: nullable AExpr = null
645 readable var _n_kwreturn
: nullable TKwreturn = null
646 readable var _n_expr
: nullable AExpr = null
650 readable var _n_kwbreak
: TKwbreak
651 readable var _n_label
: nullable ALabel = null
652 readable var _n_expr
: nullable AExpr = null
656 readable var _n_kwabort
: TKwabort
660 readable var _n_kwcontinue
: nullable TKwcontinue = null
661 readable var _n_label
: nullable ALabel = null
662 readable var _n_expr
: nullable AExpr = null
666 readable var _n_kwdo
: TKwdo
667 readable var _n_block
: nullable AExpr = null
668 readable var _n_label
: nullable ALabel = null
672 readable var _n_kwif
: TKwif
673 readable var _n_expr
: AExpr
674 readable var _n_then
: nullable AExpr = null
675 readable var _n_else
: nullable AExpr = null
679 readable var _n_kwif
: TKwif
680 readable var _n_expr
: AExpr
681 readable var _n_kwthen
: TKwthen
682 readable var _n_then
: AExpr
683 readable var _n_kwelse
: TKwelse
684 readable var _n_else
: AExpr
688 readable var _n_kwwhile
: TKwwhile
689 readable var _n_expr
: AExpr
690 readable var _n_kwdo
: TKwdo
691 readable var _n_block
: nullable AExpr = null
692 readable var _n_label
: nullable ALabel = null
696 readable var _n_kwloop
: TKwloop
697 readable var _n_block
: nullable AExpr = null
698 readable var _n_label
: nullable ALabel = null
702 readable var _n_kwfor
: TKwfor
703 readable var _n_ids
: List[TId] = new List[TId]
704 readable var _n_expr
: AExpr
705 readable var _n_kwdo
: TKwdo
706 readable var _n_block
: nullable AExpr = null
707 readable var _n_label
: nullable ALabel = null
711 readable var _n_kwassert
: TKwassert
712 readable var _n_id
: nullable TId = null
713 readable var _n_expr
: AExpr
714 readable var _n_else
: nullable AExpr = null
718 readable var _n_kwonce
: TKwonce
719 readable var _n_expr
: AExpr
723 readable var _n_expr
: AExpr
727 readable var _n_expr
: AExpr
728 readable var _n_expr2
: AExpr
732 readable var _n_expr
: AExpr
733 readable var _n_expr2
: AExpr
737 readable var _n_expr
: AExpr
738 readable var _n_expr2
: AExpr
742 readable var _n_expr
: AExpr
743 readable var _n_expr2
: AExpr
747 readable var _n_kwnot
: TKwnot
748 readable var _n_expr
: AExpr
752 readable var _n_expr
: AExpr
753 readable var _n_expr2
: AExpr
757 readable var _n_expr
: AExpr
758 readable var _n_expr2
: AExpr
762 readable var _n_expr
: AExpr
763 readable var _n_expr2
: AExpr
767 readable var _n_expr
: AExpr
768 readable var _n_expr2
: AExpr
772 readable var _n_expr
: AExpr
773 readable var _n_expr2
: AExpr
777 readable var _n_expr
: AExpr
778 readable var _n_expr2
: AExpr
782 readable var _n_expr
: AExpr
783 readable var _n_expr2
: AExpr
787 readable var _n_expr
: AExpr
788 readable var _n_expr2
: AExpr
792 readable var _n_expr
: AExpr
793 readable var _n_expr2
: AExpr
797 readable var _n_expr
: AExpr
798 readable var _n_type
: AType
802 readable var _n_expr
: AExpr
803 readable var _n_expr2
: AExpr
807 readable var _n_expr
: AExpr
808 readable var _n_expr2
: AExpr
812 readable var _n_expr
: AExpr
813 readable var _n_expr2
: AExpr
817 readable var _n_expr
: AExpr
818 readable var _n_expr2
: AExpr
822 readable var _n_expr
: AExpr
823 readable var _n_expr2
: AExpr
827 readable var _n_expr
: AExpr
828 readable var _n_expr2
: AExpr
832 readable var _n_minus
: TMinus
833 readable var _n_expr
: AExpr
837 readable var _n_kwnew
: TKwnew
838 readable var _n_type
: AType
839 readable var _n_id
: nullable TId = null
840 readable var _n_args
: List[AExpr] = new List[AExpr]
844 readable var _n_expr
: AExpr
845 readable var _n_id
: TAttrid
847 class AAttrAssignExpr
849 readable var _n_expr
: AExpr
850 readable var _n_id
: TAttrid
851 readable var _n_assign
: TAssign
852 readable var _n_value
: AExpr
854 class AAttrReassignExpr
856 readable var _n_expr
: AExpr
857 readable var _n_id
: TAttrid
858 readable var _n_assign_op
: AAssignOp
859 readable var _n_value
: AExpr
863 readable var _n_expr
: AExpr
864 readable var _n_id
: TId
865 readable var _n_args
: List[AExpr] = new List[AExpr]
866 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
868 class ACallAssignExpr
870 readable var _n_expr
: AExpr
871 readable var _n_id
: TId
872 readable var _n_args
: List[AExpr] = new List[AExpr]
873 readable var _n_assign
: TAssign
874 readable var _n_value
: AExpr
876 class ACallReassignExpr
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_op
: AAssignOp
882 readable var _n_value
: AExpr
886 readable var _n_qualified
: nullable AQualified = null
887 readable var _n_kwsuper
: TKwsuper
888 readable var _n_args
: List[AExpr] = new List[AExpr]
892 readable var _n_expr
: AExpr
893 readable var _n_kwinit
: TKwinit
894 readable var _n_args
: List[AExpr] = new List[AExpr]
898 readable var _n_expr
: AExpr
899 readable var _n_args
: List[AExpr] = new List[AExpr]
900 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
904 readable var _n_expr
: AExpr
905 readable var _n_args
: List[AExpr] = new List[AExpr]
906 readable var _n_assign
: TAssign
907 readable var _n_value
: AExpr
909 class ABraReassignExpr
911 readable var _n_expr
: AExpr
912 readable var _n_args
: List[AExpr] = new List[AExpr]
913 readable var _n_assign_op
: AAssignOp
914 readable var _n_value
: AExpr
916 class AClosureCallExpr
918 readable var _n_id
: TId
919 readable var _n_args
: List[AExpr] = new List[AExpr]
920 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
924 readable var _n_id
: TId
928 readable var _n_id
: TId
929 readable var _n_assign
: TAssign
930 readable var _n_value
: AExpr
932 class AVarReassignExpr
934 readable var _n_id
: TId
935 readable var _n_assign_op
: AAssignOp
936 readable var _n_value
: AExpr
940 readable var _n_expr
: AExpr
941 readable var _n_expr2
: AExpr
945 readable var _n_expr
: AExpr
946 readable var _n_expr2
: AExpr
950 readable var _n_expr
: AExpr
951 readable var _n_expr2
: AExpr
955 readable var _n_exprs
: List[AExpr] = new List[AExpr]
959 readable var _n_kwself
: TKwself
961 class AImplicitSelfExpr
966 readable var _n_kwtrue
: TKwtrue
970 readable var _n_kwfalse
: TKwfalse
974 readable var _n_kwnull
: TKwnull
978 readable var _n_number
: TNumber
982 readable var _n_float
: TFloat
986 readable var _n_char
: TChar
990 readable var _n_string
: TString
992 class AStartStringExpr
994 readable var _n_string
: TStartString
998 readable var _n_string
: TMidString
1000 class AEndStringExpr
1002 readable var _n_string
: TEndString
1004 class ASuperstringExpr
1006 readable var _n_exprs
: List[AExpr] = new List[AExpr]
1010 readable var _n_expr
: AExpr
1014 readable var _n_expr
: AExpr
1015 readable var _n_kwas
: TKwas
1016 readable var _n_type
: AType
1018 class AAsNotnullExpr
1020 readable var _n_expr
: AExpr
1021 readable var _n_kwas
: TKwas
1022 readable var _n_kwnot
: TKwnot
1023 readable var _n_kwnull
: TKwnull
1025 class AIssetAttrExpr
1027 readable var _n_kwisset
: TKwisset
1028 readable var _n_expr
: AExpr
1029 readable var _n_id
: TAttrid
1033 readable var _n_pluseq
: TPluseq
1035 class AMinusAssignOp
1037 readable var _n_minuseq
: TMinuseq
1041 readable var _n_bang
: TBang
1042 readable var _n_id
: AClosureId
1043 readable var _n_ids
: List[TId] = new List[TId]
1044 readable var _n_kwdo
: nullable TKwdo = null
1045 readable var _n_expr
: nullable AExpr = null
1046 readable var _n_label
: nullable ALabel = null
1048 class ASimpleClosureId
1050 readable var _n_id
: TId
1052 class ABreakClosureId
1054 readable var _n_kwbreak
: TKwbreak
1058 readable var _n_quad
: nullable TQuad = null
1059 readable var _n_path
: List[TId] = new List[TId]
1060 readable var _n_id
: TId
1064 readable var _n_kwimport
: TKwimport
1065 readable var _n_extern_calls
: List[AExternCall] = new List[AExternCall]
1070 class ASuperExternCall
1072 readable var _n_kwsuper
: TKwsuper
1074 class ALocalPropExternCall
1076 readable var _n_methid
: AMethid
1078 class AFullPropExternCall
1080 readable var _n_classid
: TClassid
1081 readable var _n_quad
: nullable TQuad = null
1082 readable var _n_methid
: AMethid
1084 class AInitPropExternCall
1086 readable var _n_classid
: TClassid
1088 class ACastAsExternCall
1090 readable var _n_from_type
: AType
1091 readable var _n_kwas
: TKwas
1092 readable var _n_to_type
: AType
1094 class AAsNullableExternCall
1096 readable var _n_type
: AType
1097 readable var _n_kwas
: TKwas
1098 readable var _n_kwnullable
: TKwnullable
1100 class AAsNotNullableExternCall
1102 readable var _n_type
: AType
1103 readable var _n_kwas
: TKwas
1104 readable var _n_kwnot
: TKwnot
1105 readable var _n_kwnullable
: TKwnullable
1109 readable var _n_id
: List[TId] = new List[TId]
1110 readable var _n_classid
: nullable TClassid = null
1114 readable var _n_comment
: List[TComment] = new List[TComment]
1119 readable var _n_base
: nullable AModule
1120 readable var _n_eof
: EOF