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 special Prod end
303 class APackagedecl special Prod end
304 class AImport special Prod end
305 class AVisibility special Prod end
306 class AClassdef special Prod end
307 class AClasskind special Prod end
308 class AFormaldef special Prod end
309 class ASuperclass special Prod end
310 class APropdef special Prod end
311 class AAble special Prod end
312 class AMethid special Prod end
313 class ASignature special Prod end
314 class AParam special Prod end
315 class AClosureDecl special Prod end
316 class AType special Prod end
317 class ALabel special Prod end
318 class AExpr special Prod end
319 class AAssignOp special Prod end
320 class AClosureDef special Prod end
321 class AClosureId special Prod end
322 class AQualified special Prod end
323 class ADoc special Prod end
327 readable var _n_packagedecl
: nullable APackagedecl = null
328 readable var _n_imports
: List[AImport] = new List[AImport]
329 readable var _n_classdefs
: List[AClassdef] = new List[AClassdef]
333 readable var _n_doc
: nullable ADoc = null
334 readable var _n_kwpackage
: TKwpackage
335 readable var _n_id
: TId
339 readable var _n_visibility
: AVisibility
340 readable var _n_kwimport
: TKwimport
341 readable var _n_id
: TId
345 readable var _n_visibility
: AVisibility
346 readable var _n_kwimport
: TKwimport
347 readable var _n_kwend
: TKwend
349 class APublicVisibility
352 class APrivateVisibility
354 readable var _n_kwprivate
: TKwprivate
356 class AProtectedVisibility
358 readable var _n_kwprotected
: TKwprotected
360 class AIntrudeVisibility
362 readable var _n_kwintrude
: TKwintrude
366 readable var _n_doc
: nullable ADoc = null
367 readable var _n_kwredef
: nullable TKwredef = null
368 readable var _n_visibility
: AVisibility
369 readable var _n_classkind
: AClasskind
370 readable var _n_id
: nullable TClassid = null
371 readable var _n_formaldefs
: List[AFormaldef] = new List[AFormaldef]
372 readable var _n_superclasses
: List[ASuperclass] = new List[ASuperclass]
373 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
377 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
381 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
383 class AConcreteClasskind
385 readable var _n_kwclass
: TKwclass
387 class AAbstractClasskind
389 readable var _n_kwabstract
: TKwabstract
390 readable var _n_kwclass
: TKwclass
392 class AInterfaceClasskind
394 readable var _n_kwinterface
: TKwinterface
396 class AUniversalClasskind
398 readable var _n_kwuniversal
: TKwuniversal
402 readable var _n_id
: TClassid
403 readable var _n_type
: nullable AType = null
407 readable var _n_kwspecial
: nullable TKwspecial = null
408 readable var _n_kwsuper
: nullable TKwsuper = null
409 readable var _n_type
: AType
413 readable var _n_doc
: nullable ADoc = null
414 readable var _n_readable
: nullable AAble = null
415 readable var _n_writable
: nullable AAble = null
416 readable var _n_kwredef
: nullable TKwredef = null
417 readable var _n_visibility
: AVisibility
418 readable var _n_kwvar
: TKwvar
419 readable var _n_id
: nullable TAttrid = null
420 readable var _n_id2
: nullable TId = null
421 readable var _n_type
: nullable AType = null
422 readable var _n_expr
: nullable AExpr = null
426 readable var _n_doc
: nullable ADoc = null
427 readable var _n_kwredef
: nullable TKwredef = null
428 readable var _n_visibility
: AVisibility
429 readable var _n_methid
: AMethid
430 readable var _n_signature
: ASignature
432 class ADeferredMethPropdef
434 readable var _n_doc
: nullable ADoc = null
435 readable var _n_kwredef
: nullable TKwredef = null
436 readable var _n_visibility
: AVisibility
437 readable var _n_kwmeth
: TKwmeth
438 readable var _n_methid
: AMethid
439 readable var _n_signature
: ASignature
441 class AInternMethPropdef
443 readable var _n_doc
: nullable ADoc = null
444 readable var _n_kwredef
: nullable TKwredef = null
445 readable var _n_visibility
: AVisibility
446 readable var _n_kwmeth
: TKwmeth
447 readable var _n_methid
: AMethid
448 readable var _n_signature
: ASignature
450 class AExternMethPropdef
452 readable var _n_doc
: nullable ADoc = null
453 readable var _n_kwredef
: nullable TKwredef = null
454 readable var _n_visibility
: AVisibility
455 readable var _n_kwmeth
: TKwmeth
456 readable var _n_methid
: AMethid
457 readable var _n_signature
: ASignature
458 readable var _n_extern
: nullable TString = null
460 class AConcreteMethPropdef
462 readable var _n_doc
: nullable ADoc = null
463 readable var _n_kwredef
: nullable TKwredef = null
464 readable var _n_visibility
: AVisibility
465 readable var _n_kwmeth
: TKwmeth
466 readable var _n_methid
: AMethid
467 readable var _n_signature
: ASignature
468 readable var _n_block
: nullable AExpr = null
470 class AConcreteInitPropdef
472 readable var _n_doc
: nullable ADoc = null
473 readable var _n_kwredef
: nullable TKwredef = null
474 readable var _n_visibility
: AVisibility
475 readable var _n_kwinit
: TKwinit
476 readable var _n_methid
: nullable AMethid = null
477 readable var _n_signature
: ASignature
478 readable var _n_block
: nullable AExpr = null
480 class AMainMethPropdef
482 readable var _n_kwredef
: nullable TKwredef = null
483 readable var _n_block
: nullable AExpr = null
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_kwtype
: TKwtype
491 readable var _n_id
: TClassid
492 readable var _n_type
: AType
496 readable var _n_kwredef
: nullable TKwredef = null
497 readable var _n_kwreadable
: TKwreadable
501 readable var _n_kwredef
: nullable TKwredef = null
502 readable var _n_visibility
: nullable AVisibility = null
503 readable var _n_kwwritable
: TKwwritable
507 readable var _n_id
: TId
511 readable var _n_plus
: TPlus
515 readable var _n_minus
: TMinus
519 readable var _n_star
: TStar
523 readable var _n_slash
: TSlash
527 readable var _n_percent
: TPercent
531 readable var _n_eq
: TEq
535 readable var _n_ne
: TNe
539 readable var _n_le
: TLe
543 readable var _n_ge
: TGe
547 readable var _n_lt
: TLt
551 readable var _n_gt
: TGt
555 readable var _n_ll
: TLl
559 readable var _n_gg
: TGg
563 readable var _n_obra
: TObra
564 readable var _n_cbra
: TCbra
566 class AStarshipMethid
568 readable var _n_starship
: TStarship
572 readable var _n_id
: TId
573 readable var _n_assign
: TAssign
575 class ABraassignMethid
577 readable var _n_obra
: TObra
578 readable var _n_cbra
: TCbra
579 readable var _n_assign
: TAssign
583 readable var _n_params
: List[AParam] = new List[AParam]
584 readable var _n_type
: nullable AType = null
585 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
589 readable var _n_id
: TId
590 readable var _n_type
: nullable AType = null
591 readable var _n_dotdotdot
: nullable TDotdotdot = null
595 readable var _n_kwbreak
: nullable TKwbreak = null
596 readable var _n_bang
: TBang
597 readable var _n_id
: TId
598 readable var _n_signature
: ASignature
599 readable var _n_expr
: nullable AExpr = null
603 readable var _n_kwnullable
: nullable TKwnullable = null
604 readable var _n_id
: TClassid
605 readable var _n_types
: List[AType] = new List[AType]
609 readable var _n_kwlabel
: TKwlabel
610 readable var _n_id
: TId
614 readable var _n_expr
: List[AExpr] = new List[AExpr]
618 readable var _n_kwvar
: TKwvar
619 readable var _n_id
: TId
620 readable var _n_type
: nullable AType = null
621 readable var _n_assign
: nullable TAssign = null
622 readable var _n_expr
: nullable AExpr = null
626 readable var _n_kwreturn
: nullable TKwreturn = null
627 readable var _n_expr
: nullable AExpr = null
631 readable var _n_kwbreak
: TKwbreak
632 readable var _n_label
: nullable ALabel = null
633 readable var _n_expr
: nullable AExpr = null
637 readable var _n_kwabort
: TKwabort
641 readable var _n_kwcontinue
: nullable TKwcontinue = null
642 readable var _n_label
: nullable ALabel = null
643 readable var _n_expr
: nullable AExpr = null
647 readable var _n_kwdo
: TKwdo
648 readable var _n_block
: nullable AExpr = null
649 readable var _n_label
: nullable ALabel = null
653 readable var _n_kwif
: TKwif
654 readable var _n_expr
: AExpr
655 readable var _n_then
: nullable AExpr = null
656 readable var _n_else
: nullable AExpr = null
660 readable var _n_kwif
: TKwif
661 readable var _n_expr
: AExpr
662 readable var _n_kwthen
: TKwthen
663 readable var _n_then
: AExpr
664 readable var _n_kwelse
: TKwelse
665 readable var _n_else
: AExpr
669 readable var _n_kwwhile
: TKwwhile
670 readable var _n_expr
: AExpr
671 readable var _n_kwdo
: TKwdo
672 readable var _n_block
: nullable AExpr = null
673 readable var _n_label
: nullable ALabel = null
677 readable var _n_kwloop
: TKwloop
678 readable var _n_block
: nullable AExpr = null
679 readable var _n_label
: nullable ALabel = null
683 readable var _n_kwfor
: TKwfor
684 readable var _n_id
: TId
685 readable var _n_expr
: AExpr
686 readable var _n_kwdo
: TKwdo
687 readable var _n_block
: nullable AExpr = null
688 readable var _n_label
: nullable ALabel = null
692 readable var _n_kwassert
: TKwassert
693 readable var _n_id
: nullable TId = null
694 readable var _n_expr
: AExpr
695 readable var _n_else
: nullable AExpr = null
699 readable var _n_kwonce
: TKwonce
700 readable var _n_expr
: AExpr
704 readable var _n_expr
: AExpr
708 readable var _n_expr
: AExpr
709 readable var _n_expr2
: AExpr
713 readable var _n_expr
: AExpr
714 readable var _n_expr2
: AExpr
718 readable var _n_expr
: AExpr
719 readable var _n_expr2
: AExpr
723 readable var _n_expr
: AExpr
724 readable var _n_expr2
: AExpr
728 readable var _n_kwnot
: TKwnot
729 readable var _n_expr
: AExpr
733 readable var _n_expr
: AExpr
734 readable var _n_expr2
: AExpr
738 readable var _n_expr
: AExpr
739 readable var _n_expr2
: AExpr
743 readable var _n_expr
: AExpr
744 readable var _n_expr2
: AExpr
748 readable var _n_expr
: AExpr
749 readable var _n_expr2
: AExpr
753 readable var _n_expr
: AExpr
754 readable var _n_expr2
: AExpr
758 readable var _n_expr
: AExpr
759 readable var _n_expr2
: AExpr
763 readable var _n_expr
: AExpr
764 readable var _n_expr2
: AExpr
768 readable var _n_expr
: AExpr
769 readable var _n_expr2
: AExpr
773 readable var _n_expr
: AExpr
774 readable var _n_expr2
: AExpr
778 readable var _n_expr
: AExpr
779 readable var _n_type
: AType
783 readable var _n_expr
: AExpr
784 readable var _n_expr2
: AExpr
788 readable var _n_expr
: AExpr
789 readable var _n_expr2
: AExpr
793 readable var _n_expr
: AExpr
794 readable var _n_expr2
: AExpr
798 readable var _n_expr
: AExpr
799 readable var _n_expr2
: AExpr
803 readable var _n_expr
: AExpr
804 readable var _n_expr2
: AExpr
808 readable var _n_expr
: AExpr
809 readable var _n_expr2
: AExpr
813 readable var _n_minus
: TMinus
814 readable var _n_expr
: AExpr
818 readable var _n_kwnew
: TKwnew
819 readable var _n_type
: AType
820 readable var _n_id
: nullable TId = null
821 readable var _n_args
: List[AExpr] = new List[AExpr]
825 readable var _n_expr
: AExpr
826 readable var _n_id
: TAttrid
828 class AAttrAssignExpr
830 readable var _n_expr
: AExpr
831 readable var _n_id
: TAttrid
832 readable var _n_assign
: TAssign
833 readable var _n_value
: AExpr
835 class AAttrReassignExpr
837 readable var _n_expr
: AExpr
838 readable var _n_id
: TAttrid
839 readable var _n_assign_op
: AAssignOp
840 readable var _n_value
: AExpr
844 readable var _n_expr
: AExpr
845 readable var _n_id
: TId
846 readable var _n_args
: List[AExpr] = new List[AExpr]
847 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
849 class ACallAssignExpr
851 readable var _n_expr
: AExpr
852 readable var _n_id
: TId
853 readable var _n_args
: List[AExpr] = new List[AExpr]
854 readable var _n_assign
: TAssign
855 readable var _n_value
: AExpr
857 class ACallReassignExpr
859 readable var _n_expr
: AExpr
860 readable var _n_id
: TId
861 readable var _n_args
: List[AExpr] = new List[AExpr]
862 readable var _n_assign_op
: AAssignOp
863 readable var _n_value
: AExpr
867 readable var _n_qualified
: nullable AQualified = null
868 readable var _n_kwsuper
: TKwsuper
869 readable var _n_args
: List[AExpr] = new List[AExpr]
873 readable var _n_expr
: AExpr
874 readable var _n_kwinit
: TKwinit
875 readable var _n_args
: List[AExpr] = new List[AExpr]
879 readable var _n_expr
: AExpr
880 readable var _n_args
: List[AExpr] = new List[AExpr]
881 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
885 readable var _n_expr
: AExpr
886 readable var _n_args
: List[AExpr] = new List[AExpr]
887 readable var _n_assign
: TAssign
888 readable var _n_value
: AExpr
890 class ABraReassignExpr
892 readable var _n_expr
: AExpr
893 readable var _n_args
: List[AExpr] = new List[AExpr]
894 readable var _n_assign_op
: AAssignOp
895 readable var _n_value
: AExpr
897 class AClosureCallExpr
899 readable var _n_id
: TId
900 readable var _n_args
: List[AExpr] = new List[AExpr]
901 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
905 readable var _n_id
: TId
909 readable var _n_id
: TId
910 readable var _n_assign
: TAssign
911 readable var _n_value
: AExpr
913 class AVarReassignExpr
915 readable var _n_id
: TId
916 readable var _n_assign_op
: AAssignOp
917 readable var _n_value
: AExpr
921 readable var _n_expr
: AExpr
922 readable var _n_expr2
: AExpr
926 readable var _n_expr
: AExpr
927 readable var _n_expr2
: AExpr
931 readable var _n_expr
: AExpr
932 readable var _n_expr2
: AExpr
936 readable var _n_exprs
: List[AExpr] = new List[AExpr]
940 readable var _n_kwself
: TKwself
942 class AImplicitSelfExpr
947 readable var _n_kwtrue
: TKwtrue
951 readable var _n_kwfalse
: TKwfalse
955 readable var _n_kwnull
: TKwnull
959 readable var _n_number
: TNumber
963 readable var _n_float
: TFloat
967 readable var _n_char
: TChar
971 readable var _n_string
: TString
973 class AStartStringExpr
975 readable var _n_string
: TStartString
979 readable var _n_string
: TMidString
983 readable var _n_string
: TEndString
985 class ASuperstringExpr
987 readable var _n_exprs
: List[AExpr] = new List[AExpr]
991 readable var _n_expr
: AExpr
995 readable var _n_expr
: AExpr
996 readable var _n_kwas
: TKwas
997 readable var _n_type
: AType
1001 readable var _n_expr
: AExpr
1002 readable var _n_kwas
: TKwas
1003 readable var _n_kwnot
: TKwnot
1004 readable var _n_kwnull
: TKwnull
1006 class AIssetAttrExpr
1008 readable var _n_kwisset
: TKwisset
1009 readable var _n_expr
: AExpr
1010 readable var _n_id
: TAttrid
1014 readable var _n_pluseq
: TPluseq
1016 class AMinusAssignOp
1018 readable var _n_minuseq
: TMinuseq
1022 readable var _n_bang
: TBang
1023 readable var _n_id
: AClosureId
1024 readable var _n_ids
: List[TId] = new List[TId]
1025 readable var _n_kwdo
: nullable TKwdo = null
1026 readable var _n_expr
: nullable AExpr = null
1027 readable var _n_label
: nullable ALabel = null
1029 class ASimpleClosureId
1031 readable var _n_id
: TId
1033 class ABreakClosureId
1035 readable var _n_kwbreak
: TKwbreak
1039 readable var _n_id
: List[TId] = new List[TId]
1040 readable var _n_classid
: nullable TClassid = null
1044 readable var _n_comment
: List[TComment] = new List[TComment]
1049 readable var _n_base
: nullable AModule
1050 readable var _n_eof
: EOF