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
: TKwspecial
402 readable var _n_type
: AType
406 readable var _n_doc
: nullable ADoc = null
407 readable var _n_readable
: nullable AAble = null
408 readable var _n_writable
: nullable AAble = null
409 readable var _n_kwredef
: nullable TKwredef = null
410 readable var _n_visibility
: AVisibility
411 readable var _n_kwvar
: TKwvar
412 readable var _n_id
: TAttrid
413 readable var _n_type
: nullable AType = null
414 readable var _n_expr
: nullable AExpr = null
418 readable var _n_doc
: nullable ADoc = null
419 readable var _n_kwredef
: nullable TKwredef = null
420 readable var _n_visibility
: AVisibility
421 readable var _n_methid
: AMethid
422 readable var _n_signature
: ASignature
424 class ADeferredMethPropdef
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_kwmeth
: TKwmeth
430 readable var _n_methid
: AMethid
431 readable var _n_signature
: ASignature
433 class AInternMethPropdef
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 AExternMethPropdef
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
450 readable var _n_extern
: nullable TString = null
452 class AConcreteMethPropdef
454 readable var _n_doc
: nullable ADoc = null
455 readable var _n_kwredef
: nullable TKwredef = null
456 readable var _n_visibility
: AVisibility
457 readable var _n_kwmeth
: TKwmeth
458 readable var _n_methid
: AMethid
459 readable var _n_signature
: ASignature
460 readable var _n_block
: nullable AExpr = null
462 class AConcreteInitPropdef
464 readable var _n_doc
: nullable ADoc = null
465 readable var _n_kwredef
: nullable TKwredef = null
466 readable var _n_visibility
: AVisibility
467 readable var _n_kwinit
: TKwinit
468 readable var _n_methid
: nullable AMethid = null
469 readable var _n_signature
: ASignature
470 readable var _n_block
: nullable AExpr = null
472 class AMainMethPropdef
474 readable var _n_kwredef
: nullable TKwredef = null
475 readable var _n_block
: nullable AExpr = null
479 readable var _n_doc
: nullable ADoc = null
480 readable var _n_kwredef
: nullable TKwredef = null
481 readable var _n_visibility
: AVisibility
482 readable var _n_kwtype
: TKwtype
483 readable var _n_id
: TClassid
484 readable var _n_type
: AType
488 readable var _n_kwredef
: nullable TKwredef = null
489 readable var _n_kwreadable
: TKwreadable
493 readable var _n_kwredef
: nullable TKwredef = null
494 readable var _n_kwwritable
: TKwwritable
498 readable var _n_id
: TId
502 readable var _n_plus
: TPlus
506 readable var _n_minus
: TMinus
510 readable var _n_star
: TStar
514 readable var _n_slash
: TSlash
518 readable var _n_percent
: TPercent
522 readable var _n_eq
: TEq
526 readable var _n_ne
: TNe
530 readable var _n_le
: TLe
534 readable var _n_ge
: TGe
538 readable var _n_lt
: TLt
542 readable var _n_gt
: TGt
546 readable var _n_obra
: TObra
547 readable var _n_cbra
: TCbra
549 class AStarshipMethid
551 readable var _n_starship
: TStarship
555 readable var _n_id
: TId
556 readable var _n_assign
: TAssign
558 class ABraassignMethid
560 readable var _n_obra
: TObra
561 readable var _n_cbra
: TCbra
562 readable var _n_assign
: TAssign
566 readable var _n_params
: List[AParam] = new List[AParam]
567 readable var _n_type
: nullable AType = null
568 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
572 readable var _n_id
: TId
573 readable var _n_type
: nullable AType = null
574 readable var _n_dotdotdot
: nullable TDotdotdot = null
578 readable var _n_kwbreak
: nullable TKwbreak = null
579 readable var _n_bang
: TBang
580 readable var _n_id
: TId
581 readable var _n_signature
: ASignature
582 readable var _n_expr
: nullable AExpr = null
586 readable var _n_kwnullable
: nullable TKwnullable = null
587 readable var _n_id
: TClassid
588 readable var _n_types
: List[AType] = new List[AType]
592 readable var _n_kwlabel
: TKwlabel
593 readable var _n_id
: TId
597 readable var _n_expr
: List[AExpr] = new List[AExpr]
601 readable var _n_kwvar
: TKwvar
602 readable var _n_id
: TId
603 readable var _n_type
: nullable AType = null
604 readable var _n_assign
: nullable TAssign = null
605 readable var _n_expr
: nullable AExpr = null
609 readable var _n_kwreturn
: nullable TKwreturn = null
610 readable var _n_expr
: nullable AExpr = null
614 readable var _n_kwbreak
: TKwbreak
615 readable var _n_label
: nullable ALabel = null
616 readable var _n_expr
: nullable AExpr = null
620 readable var _n_kwabort
: TKwabort
624 readable var _n_kwcontinue
: nullable TKwcontinue = null
625 readable var _n_label
: nullable ALabel = null
626 readable var _n_expr
: nullable AExpr = null
630 readable var _n_kwdo
: TKwdo
631 readable var _n_block
: nullable AExpr = null
632 readable var _n_label
: nullable ALabel = null
636 readable var _n_kwif
: TKwif
637 readable var _n_expr
: AExpr
638 readable var _n_then
: nullable AExpr = null
639 readable var _n_else
: nullable AExpr = null
643 readable var _n_kwif
: TKwif
644 readable var _n_expr
: AExpr
645 readable var _n_kwthen
: TKwthen
646 readable var _n_then
: AExpr
647 readable var _n_kwelse
: TKwelse
648 readable var _n_else
: AExpr
652 readable var _n_kwwhile
: TKwwhile
653 readable var _n_expr
: AExpr
654 readable var _n_kwdo
: TKwdo
655 readable var _n_block
: nullable AExpr = null
656 readable var _n_label
: nullable ALabel = null
660 readable var _n_kwloop
: TKwloop
661 readable var _n_block
: nullable AExpr = null
662 readable var _n_label
: nullable ALabel = null
666 readable var _n_kwfor
: TKwfor
667 readable var _n_id
: TId
668 readable var _n_expr
: AExpr
669 readable var _n_kwdo
: TKwdo
670 readable var _n_block
: nullable AExpr = null
671 readable var _n_label
: nullable ALabel = null
675 readable var _n_kwassert
: TKwassert
676 readable var _n_id
: nullable TId = null
677 readable var _n_expr
: AExpr
678 readable var _n_else
: nullable AExpr = null
682 readable var _n_kwonce
: TKwonce
683 readable var _n_expr
: AExpr
687 readable var _n_expr
: AExpr
691 readable var _n_expr
: AExpr
692 readable var _n_expr2
: AExpr
696 readable var _n_expr
: AExpr
697 readable var _n_expr2
: AExpr
701 readable var _n_expr
: AExpr
702 readable var _n_expr2
: AExpr
706 readable var _n_kwnot
: TKwnot
707 readable var _n_expr
: AExpr
711 readable var _n_expr
: AExpr
712 readable var _n_expr2
: AExpr
716 readable var _n_expr
: AExpr
717 readable var _n_expr2
: AExpr
721 readable var _n_expr
: AExpr
722 readable var _n_expr2
: AExpr
726 readable var _n_expr
: AExpr
727 readable var _n_expr2
: AExpr
731 readable var _n_expr
: AExpr
732 readable var _n_expr2
: AExpr
736 readable var _n_expr
: AExpr
737 readable var _n_expr2
: AExpr
741 readable var _n_expr
: AExpr
742 readable var _n_expr2
: AExpr
746 readable var _n_expr
: AExpr
747 readable var _n_type
: AType
751 readable var _n_expr
: AExpr
752 readable var _n_expr2
: AExpr
756 readable var _n_expr
: AExpr
757 readable var _n_expr2
: AExpr
761 readable var _n_expr
: AExpr
762 readable var _n_expr2
: AExpr
766 readable var _n_expr
: AExpr
767 readable var _n_expr2
: AExpr
771 readable var _n_expr
: AExpr
772 readable var _n_expr2
: AExpr
776 readable var _n_expr
: AExpr
777 readable var _n_expr2
: AExpr
781 readable var _n_minus
: TMinus
782 readable var _n_expr
: AExpr
786 readable var _n_kwnew
: TKwnew
787 readable var _n_type
: AType
788 readable var _n_id
: nullable TId = null
789 readable var _n_args
: List[AExpr] = new List[AExpr]
793 readable var _n_expr
: AExpr
794 readable var _n_id
: TAttrid
796 class AAttrAssignExpr
798 readable var _n_expr
: AExpr
799 readable var _n_id
: TAttrid
800 readable var _n_assign
: TAssign
801 readable var _n_value
: AExpr
803 class AAttrReassignExpr
805 readable var _n_expr
: AExpr
806 readable var _n_id
: TAttrid
807 readable var _n_assign_op
: AAssignOp
808 readable var _n_value
: AExpr
812 readable var _n_expr
: AExpr
813 readable var _n_id
: TId
814 readable var _n_args
: List[AExpr] = new List[AExpr]
815 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
817 class ACallAssignExpr
819 readable var _n_expr
: AExpr
820 readable var _n_id
: TId
821 readable var _n_args
: List[AExpr] = new List[AExpr]
822 readable var _n_assign
: TAssign
823 readable var _n_value
: AExpr
825 class ACallReassignExpr
827 readable var _n_expr
: AExpr
828 readable var _n_id
: TId
829 readable var _n_args
: List[AExpr] = new List[AExpr]
830 readable var _n_assign_op
: AAssignOp
831 readable var _n_value
: AExpr
835 readable var _n_qualified
: nullable AQualified = null
836 readable var _n_kwsuper
: TKwsuper
837 readable var _n_args
: List[AExpr] = new List[AExpr]
841 readable var _n_expr
: AExpr
842 readable var _n_kwinit
: TKwinit
843 readable var _n_args
: List[AExpr] = new List[AExpr]
847 readable var _n_expr
: AExpr
848 readable var _n_args
: List[AExpr] = new List[AExpr]
849 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
853 readable var _n_expr
: AExpr
854 readable var _n_args
: List[AExpr] = new List[AExpr]
855 readable var _n_assign
: TAssign
856 readable var _n_value
: AExpr
858 class ABraReassignExpr
860 readable var _n_expr
: AExpr
861 readable var _n_args
: List[AExpr] = new List[AExpr]
862 readable var _n_assign_op
: AAssignOp
863 readable var _n_value
: AExpr
865 class AClosureCallExpr
867 readable var _n_id
: TId
868 readable var _n_args
: List[AExpr] = new List[AExpr]
869 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
873 readable var _n_id
: TId
877 readable var _n_id
: TId
878 readable var _n_assign
: TAssign
879 readable var _n_value
: AExpr
881 class AVarReassignExpr
883 readable var _n_id
: TId
884 readable var _n_assign_op
: AAssignOp
885 readable var _n_value
: AExpr
889 readable var _n_expr
: AExpr
890 readable var _n_expr2
: AExpr
894 readable var _n_expr
: AExpr
895 readable var _n_expr2
: AExpr
899 readable var _n_expr
: AExpr
900 readable var _n_expr2
: AExpr
904 readable var _n_exprs
: List[AExpr] = new List[AExpr]
908 readable var _n_kwself
: TKwself
910 class AImplicitSelfExpr
915 readable var _n_kwtrue
: TKwtrue
919 readable var _n_kwfalse
: TKwfalse
923 readable var _n_kwnull
: TKwnull
927 readable var _n_number
: TNumber
931 readable var _n_float
: TFloat
935 readable var _n_char
: TChar
939 readable var _n_string
: TString
941 class AStartStringExpr
943 readable var _n_string
: TStartString
947 readable var _n_string
: TMidString
951 readable var _n_string
: TEndString
953 class ASuperstringExpr
955 readable var _n_exprs
: List[AExpr] = new List[AExpr]
959 readable var _n_expr
: AExpr
963 readable var _n_expr
: AExpr
964 readable var _n_kwas
: TKwas
965 readable var _n_type
: AType
969 readable var _n_expr
: AExpr
970 readable var _n_kwas
: TKwas
971 readable var _n_kwnot
: TKwnot
972 readable var _n_kwnull
: TKwnull
976 readable var _n_kwisset
: TKwisset
977 readable var _n_expr
: AExpr
978 readable var _n_id
: TAttrid
982 readable var _n_pluseq
: TPluseq
986 readable var _n_minuseq
: TMinuseq
990 readable var _n_bang
: TBang
991 readable var _n_id
: AClosureId
992 readable var _n_ids
: List[TId] = new List[TId]
993 readable var _n_kwdo
: nullable TKwdo = null
994 readable var _n_expr
: nullable AExpr = null
995 readable var _n_label
: nullable ALabel = null
997 class ASimpleClosureId
999 readable var _n_id
: TId
1001 class ABreakClosureId
1003 readable var _n_kwbreak
: TKwbreak
1007 readable var _n_id
: List[TId] = new List[TId]
1008 readable var _n_classid
: nullable TClassid = null
1012 readable var _n_comment
: List[TComment] = new List[TComment]
1017 readable var _n_base
: nullable AModule
1018 readable var _n_eof
: EOF