1 # Raw AST node hierarchy.
2 # This file was generated by SableCC (http://www.sablecc.org/).
283 class TExternCodeSegment
299 class AModule super Prod end
300 class AModuledecl super Prod end
301 class AImport super Prod end
302 class AVisibility super Prod end
303 class AClassdef super Prod end
304 class AClasskind super Prod end
305 class AFormaldef super Prod end
306 class ASuperclass super Prod end
307 class APropdef super Prod end
308 class AAble super Prod end
309 class AMethid super Prod end
310 class ASignature super Prod end
311 class AParam super Prod end
312 class AClosureDecl super Prod end
313 class AType super Prod end
314 class ALabel super Prod end
315 class AExpr super Prod end
316 class AExprs super Prod end
317 class AAssignOp super Prod end
318 class AClosureDef super Prod end
319 class AClosureId super Prod end
320 class AModuleName super Prod end
321 class AExternCalls super Prod end
322 class AExternCall super Prod end
323 class AInLanguage super Prod end
324 class AExternCodeBlock super Prod end
325 class AQualified super Prod end
326 class ADoc super Prod end
327 class AAnnotations super Prod end
328 class AAnnotation super Prod end
329 class AAtArg super Prod end
330 class AAtid super Prod end
334 readable var _n_moduledecl
: nullable AModuledecl = null
335 readable var _n_imports
: List[AImport] = new List[AImport]
336 readable var _n_extern_code_blocks
: List[AExternCodeBlock] = new List[AExternCodeBlock]
337 readable var _n_classdefs
: List[AClassdef] = new List[AClassdef]
341 readable var _n_doc
: nullable ADoc = null
342 readable var _n_kwmodule
: TKwmodule
343 readable var _n_name
: AModuleName
344 readable var _n_annotations
: nullable AAnnotations = null
348 readable var _n_visibility
: AVisibility
349 readable var _n_kwimport
: TKwimport
350 readable var _n_name
: AModuleName
351 readable var _n_annotations
: nullable AAnnotations = null
355 readable var _n_visibility
: AVisibility
356 readable var _n_kwimport
: TKwimport
357 readable var _n_kwend
: TKwend
359 class APublicVisibility
362 class APrivateVisibility
364 readable var _n_kwprivate
: TKwprivate
366 class AProtectedVisibility
368 readable var _n_kwprotected
: TKwprotected
370 class AIntrudeVisibility
372 readable var _n_kwintrude
: TKwintrude
376 readable var _n_doc
: nullable ADoc = null
377 readable var _n_kwredef
: nullable TKwredef = null
378 readable var _n_visibility
: AVisibility
379 readable var _n_classkind
: AClasskind
380 readable var _n_id
: nullable TClassid = null
381 readable var _n_formaldefs
: List[AFormaldef] = new List[AFormaldef]
382 readable var _n_annotations
: nullable AAnnotations = null
383 readable var _n_extern_code_block
: nullable AExternCodeBlock = null
384 readable var _n_superclasses
: List[ASuperclass] = new List[ASuperclass]
385 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
386 readable var _n_kwend
: TKwend
390 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
394 readable var _n_propdefs
: List[APropdef] = new List[APropdef]
396 class AConcreteClasskind
398 readable var _n_kwclass
: TKwclass
400 class AAbstractClasskind
402 readable var _n_kwabstract
: TKwabstract
403 readable var _n_kwclass
: TKwclass
405 class AInterfaceClasskind
407 readable var _n_kwinterface
: TKwinterface
411 readable var _n_kwenum
: TKwenum
413 class AExternClasskind
415 readable var _n_kwextern
: TKwextern
416 readable var _n_kwclass
: nullable TKwclass = null
420 readable var _n_id
: TClassid
421 readable var _n_type
: nullable AType = null
422 readable var _n_annotations
: nullable AAnnotations = null
426 readable var _n_kwsuper
: TKwsuper
427 readable var _n_type
: AType
428 readable var _n_annotations
: nullable AAnnotations = null
432 readable var _n_doc
: nullable ADoc = null
433 readable var _n_readable
: nullable AAble = null
434 readable var _n_writable
: nullable AAble = null
435 readable var _n_kwredef
: nullable TKwredef = null
436 readable var _n_visibility
: AVisibility
437 readable var _n_kwvar
: TKwvar
438 readable var _n_id
: nullable TAttrid = null
439 readable var _n_id2
: nullable TId = null
440 readable var _n_type
: nullable AType = null
441 readable var _n_annotations
: nullable AAnnotations = null
442 readable var _n_expr
: nullable AExpr = null
446 readable var _n_doc
: nullable ADoc = null
447 readable var _n_kwredef
: nullable TKwredef = null
448 readable var _n_visibility
: AVisibility
449 readable var _n_methid
: AMethid
450 readable var _n_signature
: ASignature
452 class ADeferredMethPropdef
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_annotations
: nullable AAnnotations = null
462 class AInternMethPropdef
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_kwmeth
: TKwmeth
468 readable var _n_methid
: AMethid
469 readable var _n_signature
: ASignature
471 class AExternMethPropdef
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_kwmeth
: TKwmeth
477 readable var _n_methid
: AMethid
478 readable var _n_signature
: ASignature
479 readable var _n_extern
: nullable TString = null
480 readable var _n_extern_calls
: nullable AExternCalls = null
481 readable var _n_extern_code_block
: nullable AExternCodeBlock = null
483 class AConcreteMethPropdef
485 readable var _n_doc
: nullable ADoc = null
486 readable var _n_kwredef
: nullable TKwredef = null
487 readable var _n_visibility
: AVisibility
488 readable var _n_kwmeth
: TKwmeth
489 readable var _n_methid
: AMethid
490 readable var _n_signature
: ASignature
491 readable var _n_annotations
: nullable AAnnotations = null
492 readable var _n_block
: nullable AExpr = null
494 class AConcreteInitPropdef
496 readable var _n_doc
: nullable ADoc = null
497 readable var _n_kwredef
: nullable TKwredef = null
498 readable var _n_visibility
: AVisibility
499 readable var _n_kwinit
: TKwinit
500 readable var _n_methid
: nullable AMethid = null
501 readable var _n_signature
: ASignature
502 readable var _n_annotations
: nullable AAnnotations = null
503 readable var _n_block
: nullable AExpr = null
505 class AExternInitPropdef
507 readable var _n_doc
: nullable ADoc = null
508 readable var _n_kwredef
: nullable TKwredef = null
509 readable var _n_visibility
: AVisibility
510 readable var _n_kwnew
: TKwnew
511 readable var _n_methid
: nullable AMethid = null
512 readable var _n_signature
: ASignature
513 readable var _n_extern
: nullable TString = null
514 readable var _n_extern_calls
: nullable AExternCalls = null
515 readable var _n_extern_code_block
: nullable AExternCodeBlock = null
517 class AMainMethPropdef
519 readable var _n_kwredef
: nullable TKwredef = null
520 readable var _n_block
: nullable AExpr = null
524 readable var _n_doc
: nullable ADoc = null
525 readable var _n_kwredef
: nullable TKwredef = null
526 readable var _n_visibility
: AVisibility
527 readable var _n_kwtype
: TKwtype
528 readable var _n_id
: TClassid
529 readable var _n_type
: AType
530 readable var _n_annotations
: nullable AAnnotations = null
534 readable var _n_kwredef
: nullable TKwredef = null
535 readable var _n_kwreadable
: TKwreadable
539 readable var _n_kwredef
: nullable TKwredef = null
540 readable var _n_visibility
: nullable AVisibility = null
541 readable var _n_kwwritable
: TKwwritable
545 readable var _n_id
: TId
549 readable var _n_plus
: TPlus
553 readable var _n_minus
: TMinus
557 readable var _n_star
: TStar
561 readable var _n_slash
: TSlash
565 readable var _n_percent
: TPercent
569 readable var _n_eq
: TEq
573 readable var _n_ne
: TNe
577 readable var _n_le
: TLe
581 readable var _n_ge
: TGe
585 readable var _n_lt
: TLt
589 readable var _n_gt
: TGt
593 readable var _n_ll
: TLl
597 readable var _n_gg
: TGg
601 readable var _n_obra
: TObra
602 readable var _n_cbra
: TCbra
604 class AStarshipMethid
606 readable var _n_starship
: TStarship
610 readable var _n_id
: TId
611 readable var _n_assign
: TAssign
613 class ABraassignMethid
615 readable var _n_obra
: TObra
616 readable var _n_cbra
: TCbra
617 readable var _n_assign
: TAssign
621 readable var _n_opar
: nullable TOpar = null
622 readable var _n_params
: List[AParam] = new List[AParam]
623 readable var _n_cpar
: nullable TCpar = null
624 readable var _n_type
: nullable AType = null
625 readable var _n_closure_decls
: List[AClosureDecl] = new List[AClosureDecl]
629 readable var _n_id
: TId
630 readable var _n_type
: nullable AType = null
631 readable var _n_dotdotdot
: nullable TDotdotdot = null
632 readable var _n_annotations
: nullable AAnnotations = null
636 readable var _n_kwbreak
: nullable TKwbreak = null
637 readable var _n_bang
: TBang
638 readable var _n_id
: TId
639 readable var _n_signature
: ASignature
640 readable var _n_expr
: nullable AExpr = null
644 readable var _n_kwnullable
: nullable TKwnullable = null
645 readable var _n_id
: TClassid
646 readable var _n_types
: List[AType] = new List[AType]
647 readable var _n_annotations
: nullable AAnnotations = null
651 readable var _n_kwlabel
: TKwlabel
652 readable var _n_id
: TId
656 readable var _n_expr
: List[AExpr] = new List[AExpr]
657 readable var _n_kwend
: nullable TKwend = null
661 readable var _n_kwvar
: TKwvar
662 readable var _n_id
: TId
663 readable var _n_type
: nullable AType = null
664 readable var _n_assign
: nullable TAssign = null
665 readable var _n_expr
: nullable AExpr = null
666 readable var _n_annotations
: nullable AAnnotations = null
670 readable var _n_kwreturn
: nullable TKwreturn = null
671 readable var _n_expr
: nullable AExpr = null
675 readable var _n_kwbreak
: TKwbreak
676 readable var _n_label
: nullable ALabel = null
677 readable var _n_expr
: nullable AExpr = null
681 readable var _n_kwabort
: TKwabort
685 readable var _n_kwcontinue
: nullable TKwcontinue = null
686 readable var _n_label
: nullable ALabel = null
687 readable var _n_expr
: nullable AExpr = null
691 readable var _n_kwdo
: TKwdo
692 readable var _n_block
: nullable AExpr = null
693 readable var _n_label
: nullable ALabel = null
697 readable var _n_kwif
: TKwif
698 readable var _n_expr
: AExpr
699 readable var _n_then
: nullable AExpr = null
700 readable var _n_else
: nullable AExpr = null
704 readable var _n_kwif
: TKwif
705 readable var _n_expr
: AExpr
706 readable var _n_kwthen
: TKwthen
707 readable var _n_then
: AExpr
708 readable var _n_kwelse
: TKwelse
709 readable var _n_else
: AExpr
713 readable var _n_kwwhile
: TKwwhile
714 readable var _n_expr
: AExpr
715 readable var _n_kwdo
: TKwdo
716 readable var _n_block
: nullable AExpr = null
717 readable var _n_label
: nullable ALabel = null
721 readable var _n_kwloop
: TKwloop
722 readable var _n_block
: nullable AExpr = null
723 readable var _n_label
: nullable ALabel = null
727 readable var _n_kwfor
: TKwfor
728 readable var _n_ids
: List[TId] = new List[TId]
729 readable var _n_expr
: AExpr
730 readable var _n_kwdo
: TKwdo
731 readable var _n_block
: nullable AExpr = null
732 readable var _n_label
: nullable ALabel = null
736 readable var _n_kwassert
: TKwassert
737 readable var _n_id
: nullable TId = null
738 readable var _n_expr
: AExpr
739 readable var _n_else
: nullable AExpr = null
743 readable var _n_kwonce
: TKwonce
744 readable var _n_expr
: AExpr
748 readable var _n_expr
: AExpr
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_kwnot
: TKwnot
773 readable var _n_expr
: 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_expr
: AExpr
788 readable var _n_expr2
: AExpr
792 readable var _n_expr
: AExpr
793 readable var _n_expr2
: AExpr
797 readable var _n_expr
: AExpr
798 readable var _n_expr2
: AExpr
802 readable var _n_expr
: AExpr
803 readable var _n_expr2
: AExpr
807 readable var _n_expr
: AExpr
808 readable var _n_expr2
: AExpr
812 readable var _n_expr
: AExpr
813 readable var _n_expr2
: AExpr
817 readable var _n_expr
: AExpr
818 readable var _n_expr2
: AExpr
822 readable var _n_expr
: AExpr
823 readable var _n_type
: AType
827 readable var _n_expr
: AExpr
828 readable var _n_expr2
: AExpr
832 readable var _n_expr
: AExpr
833 readable var _n_expr2
: AExpr
837 readable var _n_expr
: AExpr
838 readable var _n_expr2
: AExpr
842 readable var _n_expr
: AExpr
843 readable var _n_expr2
: AExpr
847 readable var _n_expr
: AExpr
848 readable var _n_expr2
: AExpr
852 readable var _n_expr
: AExpr
853 readable var _n_expr2
: AExpr
857 readable var _n_minus
: TMinus
858 readable var _n_expr
: AExpr
862 readable var _n_kwnew
: TKwnew
863 readable var _n_type
: AType
864 readable var _n_id
: nullable TId = null
865 readable var _n_args
: AExprs
869 readable var _n_expr
: AExpr
870 readable var _n_id
: TAttrid
872 class AAttrAssignExpr
874 readable var _n_expr
: AExpr
875 readable var _n_id
: TAttrid
876 readable var _n_assign
: TAssign
877 readable var _n_value
: AExpr
879 class AAttrReassignExpr
881 readable var _n_expr
: AExpr
882 readable var _n_id
: TAttrid
883 readable var _n_assign_op
: AAssignOp
884 readable var _n_value
: AExpr
888 readable var _n_expr
: AExpr
889 readable var _n_id
: TId
890 readable var _n_args
: AExprs
891 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
893 class ACallAssignExpr
895 readable var _n_expr
: AExpr
896 readable var _n_id
: TId
897 readable var _n_args
: AExprs
898 readable var _n_assign
: TAssign
899 readable var _n_value
: AExpr
901 class ACallReassignExpr
903 readable var _n_expr
: AExpr
904 readable var _n_id
: TId
905 readable var _n_args
: AExprs
906 readable var _n_assign_op
: AAssignOp
907 readable var _n_value
: AExpr
911 readable var _n_qualified
: nullable AQualified = null
912 readable var _n_kwsuper
: TKwsuper
913 readable var _n_args
: AExprs
917 readable var _n_expr
: AExpr
918 readable var _n_kwinit
: TKwinit
919 readable var _n_args
: AExprs
923 readable var _n_expr
: AExpr
924 readable var _n_args
: AExprs
925 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
929 readable var _n_expr
: AExpr
930 readable var _n_args
: AExprs
931 readable var _n_assign
: TAssign
932 readable var _n_value
: AExpr
934 class ABraReassignExpr
936 readable var _n_expr
: AExpr
937 readable var _n_args
: AExprs
938 readable var _n_assign_op
: AAssignOp
939 readable var _n_value
: AExpr
941 class AClosureCallExpr
943 readable var _n_id
: TId
944 readable var _n_args
: AExprs
945 readable var _n_closure_defs
: List[AClosureDef] = new List[AClosureDef]
949 readable var _n_id
: TId
953 readable var _n_id
: TId
954 readable var _n_assign
: TAssign
955 readable var _n_value
: AExpr
957 class AVarReassignExpr
959 readable var _n_id
: TId
960 readable var _n_assign_op
: AAssignOp
961 readable var _n_value
: AExpr
965 readable var _n_expr
: AExpr
966 readable var _n_expr2
: AExpr
967 readable var _n_annotations
: nullable AAnnotations = null
971 readable var _n_obra
: TObra
972 readable var _n_expr
: AExpr
973 readable var _n_expr2
: AExpr
974 readable var _n_cbra
: TCbra
975 readable var _n_annotations
: nullable AAnnotations = null
979 readable var _n_obra
: TObra
980 readable var _n_expr
: AExpr
981 readable var _n_expr2
: AExpr
982 readable var _n_cbra
: TObra
983 readable var _n_annotations
: nullable AAnnotations = null
987 readable var _n_exprs
: AExprs
988 readable var _n_annotations
: nullable AAnnotations = null
992 readable var _n_kwself
: TKwself
993 readable var _n_annotations
: nullable AAnnotations = null
995 class AImplicitSelfExpr
1000 readable var _n_kwtrue
: TKwtrue
1001 readable var _n_annotations
: nullable AAnnotations = null
1005 readable var _n_kwfalse
: TKwfalse
1006 readable var _n_annotations
: nullable AAnnotations = null
1010 readable var _n_kwnull
: TKwnull
1011 readable var _n_annotations
: nullable AAnnotations = null
1015 readable var _n_number
: TNumber
1016 readable var _n_annotations
: nullable AAnnotations = null
1020 readable var _n_float
: TFloat
1021 readable var _n_annotations
: nullable AAnnotations = null
1025 readable var _n_char
: TChar
1026 readable var _n_annotations
: nullable AAnnotations = null
1030 readable var _n_string
: TString
1031 readable var _n_annotations
: nullable AAnnotations = null
1033 class AStartStringExpr
1035 readable var _n_string
: TStartString
1037 class AMidStringExpr
1039 readable var _n_string
: TMidString
1041 class AEndStringExpr
1043 readable var _n_string
: TEndString
1045 class ASuperstringExpr
1047 readable var _n_exprs
: List[AExpr] = new List[AExpr]
1048 readable var _n_annotations
: nullable AAnnotations = null
1052 readable var _n_opar
: TOpar
1053 readable var _n_expr
: AExpr
1054 readable var _n_cpar
: TCpar
1055 readable var _n_annotations
: nullable AAnnotations = null
1059 readable var _n_expr
: AExpr
1060 readable var _n_kwas
: TKwas
1061 readable var _n_opar
: TOpar
1062 readable var _n_type
: AType
1063 readable var _n_cpar
: TCpar
1065 class AAsNotnullExpr
1067 readable var _n_expr
: AExpr
1068 readable var _n_kwas
: TKwas
1069 readable var _n_opar
: TOpar
1070 readable var _n_kwnot
: TKwnot
1071 readable var _n_kwnull
: TKwnull
1072 readable var _n_cpar
: TCpar
1074 class AIssetAttrExpr
1076 readable var _n_kwisset
: TKwisset
1077 readable var _n_expr
: AExpr
1078 readable var _n_id
: TAttrid
1080 class ADebugTypeExpr
1082 readable var _n_kwdebug
: TKwdebug
1083 readable var _n_kwtype
: TKwtype
1084 readable var _n_expr
: AExpr
1085 readable var _n_type
: AType
1089 readable var _n_exprs
: List[AExpr] = new List[AExpr]
1093 readable var _n_opar
: TOpar
1094 readable var _n_exprs
: List[AExpr] = new List[AExpr]
1095 readable var _n_cpar
: TCpar
1099 readable var _n_obra
: TObra
1100 readable var _n_exprs
: List[AExpr] = new List[AExpr]
1101 readable var _n_cbra
: TCbra
1105 readable var _n_pluseq
: TPluseq
1107 class AMinusAssignOp
1109 readable var _n_minuseq
: TMinuseq
1113 readable var _n_bang
: TBang
1114 readable var _n_id
: AClosureId
1115 readable var _n_ids
: List[TId] = new List[TId]
1116 readable var _n_kwdo
: nullable TKwdo = null
1117 readable var _n_expr
: nullable AExpr = null
1118 readable var _n_label
: nullable ALabel = null
1120 class ASimpleClosureId
1122 readable var _n_id
: TId
1124 class ABreakClosureId
1126 readable var _n_kwbreak
: TKwbreak
1130 readable var _n_quad
: nullable TQuad = null
1131 readable var _n_path
: List[TId] = new List[TId]
1132 readable var _n_id
: TId
1136 readable var _n_kwimport
: TKwimport
1137 readable var _n_extern_calls
: List[AExternCall] = new List[AExternCall]
1142 class ASuperExternCall
1144 readable var _n_kwsuper
: TKwsuper
1146 class ALocalPropExternCall
1148 readable var _n_methid
: AMethid
1150 class AFullPropExternCall
1152 readable var _n_classid
: TClassid
1153 readable var _n_quad
: nullable TQuad = null
1154 readable var _n_methid
: AMethid
1156 class AInitPropExternCall
1158 readable var _n_classid
: TClassid
1160 class ACastAsExternCall
1162 readable var _n_from_type
: AType
1163 readable var _n_kwas
: TKwas
1164 readable var _n_to_type
: AType
1166 class AAsNullableExternCall
1168 readable var _n_type
: AType
1169 readable var _n_kwas
: TKwas
1170 readable var _n_kwnullable
: TKwnullable
1172 class AAsNotNullableExternCall
1174 readable var _n_type
: AType
1175 readable var _n_kwas
: TKwas
1176 readable var _n_kwnot
: TKwnot
1177 readable var _n_kwnullable
: TKwnullable
1181 readable var _n_kwin
: TKwin
1182 readable var _n_string
: TString
1184 class AExternCodeBlock
1185 super AExternCodeBlock
1186 readable var _n_in_language
: nullable AInLanguage = null
1187 readable var _n_extern_code_segment
: TExternCodeSegment
1191 readable var _n_id
: List[TId] = new List[TId]
1192 readable var _n_classid
: nullable TClassid = null
1196 readable var _n_comment
: List[TComment] = new List[TComment]
1200 readable var _n_at
: nullable TAt = null
1201 readable var _n_opar
: nullable TOpar = null
1202 readable var _n_items
: List[AAnnotation] = new List[AAnnotation]
1203 readable var _n_cpar
: nullable TCpar = null
1207 readable var _n_atid
: AAtid
1208 readable var _n_opar
: nullable TOpar = null
1209 readable var _n_args
: List[AAtArg] = new List[AAtArg]
1210 readable var _n_cpar
: nullable TCpar = null
1211 readable var _n_annotations
: nullable AAnnotations = null
1215 readable var _n_type
: AType
1219 readable var _n_expr
: AExpr
1223 readable var _n_annotations
: AAnnotations
1227 readable var _n_id
: TId
1231 readable var _n_id
: TKwextern
1235 readable var _n_id
: TKwintern
1237 class AKwreadableAtid
1239 readable var _n_id
: TKwreadable
1241 class AKwwritableAtid
1243 readable var _n_id
: TKwwritable
1247 readable var _n_id
: TKwimport
1252 readable var _n_base
: nullable AModule
1253 readable var _n_eof
: EOF
1255 n_base
: nullable AModule,