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_expr
: AExpr
708 readable var _n_expr2
: AExpr
712 readable var _n_kwnot
: TKwnot
713 readable var _n_expr
: 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_expr2
: AExpr
752 readable var _n_expr
: AExpr
753 readable var _n_type
: AType
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_minus
: TMinus
788 readable var _n_expr
: AExpr
792 readable var _n_kwnew
: TKwnew
793 readable var _n_type
: AType
794 readable var _n_id
: nullable TId = null
795 readable var _n_args
: List[AExpr] = new List[AExpr]
799 readable var _n_expr
: AExpr
800 readable var _n_id
: TAttrid
802 class AAttrAssignExpr
804 readable var _n_expr
: AExpr
805 readable var _n_id
: TAttrid
806 readable var _n_assign
: TAssign
807 readable var _n_value
: AExpr
809 class AAttrReassignExpr
811 readable var _n_expr
: AExpr
812 readable var _n_id
: TAttrid
813 readable var _n_assign_op
: AAssignOp
814 readable var _n_value
: AExpr
818 readable var _n_expr
: AExpr
819 readable var _n_id
: TId
820 readable var _n_args
: List[AExpr] = new List[AExpr]
821 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
823 class ACallAssignExpr
825 readable var _n_expr
: AExpr
826 readable var _n_id
: TId
827 readable var _n_args
: List[AExpr] = new List[AExpr]
828 readable var _n_assign
: TAssign
829 readable var _n_value
: AExpr
831 class ACallReassignExpr
833 readable var _n_expr
: AExpr
834 readable var _n_id
: TId
835 readable var _n_args
: List[AExpr] = new List[AExpr]
836 readable var _n_assign_op
: AAssignOp
837 readable var _n_value
: AExpr
841 readable var _n_qualified
: nullable AQualified = null
842 readable var _n_kwsuper
: TKwsuper
843 readable var _n_args
: List[AExpr] = new List[AExpr]
847 readable var _n_expr
: AExpr
848 readable var _n_kwinit
: TKwinit
849 readable var _n_args
: List[AExpr] = new List[AExpr]
853 readable var _n_expr
: AExpr
854 readable var _n_args
: List[AExpr] = new List[AExpr]
855 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
859 readable var _n_expr
: AExpr
860 readable var _n_args
: List[AExpr] = new List[AExpr]
861 readable var _n_assign
: TAssign
862 readable var _n_value
: AExpr
864 class ABraReassignExpr
866 readable var _n_expr
: AExpr
867 readable var _n_args
: List[AExpr] = new List[AExpr]
868 readable var _n_assign_op
: AAssignOp
869 readable var _n_value
: AExpr
871 class AClosureCallExpr
873 readable var _n_id
: TId
874 readable var _n_args
: List[AExpr] = new List[AExpr]
875 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
879 readable var _n_id
: TId
883 readable var _n_id
: TId
884 readable var _n_assign
: TAssign
885 readable var _n_value
: AExpr
887 class AVarReassignExpr
889 readable var _n_id
: TId
890 readable var _n_assign_op
: AAssignOp
891 readable var _n_value
: 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_expr
: AExpr
906 readable var _n_expr2
: AExpr
910 readable var _n_exprs
: List[AExpr] = new List[AExpr]
914 readable var _n_kwself
: TKwself
916 class AImplicitSelfExpr
921 readable var _n_kwtrue
: TKwtrue
925 readable var _n_kwfalse
: TKwfalse
929 readable var _n_kwnull
: TKwnull
933 readable var _n_number
: TNumber
937 readable var _n_float
: TFloat
941 readable var _n_char
: TChar
945 readable var _n_string
: TString
947 class AStartStringExpr
949 readable var _n_string
: TStartString
953 readable var _n_string
: TMidString
957 readable var _n_string
: TEndString
959 class ASuperstringExpr
961 readable var _n_exprs
: List[AExpr] = new List[AExpr]
965 readable var _n_expr
: AExpr
969 readable var _n_expr
: AExpr
970 readable var _n_kwas
: TKwas
971 readable var _n_type
: AType
975 readable var _n_expr
: AExpr
976 readable var _n_kwas
: TKwas
977 readable var _n_kwnot
: TKwnot
978 readable var _n_kwnull
: TKwnull
982 readable var _n_kwisset
: TKwisset
983 readable var _n_expr
: AExpr
984 readable var _n_id
: TAttrid
988 readable var _n_pluseq
: TPluseq
992 readable var _n_minuseq
: TMinuseq
996 readable var _n_bang
: TBang
997 readable var _n_id
: AClosureId
998 readable var _n_ids
: List[TId] = new List[TId]
999 readable var _n_kwdo
: nullable TKwdo = null
1000 readable var _n_expr
: nullable AExpr = null
1001 readable var _n_label
: nullable ALabel = null
1003 class ASimpleClosureId
1005 readable var _n_id
: TId
1007 class ABreakClosureId
1009 readable var _n_kwbreak
: TKwbreak
1013 readable var _n_id
: List[TId] = new List[TId]
1014 readable var _n_classid
: nullable TClassid = null
1018 readable var _n_comment
: List[TComment] = new List[TComment]
1023 readable var _n_base
: nullable AModule
1024 readable var _n_eof
: EOF