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
289 private init noinit
do end
293 private init noinit
do end
296 class AModule special Prod end
297 class APackagedecl special Prod end
298 class AImport special Prod end
299 class AVisibility special Prod end
300 class AClassdef special Prod end
301 class AClasskind special Prod end
302 class AFormaldef special Prod end
303 class ASuperclass special Prod end
304 class APropdef special Prod end
305 class AAble special Prod end
306 class AMethid special Prod end
307 class ASignature special Prod end
308 class AParam special Prod end
309 class AClosureDecl special Prod end
310 class AType special Prod end
311 class ALabel special Prod end
312 class AExpr special Prod end
313 class AAssignOp special Prod end
314 class AClosureDef special Prod end
315 class AClosureId special Prod end
316 class AQualified special Prod end
317 class ADoc special Prod end
321 readable var _n_packagedecl
: nullable APackagedecl = null
322 readable var _n_imports
: List[AImport] = new List[AImport]
323 readable var _n_classdefs
: List[AClassdef] = new List[AClassdef]
327 readable var _n_doc
: nullable ADoc = null
328 readable var _n_kwpackage
: TKwpackage
329 readable var _n_id
: TId
333 readable var _n_visibility
: AVisibility
334 readable var _n_kwimport
: TKwimport
335 readable var _n_id
: TId
339 readable var _n_visibility
: AVisibility
340 readable var _n_kwimport
: TKwimport
341 readable var _n_kwend
: TKwend
343 class APublicVisibility
346 class APrivateVisibility
348 readable var _n_kwprivate
: TKwprivate
350 class AProtectedVisibility
352 readable var _n_kwprotected
: TKwprotected
354 class AIntrudeVisibility
356 readable var _n_kwintrude
: TKwintrude
360 readable var _n_doc
: nullable ADoc = null
361 readable var _n_kwredef
: nullable TKwredef = null
362 readable var _n_visibility
: AVisibility
363 readable var _n_classkind
: AClasskind
364 readable var _n_id
: nullable TClassid = null
365 readable var _n_formaldefs
: List[AFormaldef] = new List[AFormaldef]
366 readable var _n_superclasses
: List[ASuperclass] = new List[ASuperclass]
367 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
371 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
375 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
377 class AConcreteClasskind
379 readable var _n_kwclass
: TKwclass
381 class AAbstractClasskind
383 readable var _n_kwabstract
: TKwabstract
384 readable var _n_kwclass
: TKwclass
386 class AInterfaceClasskind
388 readable var _n_kwinterface
: TKwinterface
390 class AUniversalClasskind
392 readable var _n_kwuniversal
: TKwuniversal
396 readable var _n_id
: TClassid
397 readable var _n_type
: nullable AType = null
401 readable var _n_kwspecial
: nullable TKwspecial = null
402 readable var _n_kwsuper
: nullable TKwsuper = null
403 readable var _n_type
: AType
407 readable var _n_doc
: nullable ADoc = null
408 readable var _n_readable
: nullable AAble = null
409 readable var _n_writable
: nullable AAble = null
410 readable var _n_kwredef
: nullable TKwredef = null
411 readable var _n_visibility
: AVisibility
412 readable var _n_kwvar
: TKwvar
413 readable var _n_id
: TAttrid
414 readable var _n_type
: nullable AType = null
415 readable var _n_expr
: nullable AExpr = null
419 readable var _n_doc
: nullable ADoc = null
420 readable var _n_kwredef
: nullable TKwredef = null
421 readable var _n_visibility
: AVisibility
422 readable var _n_methid
: AMethid
423 readable var _n_signature
: ASignature
425 class ADeferredMethPropdef
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_kwmeth
: TKwmeth
431 readable var _n_methid
: AMethid
432 readable var _n_signature
: ASignature
434 class AInternMethPropdef
436 readable var _n_doc
: nullable ADoc = null
437 readable var _n_kwredef
: nullable TKwredef = null
438 readable var _n_visibility
: AVisibility
439 readable var _n_kwmeth
: TKwmeth
440 readable var _n_methid
: AMethid
441 readable var _n_signature
: ASignature
443 class AExternMethPropdef
445 readable var _n_doc
: nullable ADoc = null
446 readable var _n_kwredef
: nullable TKwredef = null
447 readable var _n_visibility
: AVisibility
448 readable var _n_kwmeth
: TKwmeth
449 readable var _n_methid
: AMethid
450 readable var _n_signature
: ASignature
451 readable var _n_extern
: nullable TString = null
453 class AConcreteMethPropdef
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_block
: nullable AExpr = null
463 class AConcreteInitPropdef
465 readable var _n_doc
: nullable ADoc = null
466 readable var _n_kwredef
: nullable TKwredef = null
467 readable var _n_visibility
: AVisibility
468 readable var _n_kwinit
: TKwinit
469 readable var _n_methid
: nullable AMethid = null
470 readable var _n_signature
: ASignature
471 readable var _n_block
: nullable AExpr = null
473 class AMainMethPropdef
475 readable var _n_kwredef
: nullable TKwredef = null
476 readable var _n_block
: nullable AExpr = null
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_kwtype
: TKwtype
484 readable var _n_id
: TClassid
485 readable var _n_type
: AType
489 readable var _n_kwredef
: nullable TKwredef = null
490 readable var _n_kwreadable
: TKwreadable
494 readable var _n_kwredef
: nullable TKwredef = null
495 readable var _n_kwwritable
: TKwwritable
499 readable var _n_id
: TId
503 readable var _n_plus
: TPlus
507 readable var _n_minus
: TMinus
511 readable var _n_star
: TStar
515 readable var _n_slash
: TSlash
519 readable var _n_percent
: TPercent
523 readable var _n_eq
: TEq
527 readable var _n_ne
: TNe
531 readable var _n_le
: TLe
535 readable var _n_ge
: TGe
539 readable var _n_lt
: TLt
543 readable var _n_gt
: TGt
547 readable var _n_obra
: TObra
548 readable var _n_cbra
: TCbra
550 class AStarshipMethid
552 readable var _n_starship
: TStarship
556 readable var _n_id
: TId
557 readable var _n_assign
: TAssign
559 class ABraassignMethid
561 readable var _n_obra
: TObra
562 readable var _n_cbra
: TCbra
563 readable var _n_assign
: TAssign
567 readable var _n_params
: List[AParam] = new List[AParam]
568 readable var _n_type
: nullable AType = null
569 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
573 readable var _n_id
: TId
574 readable var _n_type
: nullable AType = null
575 readable var _n_dotdotdot
: nullable TDotdotdot = null
579 readable var _n_kwbreak
: nullable TKwbreak = null
580 readable var _n_bang
: TBang
581 readable var _n_id
: TId
582 readable var _n_signature
: ASignature
583 readable var _n_expr
: nullable AExpr = null
587 readable var _n_kwnullable
: nullable TKwnullable = null
588 readable var _n_id
: TClassid
589 readable var _n_types
: List[AType] = new List[AType]
593 readable var _n_kwlabel
: TKwlabel
594 readable var _n_id
: TId
598 readable var _n_expr
: List[AExpr] = new List[AExpr]
602 readable var _n_kwvar
: TKwvar
603 readable var _n_id
: TId
604 readable var _n_type
: nullable AType = null
605 readable var _n_assign
: nullable TAssign = null
606 readable var _n_expr
: nullable AExpr = null
610 readable var _n_kwreturn
: nullable TKwreturn = null
611 readable var _n_expr
: nullable AExpr = null
615 readable var _n_kwbreak
: TKwbreak
616 readable var _n_label
: nullable ALabel = null
617 readable var _n_expr
: nullable AExpr = null
621 readable var _n_kwabort
: TKwabort
625 readable var _n_kwcontinue
: nullable TKwcontinue = null
626 readable var _n_label
: nullable ALabel = null
627 readable var _n_expr
: nullable AExpr = null
631 readable var _n_kwdo
: TKwdo
632 readable var _n_block
: nullable AExpr = null
633 readable var _n_label
: nullable ALabel = null
637 readable var _n_kwif
: TKwif
638 readable var _n_expr
: AExpr
639 readable var _n_then
: nullable AExpr = null
640 readable var _n_else
: nullable AExpr = null
644 readable var _n_kwif
: TKwif
645 readable var _n_expr
: AExpr
646 readable var _n_kwthen
: TKwthen
647 readable var _n_then
: AExpr
648 readable var _n_kwelse
: TKwelse
649 readable var _n_else
: AExpr
653 readable var _n_kwwhile
: TKwwhile
654 readable var _n_expr
: AExpr
655 readable var _n_kwdo
: TKwdo
656 readable var _n_block
: nullable AExpr = null
657 readable var _n_label
: nullable ALabel = null
661 readable var _n_kwloop
: TKwloop
662 readable var _n_block
: nullable AExpr = null
663 readable var _n_label
: nullable ALabel = null
667 readable var _n_kwfor
: TKwfor
668 readable var _n_id
: TId
669 readable var _n_expr
: AExpr
670 readable var _n_kwdo
: TKwdo
671 readable var _n_block
: nullable AExpr = null
672 readable var _n_label
: nullable ALabel = null
676 readable var _n_kwassert
: TKwassert
677 readable var _n_id
: nullable TId = null
678 readable var _n_expr
: AExpr
679 readable var _n_else
: nullable AExpr = null
683 readable var _n_kwonce
: TKwonce
684 readable var _n_expr
: AExpr
688 readable var _n_expr
: AExpr
692 readable var _n_expr
: AExpr
693 readable var _n_expr2
: AExpr
697 readable var _n_expr
: AExpr
698 readable var _n_expr2
: AExpr
702 readable var _n_expr
: AExpr
703 readable var _n_expr2
: AExpr
707 readable var _n_kwnot
: TKwnot
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_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_expr
: AExpr
748 readable var _n_type
: AType
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_minus
: TMinus
783 readable var _n_expr
: AExpr
787 readable var _n_kwnew
: TKwnew
788 readable var _n_type
: AType
789 readable var _n_id
: nullable TId = null
790 readable var _n_args
: List[AExpr] = new List[AExpr]
794 readable var _n_expr
: AExpr
795 readable var _n_id
: TAttrid
797 class AAttrAssignExpr
799 readable var _n_expr
: AExpr
800 readable var _n_id
: TAttrid
801 readable var _n_assign
: TAssign
802 readable var _n_value
: AExpr
804 class AAttrReassignExpr
806 readable var _n_expr
: AExpr
807 readable var _n_id
: TAttrid
808 readable var _n_assign_op
: AAssignOp
809 readable var _n_value
: AExpr
813 readable var _n_expr
: AExpr
814 readable var _n_id
: TId
815 readable var _n_args
: List[AExpr] = new List[AExpr]
816 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
818 class ACallAssignExpr
820 readable var _n_expr
: AExpr
821 readable var _n_id
: TId
822 readable var _n_args
: List[AExpr] = new List[AExpr]
823 readable var _n_assign
: TAssign
824 readable var _n_value
: AExpr
826 class ACallReassignExpr
828 readable var _n_expr
: AExpr
829 readable var _n_id
: TId
830 readable var _n_args
: List[AExpr] = new List[AExpr]
831 readable var _n_assign_op
: AAssignOp
832 readable var _n_value
: AExpr
836 readable var _n_qualified
: nullable AQualified = null
837 readable var _n_kwsuper
: TKwsuper
838 readable var _n_args
: List[AExpr] = new List[AExpr]
842 readable var _n_expr
: AExpr
843 readable var _n_kwinit
: TKwinit
844 readable var _n_args
: List[AExpr] = new List[AExpr]
848 readable var _n_expr
: AExpr
849 readable var _n_args
: List[AExpr] = new List[AExpr]
850 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
854 readable var _n_expr
: AExpr
855 readable var _n_args
: List[AExpr] = new List[AExpr]
856 readable var _n_assign
: TAssign
857 readable var _n_value
: AExpr
859 class ABraReassignExpr
861 readable var _n_expr
: AExpr
862 readable var _n_args
: List[AExpr] = new List[AExpr]
863 readable var _n_assign_op
: AAssignOp
864 readable var _n_value
: AExpr
866 class AClosureCallExpr
868 readable var _n_id
: TId
869 readable var _n_args
: List[AExpr] = new List[AExpr]
870 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
874 readable var _n_id
: TId
878 readable var _n_id
: TId
879 readable var _n_assign
: TAssign
880 readable var _n_value
: AExpr
882 class AVarReassignExpr
884 readable var _n_id
: TId
885 readable var _n_assign_op
: AAssignOp
886 readable var _n_value
: AExpr
890 readable var _n_expr
: AExpr
891 readable var _n_expr2
: AExpr
895 readable var _n_expr
: AExpr
896 readable var _n_expr2
: AExpr
900 readable var _n_expr
: AExpr
901 readable var _n_expr2
: AExpr
905 readable var _n_exprs
: List[AExpr] = new List[AExpr]
909 readable var _n_kwself
: TKwself
911 class AImplicitSelfExpr
916 readable var _n_kwtrue
: TKwtrue
920 readable var _n_kwfalse
: TKwfalse
924 readable var _n_kwnull
: TKwnull
928 readable var _n_number
: TNumber
932 readable var _n_float
: TFloat
936 readable var _n_char
: TChar
940 readable var _n_string
: TString
942 class AStartStringExpr
944 readable var _n_string
: TStartString
948 readable var _n_string
: TMidString
952 readable var _n_string
: TEndString
954 class ASuperstringExpr
956 readable var _n_exprs
: List[AExpr] = new List[AExpr]
960 readable var _n_expr
: AExpr
964 readable var _n_expr
: AExpr
965 readable var _n_kwas
: TKwas
966 readable var _n_type
: AType
970 readable var _n_expr
: AExpr
971 readable var _n_kwas
: TKwas
972 readable var _n_kwnot
: TKwnot
973 readable var _n_kwnull
: TKwnull
977 readable var _n_kwisset
: TKwisset
978 readable var _n_expr
: AExpr
979 readable var _n_id
: TAttrid
983 readable var _n_pluseq
: TPluseq
987 readable var _n_minuseq
: TMinuseq
991 readable var _n_bang
: TBang
992 readable var _n_id
: AClosureId
993 readable var _n_ids
: List[TId] = new List[TId]
994 readable var _n_kwdo
: nullable TKwdo = null
995 readable var _n_expr
: nullable AExpr = null
996 readable var _n_label
: nullable ALabel = null
998 class ASimpleClosureId
1000 readable var _n_id
: TId
1002 class ABreakClosureId
1004 readable var _n_kwbreak
: TKwbreak
1008 readable var _n_id
: List[TId] = new List[TId]
1009 readable var _n_classid
: nullable TClassid = null
1013 readable var _n_comment
: List[TComment] = new List[TComment]
1018 readable var _n_base
: nullable AModule
1019 readable var _n_eof
: EOF