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 AQualified super Prod end
324 class ADoc super Prod end
328 readable var _n_moduledecl
: nullable AModuledecl = null
329 readable var _n_imports
: List[AImport] = new List[AImport]
330 readable var _n_classdefs
: List[AClassdef] = new List[AClassdef]
334 readable var _n_doc
: nullable ADoc = null
335 readable var _n_kwmodule
: TKwmodule
336 readable var _n_name
: AModuleName
340 readable var _n_visibility
: AVisibility
341 readable var _n_kwimport
: TKwimport
342 readable var _n_name
: AModuleName
346 readable var _n_visibility
: AVisibility
347 readable var _n_kwimport
: TKwimport
348 readable var _n_kwend
: TKwend
350 class APublicVisibility
353 class APrivateVisibility
355 readable var _n_kwprivate
: TKwprivate
357 class AProtectedVisibility
359 readable var _n_kwprotected
: TKwprotected
361 class AIntrudeVisibility
363 readable var _n_kwintrude
: TKwintrude
367 readable var _n_doc
: nullable ADoc = null
368 readable var _n_kwredef
: nullable TKwredef = null
369 readable var _n_visibility
: AVisibility
370 readable var _n_classkind
: AClasskind
371 readable var _n_id
: nullable TClassid = null
372 readable var _n_formaldefs
: List[AFormaldef] = new List[AFormaldef]
373 readable var _n_superclasses
: List[ASuperclass] = new List[ASuperclass]
374 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
378 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
382 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
384 class AConcreteClasskind
386 readable var _n_kwclass
: TKwclass
388 class AAbstractClasskind
390 readable var _n_kwabstract
: TKwabstract
391 readable var _n_kwclass
: TKwclass
393 class AInterfaceClasskind
395 readable var _n_kwinterface
: TKwinterface
399 readable var _n_kwenum
: TKwenum
403 readable var _n_id
: TClassid
404 readable var _n_type
: nullable AType = null
408 readable var _n_kwspecial
: nullable TKwspecial = null
409 readable var _n_kwsuper
: nullable TKwsuper = null
410 readable var _n_type
: AType
414 readable var _n_doc
: nullable ADoc = null
415 readable var _n_readable
: nullable AAble = null
416 readable var _n_writable
: nullable AAble = null
417 readable var _n_kwredef
: nullable TKwredef = null
418 readable var _n_visibility
: AVisibility
419 readable var _n_kwvar
: TKwvar
420 readable var _n_id
: nullable TAttrid = null
421 readable var _n_id2
: nullable TId = null
422 readable var _n_type
: nullable AType = null
423 readable var _n_expr
: nullable AExpr = null
427 readable var _n_doc
: nullable ADoc = null
428 readable var _n_kwredef
: nullable TKwredef = null
429 readable var _n_visibility
: AVisibility
430 readable var _n_methid
: AMethid
431 readable var _n_signature
: ASignature
433 class ADeferredMethPropdef
435 readable var _n_doc
: nullable ADoc = null
436 readable var _n_kwredef
: nullable TKwredef = null
437 readable var _n_visibility
: AVisibility
438 readable var _n_kwmeth
: TKwmeth
439 readable var _n_methid
: AMethid
440 readable var _n_signature
: ASignature
442 class AInternMethPropdef
444 readable var _n_doc
: nullable ADoc = null
445 readable var _n_kwredef
: nullable TKwredef = null
446 readable var _n_visibility
: AVisibility
447 readable var _n_kwmeth
: TKwmeth
448 readable var _n_methid
: AMethid
449 readable var _n_signature
: ASignature
451 class AExternMethPropdef
453 readable var _n_doc
: nullable ADoc = null
454 readable var _n_kwredef
: nullable TKwredef = null
455 readable var _n_visibility
: AVisibility
456 readable var _n_kwmeth
: TKwmeth
457 readable var _n_methid
: AMethid
458 readable var _n_signature
: ASignature
459 readable var _n_extern
: nullable TString = null
461 class AConcreteMethPropdef
463 readable var _n_doc
: nullable ADoc = null
464 readable var _n_kwredef
: nullable TKwredef = null
465 readable var _n_visibility
: AVisibility
466 readable var _n_kwmeth
: TKwmeth
467 readable var _n_methid
: AMethid
468 readable var _n_signature
: ASignature
469 readable var _n_block
: nullable AExpr = null
471 class AConcreteInitPropdef
473 readable var _n_doc
: nullable ADoc = null
474 readable var _n_kwredef
: nullable TKwredef = null
475 readable var _n_visibility
: AVisibility
476 readable var _n_kwinit
: TKwinit
477 readable var _n_methid
: nullable AMethid = null
478 readable var _n_signature
: ASignature
479 readable var _n_block
: nullable AExpr = null
481 class AMainMethPropdef
483 readable var _n_kwredef
: nullable TKwredef = null
484 readable var _n_block
: nullable AExpr = null
488 readable var _n_doc
: nullable ADoc = null
489 readable var _n_kwredef
: nullable TKwredef = null
490 readable var _n_visibility
: AVisibility
491 readable var _n_kwtype
: TKwtype
492 readable var _n_id
: TClassid
493 readable var _n_type
: AType
497 readable var _n_kwredef
: nullable TKwredef = null
498 readable var _n_kwreadable
: TKwreadable
502 readable var _n_kwredef
: nullable TKwredef = null
503 readable var _n_visibility
: nullable AVisibility = null
504 readable var _n_kwwritable
: TKwwritable
508 readable var _n_id
: TId
512 readable var _n_plus
: TPlus
516 readable var _n_minus
: TMinus
520 readable var _n_star
: TStar
524 readable var _n_slash
: TSlash
528 readable var _n_percent
: TPercent
532 readable var _n_eq
: TEq
536 readable var _n_ne
: TNe
540 readable var _n_le
: TLe
544 readable var _n_ge
: TGe
548 readable var _n_lt
: TLt
552 readable var _n_gt
: TGt
556 readable var _n_ll
: TLl
560 readable var _n_gg
: TGg
564 readable var _n_obra
: TObra
565 readable var _n_cbra
: TCbra
567 class AStarshipMethid
569 readable var _n_starship
: TStarship
573 readable var _n_id
: TId
574 readable var _n_assign
: TAssign
576 class ABraassignMethid
578 readable var _n_obra
: TObra
579 readable var _n_cbra
: TCbra
580 readable var _n_assign
: TAssign
584 readable var _n_params
: List[AParam] = new List[AParam]
585 readable var _n_type
: nullable AType = null
586 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
590 readable var _n_id
: TId
591 readable var _n_type
: nullable AType = null
592 readable var _n_dotdotdot
: nullable TDotdotdot = null
596 readable var _n_kwbreak
: nullable TKwbreak = null
597 readable var _n_bang
: TBang
598 readable var _n_id
: TId
599 readable var _n_signature
: ASignature
600 readable var _n_expr
: nullable AExpr = null
604 readable var _n_kwnullable
: nullable TKwnullable = null
605 readable var _n_id
: TClassid
606 readable var _n_types
: List[AType] = new List[AType]
610 readable var _n_kwlabel
: TKwlabel
611 readable var _n_id
: TId
615 readable var _n_expr
: List[AExpr] = new List[AExpr]
619 readable var _n_kwvar
: TKwvar
620 readable var _n_id
: TId
621 readable var _n_type
: nullable AType = null
622 readable var _n_assign
: nullable TAssign = null
623 readable var _n_expr
: nullable AExpr = null
627 readable var _n_kwreturn
: nullable TKwreturn = null
628 readable var _n_expr
: nullable AExpr = null
632 readable var _n_kwbreak
: TKwbreak
633 readable var _n_label
: nullable ALabel = null
634 readable var _n_expr
: nullable AExpr = null
638 readable var _n_kwabort
: TKwabort
642 readable var _n_kwcontinue
: nullable TKwcontinue = null
643 readable var _n_label
: nullable ALabel = null
644 readable var _n_expr
: nullable AExpr = null
648 readable var _n_kwdo
: TKwdo
649 readable var _n_block
: nullable AExpr = null
650 readable var _n_label
: nullable ALabel = null
654 readable var _n_kwif
: TKwif
655 readable var _n_expr
: AExpr
656 readable var _n_then
: nullable AExpr = null
657 readable var _n_else
: nullable AExpr = null
661 readable var _n_kwif
: TKwif
662 readable var _n_expr
: AExpr
663 readable var _n_kwthen
: TKwthen
664 readable var _n_then
: AExpr
665 readable var _n_kwelse
: TKwelse
666 readable var _n_else
: AExpr
670 readable var _n_kwwhile
: TKwwhile
671 readable var _n_expr
: AExpr
672 readable var _n_kwdo
: TKwdo
673 readable var _n_block
: nullable AExpr = null
674 readable var _n_label
: nullable ALabel = null
678 readable var _n_kwloop
: TKwloop
679 readable var _n_block
: nullable AExpr = null
680 readable var _n_label
: nullable ALabel = null
684 readable var _n_kwfor
: TKwfor
685 readable var _n_ids
: List[TId] = new List[TId]
686 readable var _n_expr
: AExpr
687 readable var _n_kwdo
: TKwdo
688 readable var _n_block
: nullable AExpr = null
689 readable var _n_label
: nullable ALabel = null
693 readable var _n_kwassert
: TKwassert
694 readable var _n_id
: nullable TId = null
695 readable var _n_expr
: AExpr
696 readable var _n_else
: nullable AExpr = null
700 readable var _n_kwonce
: TKwonce
701 readable var _n_expr
: AExpr
705 readable var _n_expr
: AExpr
709 readable var _n_expr
: AExpr
710 readable var _n_expr2
: AExpr
714 readable var _n_expr
: AExpr
715 readable var _n_expr2
: AExpr
719 readable var _n_expr
: AExpr
720 readable var _n_expr2
: AExpr
724 readable var _n_expr
: AExpr
725 readable var _n_expr2
: AExpr
729 readable var _n_kwnot
: TKwnot
730 readable var _n_expr
: AExpr
734 readable var _n_expr
: AExpr
735 readable var _n_expr2
: AExpr
739 readable var _n_expr
: AExpr
740 readable var _n_expr2
: AExpr
744 readable var _n_expr
: AExpr
745 readable var _n_expr2
: AExpr
749 readable var _n_expr
: AExpr
750 readable var _n_expr2
: AExpr
754 readable var _n_expr
: AExpr
755 readable var _n_expr2
: AExpr
759 readable var _n_expr
: AExpr
760 readable var _n_expr2
: AExpr
764 readable var _n_expr
: AExpr
765 readable var _n_expr2
: AExpr
769 readable var _n_expr
: AExpr
770 readable var _n_expr2
: AExpr
774 readable var _n_expr
: AExpr
775 readable var _n_expr2
: AExpr
779 readable var _n_expr
: AExpr
780 readable var _n_type
: AType
784 readable var _n_expr
: AExpr
785 readable var _n_expr2
: AExpr
789 readable var _n_expr
: AExpr
790 readable var _n_expr2
: AExpr
794 readable var _n_expr
: AExpr
795 readable var _n_expr2
: AExpr
799 readable var _n_expr
: AExpr
800 readable var _n_expr2
: AExpr
804 readable var _n_expr
: AExpr
805 readable var _n_expr2
: AExpr
809 readable var _n_expr
: AExpr
810 readable var _n_expr2
: AExpr
814 readable var _n_minus
: TMinus
815 readable var _n_expr
: AExpr
819 readable var _n_kwnew
: TKwnew
820 readable var _n_type
: AType
821 readable var _n_id
: nullable TId = null
822 readable var _n_args
: List[AExpr] = new List[AExpr]
826 readable var _n_expr
: AExpr
827 readable var _n_id
: TAttrid
829 class AAttrAssignExpr
831 readable var _n_expr
: AExpr
832 readable var _n_id
: TAttrid
833 readable var _n_assign
: TAssign
834 readable var _n_value
: AExpr
836 class AAttrReassignExpr
838 readable var _n_expr
: AExpr
839 readable var _n_id
: TAttrid
840 readable var _n_assign_op
: AAssignOp
841 readable var _n_value
: AExpr
845 readable var _n_expr
: AExpr
846 readable var _n_id
: TId
847 readable var _n_args
: List[AExpr] = new List[AExpr]
848 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
850 class ACallAssignExpr
852 readable var _n_expr
: AExpr
853 readable var _n_id
: TId
854 readable var _n_args
: List[AExpr] = new List[AExpr]
855 readable var _n_assign
: TAssign
856 readable var _n_value
: AExpr
858 class ACallReassignExpr
860 readable var _n_expr
: AExpr
861 readable var _n_id
: TId
862 readable var _n_args
: List[AExpr] = new List[AExpr]
863 readable var _n_assign_op
: AAssignOp
864 readable var _n_value
: AExpr
868 readable var _n_qualified
: nullable AQualified = null
869 readable var _n_kwsuper
: TKwsuper
870 readable var _n_args
: List[AExpr] = new List[AExpr]
874 readable var _n_expr
: AExpr
875 readable var _n_kwinit
: TKwinit
876 readable var _n_args
: List[AExpr] = new List[AExpr]
880 readable var _n_expr
: AExpr
881 readable var _n_args
: List[AExpr] = new List[AExpr]
882 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
886 readable var _n_expr
: AExpr
887 readable var _n_args
: List[AExpr] = new List[AExpr]
888 readable var _n_assign
: TAssign
889 readable var _n_value
: AExpr
891 class ABraReassignExpr
893 readable var _n_expr
: AExpr
894 readable var _n_args
: List[AExpr] = new List[AExpr]
895 readable var _n_assign_op
: AAssignOp
896 readable var _n_value
: AExpr
898 class AClosureCallExpr
900 readable var _n_id
: TId
901 readable var _n_args
: List[AExpr] = new List[AExpr]
902 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
906 readable var _n_id
: TId
910 readable var _n_id
: TId
911 readable var _n_assign
: TAssign
912 readable var _n_value
: AExpr
914 class AVarReassignExpr
916 readable var _n_id
: TId
917 readable var _n_assign_op
: AAssignOp
918 readable var _n_value
: AExpr
922 readable var _n_expr
: AExpr
923 readable var _n_expr2
: AExpr
927 readable var _n_expr
: AExpr
928 readable var _n_expr2
: AExpr
932 readable var _n_expr
: AExpr
933 readable var _n_expr2
: AExpr
937 readable var _n_exprs
: List[AExpr] = new List[AExpr]
941 readable var _n_kwself
: TKwself
943 class AImplicitSelfExpr
948 readable var _n_kwtrue
: TKwtrue
952 readable var _n_kwfalse
: TKwfalse
956 readable var _n_kwnull
: TKwnull
960 readable var _n_number
: TNumber
964 readable var _n_float
: TFloat
968 readable var _n_char
: TChar
972 readable var _n_string
: TString
974 class AStartStringExpr
976 readable var _n_string
: TStartString
980 readable var _n_string
: TMidString
984 readable var _n_string
: TEndString
986 class ASuperstringExpr
988 readable var _n_exprs
: List[AExpr] = new List[AExpr]
992 readable var _n_expr
: AExpr
996 readable var _n_expr
: AExpr
997 readable var _n_kwas
: TKwas
998 readable var _n_type
: AType
1000 class AAsNotnullExpr
1002 readable var _n_expr
: AExpr
1003 readable var _n_kwas
: TKwas
1004 readable var _n_kwnot
: TKwnot
1005 readable var _n_kwnull
: TKwnull
1007 class AIssetAttrExpr
1009 readable var _n_kwisset
: TKwisset
1010 readable var _n_expr
: AExpr
1011 readable var _n_id
: TAttrid
1015 readable var _n_pluseq
: TPluseq
1017 class AMinusAssignOp
1019 readable var _n_minuseq
: TMinuseq
1023 readable var _n_bang
: TBang
1024 readable var _n_id
: AClosureId
1025 readable var _n_ids
: List[TId] = new List[TId]
1026 readable var _n_kwdo
: nullable TKwdo = null
1027 readable var _n_expr
: nullable AExpr = null
1028 readable var _n_label
: nullable ALabel = null
1030 class ASimpleClosureId
1032 readable var _n_id
: TId
1034 class ABreakClosureId
1036 readable var _n_kwbreak
: TKwbreak
1040 readable var _n_quad
: nullable TQuad = null
1041 readable var _n_path
: List[TId] = new List[TId]
1042 readable var _n_id
: TId
1046 readable var _n_id
: List[TId] = new List[TId]
1047 readable var _n_classid
: nullable TClassid = null
1051 readable var _n_comment
: List[TComment] = new List[TComment]
1056 readable var _n_base
: nullable AModule
1057 readable var _n_eof
: EOF