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
405 readable var _n_id
: TClassid
406 readable var _n_type
: nullable AType = null
410 readable var _n_kwspecial
: nullable TKwspecial = null
411 readable var _n_kwsuper
: nullable TKwsuper = null
412 readable var _n_type
: AType
416 readable var _n_doc
: nullable ADoc = null
417 readable var _n_readable
: nullable AAble = null
418 readable var _n_writable
: nullable AAble = null
419 readable var _n_kwredef
: nullable TKwredef = null
420 readable var _n_visibility
: AVisibility
421 readable var _n_kwvar
: TKwvar
422 readable var _n_id
: nullable TAttrid = null
423 readable var _n_id2
: nullable TId = null
424 readable var _n_type
: nullable AType = null
425 readable var _n_expr
: nullable AExpr = null
429 readable var _n_doc
: nullable ADoc = null
430 readable var _n_kwredef
: nullable TKwredef = null
431 readable var _n_visibility
: AVisibility
432 readable var _n_methid
: AMethid
433 readable var _n_signature
: ASignature
435 class ADeferredMethPropdef
437 readable var _n_doc
: nullable ADoc = null
438 readable var _n_kwredef
: nullable TKwredef = null
439 readable var _n_visibility
: AVisibility
440 readable var _n_kwmeth
: TKwmeth
441 readable var _n_methid
: AMethid
442 readable var _n_signature
: ASignature
444 class AInternMethPropdef
446 readable var _n_doc
: nullable ADoc = null
447 readable var _n_kwredef
: nullable TKwredef = null
448 readable var _n_visibility
: AVisibility
449 readable var _n_kwmeth
: TKwmeth
450 readable var _n_methid
: AMethid
451 readable var _n_signature
: ASignature
453 class AExternMethPropdef
455 readable var _n_doc
: nullable ADoc = null
456 readable var _n_kwredef
: nullable TKwredef = null
457 readable var _n_visibility
: AVisibility
458 readable var _n_kwmeth
: TKwmeth
459 readable var _n_methid
: AMethid
460 readable var _n_signature
: ASignature
461 readable var _n_extern
: nullable TString = null
462 readable var _n_extern_calls
: nullable AExternCalls = null
464 class AConcreteMethPropdef
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_block
: nullable AExpr = null
474 class AConcreteInitPropdef
476 readable var _n_doc
: nullable ADoc = null
477 readable var _n_kwredef
: nullable TKwredef = null
478 readable var _n_visibility
: AVisibility
479 readable var _n_kwinit
: TKwinit
480 readable var _n_methid
: nullable AMethid = null
481 readable var _n_signature
: ASignature
482 readable var _n_block
: nullable AExpr = null
484 class AMainMethPropdef
486 readable var _n_kwredef
: nullable TKwredef = null
487 readable var _n_block
: nullable AExpr = null
491 readable var _n_doc
: nullable ADoc = null
492 readable var _n_kwredef
: nullable TKwredef = null
493 readable var _n_visibility
: AVisibility
494 readable var _n_kwtype
: TKwtype
495 readable var _n_id
: TClassid
496 readable var _n_type
: AType
500 readable var _n_kwredef
: nullable TKwredef = null
501 readable var _n_kwreadable
: TKwreadable
505 readable var _n_kwredef
: nullable TKwredef = null
506 readable var _n_visibility
: nullable AVisibility = null
507 readable var _n_kwwritable
: TKwwritable
511 readable var _n_id
: TId
515 readable var _n_plus
: TPlus
519 readable var _n_minus
: TMinus
523 readable var _n_star
: TStar
527 readable var _n_slash
: TSlash
531 readable var _n_percent
: TPercent
535 readable var _n_eq
: TEq
539 readable var _n_ne
: TNe
543 readable var _n_le
: TLe
547 readable var _n_ge
: TGe
551 readable var _n_lt
: TLt
555 readable var _n_gt
: TGt
559 readable var _n_ll
: TLl
563 readable var _n_gg
: TGg
567 readable var _n_obra
: TObra
568 readable var _n_cbra
: TCbra
570 class AStarshipMethid
572 readable var _n_starship
: TStarship
576 readable var _n_id
: TId
577 readable var _n_assign
: TAssign
579 class ABraassignMethid
581 readable var _n_obra
: TObra
582 readable var _n_cbra
: TCbra
583 readable var _n_assign
: TAssign
587 readable var _n_params
: List[AParam] = new List[AParam]
588 readable var _n_type
: nullable AType = null
589 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
593 readable var _n_id
: TId
594 readable var _n_type
: nullable AType = null
595 readable var _n_dotdotdot
: nullable TDotdotdot = null
599 readable var _n_kwbreak
: nullable TKwbreak = null
600 readable var _n_bang
: TBang
601 readable var _n_id
: TId
602 readable var _n_signature
: ASignature
603 readable var _n_expr
: nullable AExpr = null
607 readable var _n_kwnullable
: nullable TKwnullable = null
608 readable var _n_id
: TClassid
609 readable var _n_types
: List[AType] = new List[AType]
613 readable var _n_kwlabel
: TKwlabel
614 readable var _n_id
: TId
618 readable var _n_expr
: List[AExpr] = new List[AExpr]
622 readable var _n_kwvar
: TKwvar
623 readable var _n_id
: TId
624 readable var _n_type
: nullable AType = null
625 readable var _n_assign
: nullable TAssign = null
626 readable var _n_expr
: nullable AExpr = null
630 readable var _n_kwreturn
: nullable TKwreturn = null
631 readable var _n_expr
: nullable AExpr = null
635 readable var _n_kwbreak
: TKwbreak
636 readable var _n_label
: nullable ALabel = null
637 readable var _n_expr
: nullable AExpr = null
641 readable var _n_kwabort
: TKwabort
645 readable var _n_kwcontinue
: nullable TKwcontinue = null
646 readable var _n_label
: nullable ALabel = null
647 readable var _n_expr
: nullable AExpr = null
651 readable var _n_kwdo
: TKwdo
652 readable var _n_block
: nullable AExpr = null
653 readable var _n_label
: nullable ALabel = null
657 readable var _n_kwif
: TKwif
658 readable var _n_expr
: AExpr
659 readable var _n_then
: nullable AExpr = null
660 readable var _n_else
: nullable AExpr = null
664 readable var _n_kwif
: TKwif
665 readable var _n_expr
: AExpr
666 readable var _n_kwthen
: TKwthen
667 readable var _n_then
: AExpr
668 readable var _n_kwelse
: TKwelse
669 readable var _n_else
: AExpr
673 readable var _n_kwwhile
: TKwwhile
674 readable var _n_expr
: AExpr
675 readable var _n_kwdo
: TKwdo
676 readable var _n_block
: nullable AExpr = null
677 readable var _n_label
: nullable ALabel = null
681 readable var _n_kwloop
: TKwloop
682 readable var _n_block
: nullable AExpr = null
683 readable var _n_label
: nullable ALabel = null
687 readable var _n_kwfor
: TKwfor
688 readable var _n_ids
: List[TId] = new List[TId]
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_kwassert
: TKwassert
697 readable var _n_id
: nullable TId = null
698 readable var _n_expr
: AExpr
699 readable var _n_else
: nullable AExpr = null
703 readable var _n_kwonce
: TKwonce
704 readable var _n_expr
: AExpr
708 readable var _n_expr
: AExpr
712 readable var _n_expr
: AExpr
713 readable var _n_expr2
: AExpr
717 readable var _n_expr
: AExpr
718 readable var _n_expr2
: AExpr
722 readable var _n_expr
: AExpr
723 readable var _n_expr2
: AExpr
727 readable var _n_expr
: AExpr
728 readable var _n_expr2
: AExpr
732 readable var _n_kwnot
: TKwnot
733 readable var _n_expr
: 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_expr
: AExpr
748 readable var _n_expr2
: 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_type
: AType
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_expr2
: AExpr
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_minus
: TMinus
818 readable var _n_expr
: AExpr
822 readable var _n_kwnew
: TKwnew
823 readable var _n_type
: AType
824 readable var _n_id
: nullable TId = null
825 readable var _n_args
: List[AExpr] = new List[AExpr]
829 readable var _n_expr
: AExpr
830 readable var _n_id
: TAttrid
832 class AAttrAssignExpr
834 readable var _n_expr
: AExpr
835 readable var _n_id
: TAttrid
836 readable var _n_assign
: TAssign
837 readable var _n_value
: AExpr
839 class AAttrReassignExpr
841 readable var _n_expr
: AExpr
842 readable var _n_id
: TAttrid
843 readable var _n_assign_op
: AAssignOp
844 readable var _n_value
: AExpr
848 readable var _n_expr
: AExpr
849 readable var _n_id
: TId
850 readable var _n_args
: List[AExpr] = new List[AExpr]
851 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
853 class ACallAssignExpr
855 readable var _n_expr
: AExpr
856 readable var _n_id
: TId
857 readable var _n_args
: List[AExpr] = new List[AExpr]
858 readable var _n_assign
: TAssign
859 readable var _n_value
: AExpr
861 class ACallReassignExpr
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_assign_op
: AAssignOp
867 readable var _n_value
: AExpr
871 readable var _n_qualified
: nullable AQualified = null
872 readable var _n_kwsuper
: TKwsuper
873 readable var _n_args
: List[AExpr] = new List[AExpr]
877 readable var _n_expr
: AExpr
878 readable var _n_kwinit
: TKwinit
879 readable var _n_args
: List[AExpr] = new List[AExpr]
883 readable var _n_expr
: AExpr
884 readable var _n_args
: List[AExpr] = new List[AExpr]
885 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
889 readable var _n_expr
: AExpr
890 readable var _n_args
: List[AExpr] = new List[AExpr]
891 readable var _n_assign
: TAssign
892 readable var _n_value
: AExpr
894 class ABraReassignExpr
896 readable var _n_expr
: AExpr
897 readable var _n_args
: List[AExpr] = new List[AExpr]
898 readable var _n_assign_op
: AAssignOp
899 readable var _n_value
: AExpr
901 class AClosureCallExpr
903 readable var _n_id
: TId
904 readable var _n_args
: List[AExpr] = new List[AExpr]
905 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
909 readable var _n_id
: TId
913 readable var _n_id
: TId
914 readable var _n_assign
: TAssign
915 readable var _n_value
: AExpr
917 class AVarReassignExpr
919 readable var _n_id
: TId
920 readable var _n_assign_op
: AAssignOp
921 readable var _n_value
: AExpr
925 readable var _n_expr
: AExpr
926 readable var _n_expr2
: AExpr
930 readable var _n_expr
: AExpr
931 readable var _n_expr2
: AExpr
935 readable var _n_expr
: AExpr
936 readable var _n_expr2
: AExpr
940 readable var _n_exprs
: List[AExpr] = new List[AExpr]
944 readable var _n_kwself
: TKwself
946 class AImplicitSelfExpr
951 readable var _n_kwtrue
: TKwtrue
955 readable var _n_kwfalse
: TKwfalse
959 readable var _n_kwnull
: TKwnull
963 readable var _n_number
: TNumber
967 readable var _n_float
: TFloat
971 readable var _n_char
: TChar
975 readable var _n_string
: TString
977 class AStartStringExpr
979 readable var _n_string
: TStartString
983 readable var _n_string
: TMidString
987 readable var _n_string
: TEndString
989 class ASuperstringExpr
991 readable var _n_exprs
: List[AExpr] = new List[AExpr]
995 readable var _n_expr
: AExpr
999 readable var _n_expr
: AExpr
1000 readable var _n_kwas
: TKwas
1001 readable var _n_type
: AType
1003 class AAsNotnullExpr
1005 readable var _n_expr
: AExpr
1006 readable var _n_kwas
: TKwas
1007 readable var _n_kwnot
: TKwnot
1008 readable var _n_kwnull
: TKwnull
1010 class AIssetAttrExpr
1012 readable var _n_kwisset
: TKwisset
1013 readable var _n_expr
: AExpr
1014 readable var _n_id
: TAttrid
1018 readable var _n_pluseq
: TPluseq
1020 class AMinusAssignOp
1022 readable var _n_minuseq
: TMinuseq
1026 readable var _n_bang
: TBang
1027 readable var _n_id
: AClosureId
1028 readable var _n_ids
: List[TId] = new List[TId]
1029 readable var _n_kwdo
: nullable TKwdo = null
1030 readable var _n_expr
: nullable AExpr = null
1031 readable var _n_label
: nullable ALabel = null
1033 class ASimpleClosureId
1035 readable var _n_id
: TId
1037 class ABreakClosureId
1039 readable var _n_kwbreak
: TKwbreak
1043 readable var _n_quad
: nullable TQuad = null
1044 readable var _n_path
: List[TId] = new List[TId]
1045 readable var _n_id
: TId
1049 readable var _n_kwimport
: TKwimport
1050 readable var _n_extern_calls
: List[AExternCall] = new List[AExternCall]
1055 class ASuperExternCall
1057 readable var _n_kwsuper
: TKwsuper
1059 class ALocalPropExternCall
1061 readable var _n_methid
: AMethid
1063 class AFullPropExternCall
1065 readable var _n_classid
: TClassid
1066 readable var _n_quad
: nullable TQuad = null
1067 readable var _n_methid
: AMethid
1069 class AInitPropExternCall
1071 readable var _n_classid
: TClassid
1073 class ACastAsExternCall
1075 readable var _n_from_type
: AType
1076 readable var _n_kwas
: TKwas
1077 readable var _n_to_type
: AType
1079 class AAsNullableExternCall
1081 readable var _n_type
: AType
1082 readable var _n_kwas
: TKwas
1083 readable var _n_kwnullable
: TKwnullable
1085 class AAsNotNullableExternCall
1087 readable var _n_type
: AType
1088 readable var _n_kwas
: TKwas
1089 readable var _n_kwnot
: TKwnot
1090 readable var _n_kwnullable
: TKwnullable
1094 readable var _n_id
: List[TId] = new List[TId]
1095 readable var _n_classid
: nullable TClassid = null
1099 readable var _n_comment
: List[TComment] = new List[TComment]
1104 readable var _n_base
: nullable AModule
1105 readable var _n_eof
: EOF