1 # Production AST nodes full definition.
2 # This file was generated by SableCC (http://www.sablecc.org/).
6 intrude import parser_nodes
11 n_moduledecl
: nullable AModuledecl,
12 n_imports
: Collection[Object], # Should be Collection[AImport]
13 n_extern_code_blocks
: Collection[Object], # Should be Collection[AExternCodeBlock]
14 n_classdefs
: Collection[Object] # Should be Collection[AClassdef]
17 _n_moduledecl
= n_moduledecl
18 if n_moduledecl
!= null then n_moduledecl
.parent
= self
19 _n_imports
.unsafe_add_all
(n_imports
)
20 _n_extern_code_blocks
.unsafe_add_all
(n_extern_code_blocks
)
21 _n_classdefs
.unsafe_add_all
(n_classdefs
)
24 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
26 if _n_moduledecl
== old_child
then
27 n_moduledecl
= new_child
.as(nullable AModuledecl)
30 if _n_imports
.replace_child
(old_child
, new_child
) then return
31 if _n_extern_code_blocks
.replace_child
(old_child
, new_child
) then return
32 if _n_classdefs
.replace_child
(old_child
, new_child
) then return
35 redef fun n_moduledecl
=(node
)
38 if node
!= null then node
.parent
= self
42 redef fun visit_all
(v
: Visitor)
44 v
.enter_visit
(_n_moduledecl
)
45 _n_imports
.visit_all
(v
)
46 _n_extern_code_blocks
.visit_all
(v
)
47 _n_classdefs
.visit_all
(v
)
50 redef class AModuledecl
51 init init_amoduledecl
(
53 n_kwmodule
: nullable TKwmodule,
54 n_name
: nullable AModuleName,
55 n_annotations
: nullable AAnnotations
59 if n_doc
!= null then n_doc
.parent
= self
60 _n_kwmodule
= n_kwmodule
.as(not null)
61 n_kwmodule
.parent
= self
62 _n_name
= n_name
.as(not null)
64 _n_annotations
= n_annotations
65 if n_annotations
!= null then n_annotations
.parent
= self
68 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
70 if _n_doc
== old_child
then
71 n_doc
= new_child
.as(nullable ADoc)
74 if _n_kwmodule
== old_child
then
75 n_kwmodule
= new_child
.as(TKwmodule)
78 if _n_name
== old_child
then
79 n_name
= new_child
.as(AModuleName)
82 if _n_annotations
== old_child
then
83 n_annotations
= new_child
.as(nullable AAnnotations)
88 redef fun n_doc
=(node
)
91 if node
!= null then node
.parent
= self
93 redef fun n_kwmodule
=(node
)
98 redef fun n_name
=(node
)
103 redef fun n_annotations
=(node
)
105 _n_annotations
= node
106 if node
!= null then node
.parent
= self
110 redef fun visit_all
(v
: Visitor)
112 v
.enter_visit
(_n_doc
)
113 v
.enter_visit
(_n_kwmodule
)
114 v
.enter_visit
(_n_name
)
115 v
.enter_visit
(_n_annotations
)
118 redef class AStdImport
119 init init_astdimport
(
120 n_visibility
: nullable AVisibility,
121 n_kwimport
: nullable TKwimport,
122 n_name
: nullable AModuleName,
123 n_annotations
: nullable AAnnotations
126 _n_visibility
= n_visibility
.as(not null)
127 n_visibility
.parent
= self
128 _n_kwimport
= n_kwimport
.as(not null)
129 n_kwimport
.parent
= self
130 _n_name
= n_name
.as(not null)
132 _n_annotations
= n_annotations
133 if n_annotations
!= null then n_annotations
.parent
= self
136 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
138 if _n_visibility
== old_child
then
139 n_visibility
= new_child
.as(AVisibility)
142 if _n_kwimport
== old_child
then
143 n_kwimport
= new_child
.as(TKwimport)
146 if _n_name
== old_child
then
147 n_name
= new_child
.as(AModuleName)
150 if _n_annotations
== old_child
then
151 n_annotations
= new_child
.as(nullable AAnnotations)
156 redef fun n_visibility
=(node
)
161 redef fun n_kwimport
=(node
)
166 redef fun n_name
=(node
)
171 redef fun n_annotations
=(node
)
173 _n_annotations
= node
174 if node
!= null then node
.parent
= self
178 redef fun visit_all
(v
: Visitor)
180 v
.enter_visit
(_n_visibility
)
181 v
.enter_visit
(_n_kwimport
)
182 v
.enter_visit
(_n_name
)
183 v
.enter_visit
(_n_annotations
)
186 redef class ANoImport
187 init init_anoimport
(
188 n_visibility
: nullable AVisibility,
189 n_kwimport
: nullable TKwimport,
190 n_kwend
: nullable TKwend
193 _n_visibility
= n_visibility
.as(not null)
194 n_visibility
.parent
= self
195 _n_kwimport
= n_kwimport
.as(not null)
196 n_kwimport
.parent
= self
197 _n_kwend
= n_kwend
.as(not null)
198 n_kwend
.parent
= self
201 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
203 if _n_visibility
== old_child
then
204 n_visibility
= new_child
.as(AVisibility)
207 if _n_kwimport
== old_child
then
208 n_kwimport
= new_child
.as(TKwimport)
211 if _n_kwend
== old_child
then
212 n_kwend
= new_child
.as(TKwend)
217 redef fun n_visibility
=(node
)
222 redef fun n_kwimport
=(node
)
227 redef fun n_kwend
=(node
)
234 redef fun visit_all
(v
: Visitor)
236 v
.enter_visit
(_n_visibility
)
237 v
.enter_visit
(_n_kwimport
)
238 v
.enter_visit
(_n_kwend
)
241 redef class APublicVisibility
242 init init_apublicvisibility
246 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
252 redef fun visit_all
(v
: Visitor)
256 redef class APrivateVisibility
257 init init_aprivatevisibility
(
258 n_kwprivate
: nullable TKwprivate
261 _n_kwprivate
= n_kwprivate
.as(not null)
262 n_kwprivate
.parent
= self
265 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
267 if _n_kwprivate
== old_child
then
268 n_kwprivate
= new_child
.as(TKwprivate)
273 redef fun n_kwprivate
=(node
)
280 redef fun visit_all
(v
: Visitor)
282 v
.enter_visit
(_n_kwprivate
)
285 redef class AProtectedVisibility
286 init init_aprotectedvisibility
(
287 n_kwprotected
: nullable TKwprotected
290 _n_kwprotected
= n_kwprotected
.as(not null)
291 n_kwprotected
.parent
= self
294 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
296 if _n_kwprotected
== old_child
then
297 n_kwprotected
= new_child
.as(TKwprotected)
302 redef fun n_kwprotected
=(node
)
304 _n_kwprotected
= node
309 redef fun visit_all
(v
: Visitor)
311 v
.enter_visit
(_n_kwprotected
)
314 redef class AIntrudeVisibility
315 init init_aintrudevisibility
(
316 n_kwintrude
: nullable TKwintrude
319 _n_kwintrude
= n_kwintrude
.as(not null)
320 n_kwintrude
.parent
= self
323 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
325 if _n_kwintrude
== old_child
then
326 n_kwintrude
= new_child
.as(TKwintrude)
331 redef fun n_kwintrude
=(node
)
338 redef fun visit_all
(v
: Visitor)
340 v
.enter_visit
(_n_kwintrude
)
343 redef class AStdClassdef
344 init init_astdclassdef
(
345 n_doc
: nullable ADoc,
346 n_kwredef
: nullable TKwredef,
347 n_visibility
: nullable AVisibility,
348 n_classkind
: nullable AClasskind,
349 n_id
: nullable TClassid,
350 n_formaldefs
: Collection[Object], # Should be Collection[AFormaldef]
351 n_annotations
: nullable AAnnotations,
352 n_extern_code_block
: nullable AExternCodeBlock,
353 n_superclasses
: Collection[Object], # Should be Collection[ASuperclass]
354 n_propdefs
: Collection[Object], # Should be Collection[APropdef]
355 n_kwend
: nullable TKwend
359 if n_doc
!= null then n_doc
.parent
= self
360 _n_kwredef
= n_kwredef
361 if n_kwredef
!= null then n_kwredef
.parent
= self
362 _n_visibility
= n_visibility
.as(not null)
363 n_visibility
.parent
= self
364 _n_classkind
= n_classkind
.as(not null)
365 n_classkind
.parent
= self
367 if n_id
!= null then n_id
.parent
= self
368 _n_formaldefs
.unsafe_add_all
(n_formaldefs
)
369 _n_annotations
= n_annotations
370 if n_annotations
!= null then n_annotations
.parent
= self
371 _n_extern_code_block
= n_extern_code_block
372 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
373 _n_superclasses
.unsafe_add_all
(n_superclasses
)
374 _n_propdefs
.unsafe_add_all
(n_propdefs
)
375 _n_kwend
= n_kwend
.as(not null)
376 n_kwend
.parent
= self
379 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
381 if _n_doc
== old_child
then
382 n_doc
= new_child
.as(nullable ADoc)
385 if _n_kwredef
== old_child
then
386 n_kwredef
= new_child
.as(nullable TKwredef)
389 if _n_visibility
== old_child
then
390 n_visibility
= new_child
.as(AVisibility)
393 if _n_classkind
== old_child
then
394 n_classkind
= new_child
.as(AClasskind)
397 if _n_id
== old_child
then
398 n_id
= new_child
.as(nullable TClassid)
401 if _n_formaldefs
.replace_child
(old_child
, new_child
) then return
402 if _n_annotations
== old_child
then
403 n_annotations
= new_child
.as(nullable AAnnotations)
406 if _n_extern_code_block
== old_child
then
407 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
410 if _n_superclasses
.replace_child
(old_child
, new_child
) then return
411 if _n_propdefs
.replace_child
(old_child
, new_child
) then return
412 if _n_kwend
== old_child
then
413 n_kwend
= new_child
.as(TKwend)
418 redef fun n_doc
=(node
)
421 if node
!= null then node
.parent
= self
423 redef fun n_kwredef
=(node
)
426 if node
!= null then node
.parent
= self
428 redef fun n_visibility
=(node
)
433 redef fun n_classkind
=(node
)
438 redef fun n_id
=(node
)
441 if node
!= null then node
.parent
= self
443 redef fun n_annotations
=(node
)
445 _n_annotations
= node
446 if node
!= null then node
.parent
= self
448 redef fun n_extern_code_block
=(node
)
450 _n_extern_code_block
= node
451 if node
!= null then node
.parent
= self
453 redef fun n_kwend
=(node
)
460 redef fun visit_all
(v
: Visitor)
462 v
.enter_visit
(_n_doc
)
463 v
.enter_visit
(_n_kwredef
)
464 v
.enter_visit
(_n_visibility
)
465 v
.enter_visit
(_n_classkind
)
467 _n_formaldefs
.visit_all
(v
)
468 v
.enter_visit
(_n_annotations
)
469 v
.enter_visit
(_n_extern_code_block
)
470 _n_superclasses
.visit_all
(v
)
471 _n_propdefs
.visit_all
(v
)
472 v
.enter_visit
(_n_kwend
)
475 redef class ATopClassdef
476 init init_atopclassdef
(
477 n_propdefs
: Collection[Object] # Should be Collection[APropdef]
480 _n_propdefs
.unsafe_add_all
(n_propdefs
)
483 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
485 if _n_propdefs
.replace_child
(old_child
, new_child
) then return
490 redef fun visit_all
(v
: Visitor)
492 _n_propdefs
.visit_all
(v
)
495 redef class AMainClassdef
496 init init_amainclassdef
(
497 n_propdefs
: Collection[Object] # Should be Collection[APropdef]
500 _n_propdefs
.unsafe_add_all
(n_propdefs
)
503 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
505 if _n_propdefs
.replace_child
(old_child
, new_child
) then return
510 redef fun visit_all
(v
: Visitor)
512 _n_propdefs
.visit_all
(v
)
515 redef class AConcreteClasskind
516 init init_aconcreteclasskind
(
517 n_kwclass
: nullable TKwclass
520 _n_kwclass
= n_kwclass
.as(not null)
521 n_kwclass
.parent
= self
524 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
526 if _n_kwclass
== old_child
then
527 n_kwclass
= new_child
.as(TKwclass)
532 redef fun n_kwclass
=(node
)
539 redef fun visit_all
(v
: Visitor)
541 v
.enter_visit
(_n_kwclass
)
544 redef class AAbstractClasskind
545 init init_aabstractclasskind
(
546 n_kwabstract
: nullable TKwabstract,
547 n_kwclass
: nullable TKwclass
550 _n_kwabstract
= n_kwabstract
.as(not null)
551 n_kwabstract
.parent
= self
552 _n_kwclass
= n_kwclass
.as(not null)
553 n_kwclass
.parent
= self
556 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
558 if _n_kwabstract
== old_child
then
559 n_kwabstract
= new_child
.as(TKwabstract)
562 if _n_kwclass
== old_child
then
563 n_kwclass
= new_child
.as(TKwclass)
568 redef fun n_kwabstract
=(node
)
573 redef fun n_kwclass
=(node
)
580 redef fun visit_all
(v
: Visitor)
582 v
.enter_visit
(_n_kwabstract
)
583 v
.enter_visit
(_n_kwclass
)
586 redef class AInterfaceClasskind
587 init init_ainterfaceclasskind
(
588 n_kwinterface
: nullable TKwinterface
591 _n_kwinterface
= n_kwinterface
.as(not null)
592 n_kwinterface
.parent
= self
595 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
597 if _n_kwinterface
== old_child
then
598 n_kwinterface
= new_child
.as(TKwinterface)
603 redef fun n_kwinterface
=(node
)
605 _n_kwinterface
= node
610 redef fun visit_all
(v
: Visitor)
612 v
.enter_visit
(_n_kwinterface
)
615 redef class AEnumClasskind
616 init init_aenumclasskind
(
617 n_kwenum
: nullable TKwenum
620 _n_kwenum
= n_kwenum
.as(not null)
621 n_kwenum
.parent
= self
624 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
626 if _n_kwenum
== old_child
then
627 n_kwenum
= new_child
.as(TKwenum)
632 redef fun n_kwenum
=(node
)
639 redef fun visit_all
(v
: Visitor)
641 v
.enter_visit
(_n_kwenum
)
644 redef class AExternClasskind
645 init init_aexternclasskind
(
646 n_kwextern
: nullable TKwextern,
647 n_kwclass
: nullable TKwclass
650 _n_kwextern
= n_kwextern
.as(not null)
651 n_kwextern
.parent
= self
652 _n_kwclass
= n_kwclass
653 if n_kwclass
!= null then n_kwclass
.parent
= self
656 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
658 if _n_kwextern
== old_child
then
659 n_kwextern
= new_child
.as(TKwextern)
662 if _n_kwclass
== old_child
then
663 n_kwclass
= new_child
.as(nullable TKwclass)
668 redef fun n_kwextern
=(node
)
673 redef fun n_kwclass
=(node
)
676 if node
!= null then node
.parent
= self
680 redef fun visit_all
(v
: Visitor)
682 v
.enter_visit
(_n_kwextern
)
683 v
.enter_visit
(_n_kwclass
)
686 redef class AFormaldef
687 init init_aformaldef
(
688 n_id
: nullable TClassid,
689 n_type
: nullable AType,
690 n_annotations
: nullable AAnnotations
693 _n_id
= n_id
.as(not null)
696 if n_type
!= null then n_type
.parent
= self
697 _n_annotations
= n_annotations
698 if n_annotations
!= null then n_annotations
.parent
= self
701 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
703 if _n_id
== old_child
then
704 n_id
= new_child
.as(TClassid)
707 if _n_type
== old_child
then
708 n_type
= new_child
.as(nullable AType)
711 if _n_annotations
== old_child
then
712 n_annotations
= new_child
.as(nullable AAnnotations)
717 redef fun n_id
=(node
)
722 redef fun n_type
=(node
)
725 if node
!= null then node
.parent
= self
727 redef fun n_annotations
=(node
)
729 _n_annotations
= node
730 if node
!= null then node
.parent
= self
734 redef fun visit_all
(v
: Visitor)
737 v
.enter_visit
(_n_type
)
738 v
.enter_visit
(_n_annotations
)
741 redef class ASuperclass
742 init init_asuperclass
(
743 n_kwsuper
: nullable TKwsuper,
744 n_type
: nullable AType,
745 n_annotations
: nullable AAnnotations
748 _n_kwsuper
= n_kwsuper
.as(not null)
749 n_kwsuper
.parent
= self
750 _n_type
= n_type
.as(not null)
752 _n_annotations
= n_annotations
753 if n_annotations
!= null then n_annotations
.parent
= self
756 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
758 if _n_kwsuper
== old_child
then
759 n_kwsuper
= new_child
.as(TKwsuper)
762 if _n_type
== old_child
then
763 n_type
= new_child
.as(AType)
766 if _n_annotations
== old_child
then
767 n_annotations
= new_child
.as(nullable AAnnotations)
772 redef fun n_kwsuper
=(node
)
777 redef fun n_type
=(node
)
782 redef fun n_annotations
=(node
)
784 _n_annotations
= node
785 if node
!= null then node
.parent
= self
789 redef fun visit_all
(v
: Visitor)
791 v
.enter_visit
(_n_kwsuper
)
792 v
.enter_visit
(_n_type
)
793 v
.enter_visit
(_n_annotations
)
796 redef class AAttrPropdef
797 init init_aattrpropdef
(
798 n_doc
: nullable ADoc,
799 n_readable
: nullable AAble,
800 n_writable
: nullable AAble,
801 n_kwredef
: nullable TKwredef,
802 n_visibility
: nullable AVisibility,
803 n_kwvar
: nullable TKwvar,
804 n_id
: nullable TAttrid,
806 n_type
: nullable AType,
807 n_annotations
: nullable AAnnotations,
808 n_expr
: nullable AExpr
812 if n_doc
!= null then n_doc
.parent
= self
813 _n_readable
= n_readable
814 if n_readable
!= null then n_readable
.parent
= self
815 _n_writable
= n_writable
816 if n_writable
!= null then n_writable
.parent
= self
817 _n_kwredef
= n_kwredef
818 if n_kwredef
!= null then n_kwredef
.parent
= self
819 _n_visibility
= n_visibility
.as(not null)
820 n_visibility
.parent
= self
821 _n_kwvar
= n_kwvar
.as(not null)
822 n_kwvar
.parent
= self
824 if n_id
!= null then n_id
.parent
= self
826 if n_id2
!= null then n_id2
.parent
= self
828 if n_type
!= null then n_type
.parent
= self
829 _n_annotations
= n_annotations
830 if n_annotations
!= null then n_annotations
.parent
= self
832 if n_expr
!= null then n_expr
.parent
= self
835 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
837 if _n_doc
== old_child
then
838 n_doc
= new_child
.as(nullable ADoc)
841 if _n_readable
== old_child
then
842 n_readable
= new_child
.as(nullable AAble)
845 if _n_writable
== old_child
then
846 n_writable
= new_child
.as(nullable AAble)
849 if _n_kwredef
== old_child
then
850 n_kwredef
= new_child
.as(nullable TKwredef)
853 if _n_visibility
== old_child
then
854 n_visibility
= new_child
.as(AVisibility)
857 if _n_kwvar
== old_child
then
858 n_kwvar
= new_child
.as(TKwvar)
861 if _n_id
== old_child
then
862 n_id
= new_child
.as(nullable TAttrid)
865 if _n_id2
== old_child
then
866 n_id2
= new_child
.as(nullable TId)
869 if _n_type
== old_child
then
870 n_type
= new_child
.as(nullable AType)
873 if _n_annotations
== old_child
then
874 n_annotations
= new_child
.as(nullable AAnnotations)
877 if _n_expr
== old_child
then
878 n_expr
= new_child
.as(nullable AExpr)
883 redef fun n_doc
=(node
)
886 if node
!= null then node
.parent
= self
888 redef fun n_readable
=(node
)
891 if node
!= null then node
.parent
= self
893 redef fun n_writable
=(node
)
896 if node
!= null then node
.parent
= self
898 redef fun n_kwredef
=(node
)
901 if node
!= null then node
.parent
= self
903 redef fun n_visibility
=(node
)
908 redef fun n_kwvar
=(node
)
913 redef fun n_id
=(node
)
916 if node
!= null then node
.parent
= self
918 redef fun n_id2
=(node
)
921 if node
!= null then node
.parent
= self
923 redef fun n_type
=(node
)
926 if node
!= null then node
.parent
= self
928 redef fun n_annotations
=(node
)
930 _n_annotations
= node
931 if node
!= null then node
.parent
= self
933 redef fun n_expr
=(node
)
936 if node
!= null then node
.parent
= self
940 redef fun visit_all
(v
: Visitor)
942 v
.enter_visit
(_n_doc
)
943 v
.enter_visit
(_n_readable
)
944 v
.enter_visit
(_n_writable
)
945 v
.enter_visit
(_n_kwredef
)
946 v
.enter_visit
(_n_visibility
)
947 v
.enter_visit
(_n_kwvar
)
949 v
.enter_visit
(_n_id2
)
950 v
.enter_visit
(_n_type
)
951 v
.enter_visit
(_n_annotations
)
952 v
.enter_visit
(_n_expr
)
955 redef class AMethPropdef
956 init init_amethpropdef
(
957 n_doc
: nullable ADoc,
958 n_kwredef
: nullable TKwredef,
959 n_visibility
: nullable AVisibility,
960 n_methid
: nullable AMethid,
961 n_signature
: nullable ASignature
965 if n_doc
!= null then n_doc
.parent
= self
966 _n_kwredef
= n_kwredef
967 if n_kwredef
!= null then n_kwredef
.parent
= self
968 _n_visibility
= n_visibility
.as(not null)
969 n_visibility
.parent
= self
970 _n_methid
= n_methid
.as(not null)
971 n_methid
.parent
= self
972 _n_signature
= n_signature
.as(not null)
973 n_signature
.parent
= self
976 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
978 if _n_doc
== old_child
then
979 n_doc
= new_child
.as(nullable ADoc)
982 if _n_kwredef
== old_child
then
983 n_kwredef
= new_child
.as(nullable TKwredef)
986 if _n_visibility
== old_child
then
987 n_visibility
= new_child
.as(AVisibility)
990 if _n_methid
== old_child
then
991 n_methid
= new_child
.as(AMethid)
994 if _n_signature
== old_child
then
995 n_signature
= new_child
.as(ASignature)
1000 redef fun n_doc
=(node
)
1003 if node
!= null then node
.parent
= self
1005 redef fun n_kwredef
=(node
)
1008 if node
!= null then node
.parent
= self
1010 redef fun n_visibility
=(node
)
1012 _n_visibility
= node
1015 redef fun n_methid
=(node
)
1020 redef fun n_signature
=(node
)
1027 redef fun visit_all
(v
: Visitor)
1029 v
.enter_visit
(_n_doc
)
1030 v
.enter_visit
(_n_kwredef
)
1031 v
.enter_visit
(_n_visibility
)
1032 v
.enter_visit
(_n_methid
)
1033 v
.enter_visit
(_n_signature
)
1036 redef class ADeferredMethPropdef
1037 init init_adeferredmethpropdef
(
1038 n_doc
: nullable ADoc,
1039 n_kwredef
: nullable TKwredef,
1040 n_visibility
: nullable AVisibility,
1041 n_kwmeth
: nullable TKwmeth,
1042 n_methid
: nullable AMethid,
1043 n_signature
: nullable ASignature,
1044 n_annotations
: nullable AAnnotations
1048 if n_doc
!= null then n_doc
.parent
= self
1049 _n_kwredef
= n_kwredef
1050 if n_kwredef
!= null then n_kwredef
.parent
= self
1051 _n_visibility
= n_visibility
.as(not null)
1052 n_visibility
.parent
= self
1053 _n_kwmeth
= n_kwmeth
.as(not null)
1054 n_kwmeth
.parent
= self
1055 _n_methid
= n_methid
.as(not null)
1056 n_methid
.parent
= self
1057 _n_signature
= n_signature
.as(not null)
1058 n_signature
.parent
= self
1059 _n_annotations
= n_annotations
1060 if n_annotations
!= null then n_annotations
.parent
= self
1063 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1065 if _n_doc
== old_child
then
1066 n_doc
= new_child
.as(nullable ADoc)
1069 if _n_kwredef
== old_child
then
1070 n_kwredef
= new_child
.as(nullable TKwredef)
1073 if _n_visibility
== old_child
then
1074 n_visibility
= new_child
.as(AVisibility)
1077 if _n_kwmeth
== old_child
then
1078 n_kwmeth
= new_child
.as(TKwmeth)
1081 if _n_methid
== old_child
then
1082 n_methid
= new_child
.as(AMethid)
1085 if _n_signature
== old_child
then
1086 n_signature
= new_child
.as(ASignature)
1089 if _n_annotations
== old_child
then
1090 n_annotations
= new_child
.as(nullable AAnnotations)
1095 redef fun n_doc
=(node
)
1098 if node
!= null then node
.parent
= self
1100 redef fun n_kwredef
=(node
)
1103 if node
!= null then node
.parent
= self
1105 redef fun n_visibility
=(node
)
1107 _n_visibility
= node
1110 redef fun n_kwmeth
=(node
)
1115 redef fun n_methid
=(node
)
1120 redef fun n_signature
=(node
)
1125 redef fun n_annotations
=(node
)
1127 _n_annotations
= node
1128 if node
!= null then node
.parent
= self
1132 redef fun visit_all
(v
: Visitor)
1134 v
.enter_visit
(_n_doc
)
1135 v
.enter_visit
(_n_kwredef
)
1136 v
.enter_visit
(_n_visibility
)
1137 v
.enter_visit
(_n_kwmeth
)
1138 v
.enter_visit
(_n_methid
)
1139 v
.enter_visit
(_n_signature
)
1140 v
.enter_visit
(_n_annotations
)
1143 redef class AInternMethPropdef
1144 init init_ainternmethpropdef
(
1145 n_doc
: nullable ADoc,
1146 n_kwredef
: nullable TKwredef,
1147 n_visibility
: nullable AVisibility,
1148 n_kwmeth
: nullable TKwmeth,
1149 n_methid
: nullable AMethid,
1150 n_signature
: nullable ASignature
1154 if n_doc
!= null then n_doc
.parent
= self
1155 _n_kwredef
= n_kwredef
1156 if n_kwredef
!= null then n_kwredef
.parent
= self
1157 _n_visibility
= n_visibility
.as(not null)
1158 n_visibility
.parent
= self
1159 _n_kwmeth
= n_kwmeth
.as(not null)
1160 n_kwmeth
.parent
= self
1161 _n_methid
= n_methid
.as(not null)
1162 n_methid
.parent
= self
1163 _n_signature
= n_signature
.as(not null)
1164 n_signature
.parent
= self
1167 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1169 if _n_doc
== old_child
then
1170 n_doc
= new_child
.as(nullable ADoc)
1173 if _n_kwredef
== old_child
then
1174 n_kwredef
= new_child
.as(nullable TKwredef)
1177 if _n_visibility
== old_child
then
1178 n_visibility
= new_child
.as(AVisibility)
1181 if _n_kwmeth
== old_child
then
1182 n_kwmeth
= new_child
.as(TKwmeth)
1185 if _n_methid
== old_child
then
1186 n_methid
= new_child
.as(AMethid)
1189 if _n_signature
== old_child
then
1190 n_signature
= new_child
.as(ASignature)
1195 redef fun n_doc
=(node
)
1198 if node
!= null then node
.parent
= self
1200 redef fun n_kwredef
=(node
)
1203 if node
!= null then node
.parent
= self
1205 redef fun n_visibility
=(node
)
1207 _n_visibility
= node
1210 redef fun n_kwmeth
=(node
)
1215 redef fun n_methid
=(node
)
1220 redef fun n_signature
=(node
)
1227 redef fun visit_all
(v
: Visitor)
1229 v
.enter_visit
(_n_doc
)
1230 v
.enter_visit
(_n_kwredef
)
1231 v
.enter_visit
(_n_visibility
)
1232 v
.enter_visit
(_n_kwmeth
)
1233 v
.enter_visit
(_n_methid
)
1234 v
.enter_visit
(_n_signature
)
1237 redef class AExternMethPropdef
1238 init init_aexternmethpropdef
(
1239 n_doc
: nullable ADoc,
1240 n_kwredef
: nullable TKwredef,
1241 n_visibility
: nullable AVisibility,
1242 n_kwmeth
: nullable TKwmeth,
1243 n_methid
: nullable AMethid,
1244 n_signature
: nullable ASignature,
1245 n_extern
: nullable TString,
1246 n_extern_calls
: nullable AExternCalls,
1247 n_extern_code_block
: nullable AExternCodeBlock
1251 if n_doc
!= null then n_doc
.parent
= self
1252 _n_kwredef
= n_kwredef
1253 if n_kwredef
!= null then n_kwredef
.parent
= self
1254 _n_visibility
= n_visibility
.as(not null)
1255 n_visibility
.parent
= self
1256 _n_kwmeth
= n_kwmeth
.as(not null)
1257 n_kwmeth
.parent
= self
1258 _n_methid
= n_methid
.as(not null)
1259 n_methid
.parent
= self
1260 _n_signature
= n_signature
.as(not null)
1261 n_signature
.parent
= self
1262 _n_extern
= n_extern
1263 if n_extern
!= null then n_extern
.parent
= self
1264 _n_extern_calls
= n_extern_calls
1265 if n_extern_calls
!= null then n_extern_calls
.parent
= self
1266 _n_extern_code_block
= n_extern_code_block
1267 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
1270 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1272 if _n_doc
== old_child
then
1273 n_doc
= new_child
.as(nullable ADoc)
1276 if _n_kwredef
== old_child
then
1277 n_kwredef
= new_child
.as(nullable TKwredef)
1280 if _n_visibility
== old_child
then
1281 n_visibility
= new_child
.as(AVisibility)
1284 if _n_kwmeth
== old_child
then
1285 n_kwmeth
= new_child
.as(TKwmeth)
1288 if _n_methid
== old_child
then
1289 n_methid
= new_child
.as(AMethid)
1292 if _n_signature
== old_child
then
1293 n_signature
= new_child
.as(ASignature)
1296 if _n_extern
== old_child
then
1297 n_extern
= new_child
.as(nullable TString)
1300 if _n_extern_calls
== old_child
then
1301 n_extern_calls
= new_child
.as(nullable AExternCalls)
1304 if _n_extern_code_block
== old_child
then
1305 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
1310 redef fun n_doc
=(node
)
1313 if node
!= null then node
.parent
= self
1315 redef fun n_kwredef
=(node
)
1318 if node
!= null then node
.parent
= self
1320 redef fun n_visibility
=(node
)
1322 _n_visibility
= node
1325 redef fun n_kwmeth
=(node
)
1330 redef fun n_methid
=(node
)
1335 redef fun n_signature
=(node
)
1340 redef fun n_extern
=(node
)
1343 if node
!= null then node
.parent
= self
1345 redef fun n_extern_calls
=(node
)
1347 _n_extern_calls
= node
1348 if node
!= null then node
.parent
= self
1350 redef fun n_extern_code_block
=(node
)
1352 _n_extern_code_block
= node
1353 if node
!= null then node
.parent
= self
1357 redef fun visit_all
(v
: Visitor)
1359 v
.enter_visit
(_n_doc
)
1360 v
.enter_visit
(_n_kwredef
)
1361 v
.enter_visit
(_n_visibility
)
1362 v
.enter_visit
(_n_kwmeth
)
1363 v
.enter_visit
(_n_methid
)
1364 v
.enter_visit
(_n_signature
)
1365 v
.enter_visit
(_n_extern
)
1366 v
.enter_visit
(_n_extern_calls
)
1367 v
.enter_visit
(_n_extern_code_block
)
1370 redef class AConcreteMethPropdef
1371 init init_aconcretemethpropdef
(
1372 n_doc
: nullable ADoc,
1373 n_kwredef
: nullable TKwredef,
1374 n_visibility
: nullable AVisibility,
1375 n_kwmeth
: nullable TKwmeth,
1376 n_methid
: nullable AMethid,
1377 n_signature
: nullable ASignature,
1378 n_annotations
: nullable AAnnotations,
1379 n_block
: nullable AExpr
1383 if n_doc
!= null then n_doc
.parent
= self
1384 _n_kwredef
= n_kwredef
1385 if n_kwredef
!= null then n_kwredef
.parent
= self
1386 _n_visibility
= n_visibility
.as(not null)
1387 n_visibility
.parent
= self
1388 _n_kwmeth
= n_kwmeth
.as(not null)
1389 n_kwmeth
.parent
= self
1390 _n_methid
= n_methid
.as(not null)
1391 n_methid
.parent
= self
1392 _n_signature
= n_signature
.as(not null)
1393 n_signature
.parent
= self
1394 _n_annotations
= n_annotations
1395 if n_annotations
!= null then n_annotations
.parent
= self
1397 if n_block
!= null then n_block
.parent
= self
1400 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1402 if _n_doc
== old_child
then
1403 n_doc
= new_child
.as(nullable ADoc)
1406 if _n_kwredef
== old_child
then
1407 n_kwredef
= new_child
.as(nullable TKwredef)
1410 if _n_visibility
== old_child
then
1411 n_visibility
= new_child
.as(AVisibility)
1414 if _n_kwmeth
== old_child
then
1415 n_kwmeth
= new_child
.as(TKwmeth)
1418 if _n_methid
== old_child
then
1419 n_methid
= new_child
.as(AMethid)
1422 if _n_signature
== old_child
then
1423 n_signature
= new_child
.as(ASignature)
1426 if _n_annotations
== old_child
then
1427 n_annotations
= new_child
.as(nullable AAnnotations)
1430 if _n_block
== old_child
then
1431 n_block
= new_child
.as(nullable AExpr)
1436 redef fun n_doc
=(node
)
1439 if node
!= null then node
.parent
= self
1441 redef fun n_kwredef
=(node
)
1444 if node
!= null then node
.parent
= self
1446 redef fun n_visibility
=(node
)
1448 _n_visibility
= node
1451 redef fun n_kwmeth
=(node
)
1456 redef fun n_methid
=(node
)
1461 redef fun n_signature
=(node
)
1466 redef fun n_annotations
=(node
)
1468 _n_annotations
= node
1469 if node
!= null then node
.parent
= self
1471 redef fun n_block
=(node
)
1474 if node
!= null then node
.parent
= self
1478 redef fun visit_all
(v
: Visitor)
1480 v
.enter_visit
(_n_doc
)
1481 v
.enter_visit
(_n_kwredef
)
1482 v
.enter_visit
(_n_visibility
)
1483 v
.enter_visit
(_n_kwmeth
)
1484 v
.enter_visit
(_n_methid
)
1485 v
.enter_visit
(_n_signature
)
1486 v
.enter_visit
(_n_annotations
)
1487 v
.enter_visit
(_n_block
)
1490 redef class AConcreteInitPropdef
1491 init init_aconcreteinitpropdef
(
1492 n_doc
: nullable ADoc,
1493 n_kwredef
: nullable TKwredef,
1494 n_visibility
: nullable AVisibility,
1495 n_kwinit
: nullable TKwinit,
1496 n_methid
: nullable AMethid,
1497 n_signature
: nullable ASignature,
1498 n_annotations
: nullable AAnnotations,
1499 n_block
: nullable AExpr
1503 if n_doc
!= null then n_doc
.parent
= self
1504 _n_kwredef
= n_kwredef
1505 if n_kwredef
!= null then n_kwredef
.parent
= self
1506 _n_visibility
= n_visibility
.as(not null)
1507 n_visibility
.parent
= self
1508 _n_kwinit
= n_kwinit
.as(not null)
1509 n_kwinit
.parent
= self
1510 _n_methid
= n_methid
1511 if n_methid
!= null then n_methid
.parent
= self
1512 _n_signature
= n_signature
.as(not null)
1513 n_signature
.parent
= self
1514 _n_annotations
= n_annotations
1515 if n_annotations
!= null then n_annotations
.parent
= self
1517 if n_block
!= null then n_block
.parent
= self
1520 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1522 if _n_doc
== old_child
then
1523 n_doc
= new_child
.as(nullable ADoc)
1526 if _n_kwredef
== old_child
then
1527 n_kwredef
= new_child
.as(nullable TKwredef)
1530 if _n_visibility
== old_child
then
1531 n_visibility
= new_child
.as(AVisibility)
1534 if _n_kwinit
== old_child
then
1535 n_kwinit
= new_child
.as(TKwinit)
1538 if _n_methid
== old_child
then
1539 n_methid
= new_child
.as(nullable AMethid)
1542 if _n_signature
== old_child
then
1543 n_signature
= new_child
.as(ASignature)
1546 if _n_annotations
== old_child
then
1547 n_annotations
= new_child
.as(nullable AAnnotations)
1550 if _n_block
== old_child
then
1551 n_block
= new_child
.as(nullable AExpr)
1556 redef fun n_doc
=(node
)
1559 if node
!= null then node
.parent
= self
1561 redef fun n_kwredef
=(node
)
1564 if node
!= null then node
.parent
= self
1566 redef fun n_visibility
=(node
)
1568 _n_visibility
= node
1571 redef fun n_kwinit
=(node
)
1576 redef fun n_methid
=(node
)
1579 if node
!= null then node
.parent
= self
1581 redef fun n_signature
=(node
)
1586 redef fun n_annotations
=(node
)
1588 _n_annotations
= node
1589 if node
!= null then node
.parent
= self
1591 redef fun n_block
=(node
)
1594 if node
!= null then node
.parent
= self
1598 redef fun visit_all
(v
: Visitor)
1600 v
.enter_visit
(_n_doc
)
1601 v
.enter_visit
(_n_kwredef
)
1602 v
.enter_visit
(_n_visibility
)
1603 v
.enter_visit
(_n_kwinit
)
1604 v
.enter_visit
(_n_methid
)
1605 v
.enter_visit
(_n_signature
)
1606 v
.enter_visit
(_n_annotations
)
1607 v
.enter_visit
(_n_block
)
1610 redef class AExternInitPropdef
1611 init init_aexterninitpropdef
(
1612 n_doc
: nullable ADoc,
1613 n_kwredef
: nullable TKwredef,
1614 n_visibility
: nullable AVisibility,
1615 n_kwnew
: nullable TKwnew,
1616 n_methid
: nullable AMethid,
1617 n_signature
: nullable ASignature,
1618 n_extern
: nullable TString,
1619 n_extern_calls
: nullable AExternCalls,
1620 n_extern_code_block
: nullable AExternCodeBlock
1624 if n_doc
!= null then n_doc
.parent
= self
1625 _n_kwredef
= n_kwredef
1626 if n_kwredef
!= null then n_kwredef
.parent
= self
1627 _n_visibility
= n_visibility
.as(not null)
1628 n_visibility
.parent
= self
1629 _n_kwnew
= n_kwnew
.as(not null)
1630 n_kwnew
.parent
= self
1631 _n_methid
= n_methid
1632 if n_methid
!= null then n_methid
.parent
= self
1633 _n_signature
= n_signature
.as(not null)
1634 n_signature
.parent
= self
1635 _n_extern
= n_extern
1636 if n_extern
!= null then n_extern
.parent
= self
1637 _n_extern_calls
= n_extern_calls
1638 if n_extern_calls
!= null then n_extern_calls
.parent
= self
1639 _n_extern_code_block
= n_extern_code_block
1640 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
1643 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1645 if _n_doc
== old_child
then
1646 n_doc
= new_child
.as(nullable ADoc)
1649 if _n_kwredef
== old_child
then
1650 n_kwredef
= new_child
.as(nullable TKwredef)
1653 if _n_visibility
== old_child
then
1654 n_visibility
= new_child
.as(AVisibility)
1657 if _n_kwnew
== old_child
then
1658 n_kwnew
= new_child
.as(TKwnew)
1661 if _n_methid
== old_child
then
1662 n_methid
= new_child
.as(nullable AMethid)
1665 if _n_signature
== old_child
then
1666 n_signature
= new_child
.as(ASignature)
1669 if _n_extern
== old_child
then
1670 n_extern
= new_child
.as(nullable TString)
1673 if _n_extern_calls
== old_child
then
1674 n_extern_calls
= new_child
.as(nullable AExternCalls)
1677 if _n_extern_code_block
== old_child
then
1678 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
1683 redef fun n_doc
=(node
)
1686 if node
!= null then node
.parent
= self
1688 redef fun n_kwredef
=(node
)
1691 if node
!= null then node
.parent
= self
1693 redef fun n_visibility
=(node
)
1695 _n_visibility
= node
1698 redef fun n_kwnew
=(node
)
1703 redef fun n_methid
=(node
)
1706 if node
!= null then node
.parent
= self
1708 redef fun n_signature
=(node
)
1713 redef fun n_extern
=(node
)
1716 if node
!= null then node
.parent
= self
1718 redef fun n_extern_calls
=(node
)
1720 _n_extern_calls
= node
1721 if node
!= null then node
.parent
= self
1723 redef fun n_extern_code_block
=(node
)
1725 _n_extern_code_block
= node
1726 if node
!= null then node
.parent
= self
1730 redef fun visit_all
(v
: Visitor)
1732 v
.enter_visit
(_n_doc
)
1733 v
.enter_visit
(_n_kwredef
)
1734 v
.enter_visit
(_n_visibility
)
1735 v
.enter_visit
(_n_kwnew
)
1736 v
.enter_visit
(_n_methid
)
1737 v
.enter_visit
(_n_signature
)
1738 v
.enter_visit
(_n_extern
)
1739 v
.enter_visit
(_n_extern_calls
)
1740 v
.enter_visit
(_n_extern_code_block
)
1743 redef class AMainMethPropdef
1744 init init_amainmethpropdef
(
1745 n_kwredef
: nullable TKwredef,
1746 n_block
: nullable AExpr
1749 _n_kwredef
= n_kwredef
1750 if n_kwredef
!= null then n_kwredef
.parent
= self
1752 if n_block
!= null then n_block
.parent
= self
1755 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1757 if _n_kwredef
== old_child
then
1758 n_kwredef
= new_child
.as(nullable TKwredef)
1761 if _n_block
== old_child
then
1762 n_block
= new_child
.as(nullable AExpr)
1767 redef fun n_kwredef
=(node
)
1770 if node
!= null then node
.parent
= self
1772 redef fun n_block
=(node
)
1775 if node
!= null then node
.parent
= self
1779 redef fun visit_all
(v
: Visitor)
1781 v
.enter_visit
(_n_kwredef
)
1782 v
.enter_visit
(_n_block
)
1785 redef class ATypePropdef
1786 init init_atypepropdef
(
1787 n_doc
: nullable ADoc,
1788 n_kwredef
: nullable TKwredef,
1789 n_visibility
: nullable AVisibility,
1790 n_kwtype
: nullable TKwtype,
1791 n_id
: nullable TClassid,
1792 n_type
: nullable AType,
1793 n_annotations
: nullable AAnnotations
1797 if n_doc
!= null then n_doc
.parent
= self
1798 _n_kwredef
= n_kwredef
1799 if n_kwredef
!= null then n_kwredef
.parent
= self
1800 _n_visibility
= n_visibility
.as(not null)
1801 n_visibility
.parent
= self
1802 _n_kwtype
= n_kwtype
.as(not null)
1803 n_kwtype
.parent
= self
1804 _n_id
= n_id
.as(not null)
1806 _n_type
= n_type
.as(not null)
1807 n_type
.parent
= self
1808 _n_annotations
= n_annotations
1809 if n_annotations
!= null then n_annotations
.parent
= self
1812 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1814 if _n_doc
== old_child
then
1815 n_doc
= new_child
.as(nullable ADoc)
1818 if _n_kwredef
== old_child
then
1819 n_kwredef
= new_child
.as(nullable TKwredef)
1822 if _n_visibility
== old_child
then
1823 n_visibility
= new_child
.as(AVisibility)
1826 if _n_kwtype
== old_child
then
1827 n_kwtype
= new_child
.as(TKwtype)
1830 if _n_id
== old_child
then
1831 n_id
= new_child
.as(TClassid)
1834 if _n_type
== old_child
then
1835 n_type
= new_child
.as(AType)
1838 if _n_annotations
== old_child
then
1839 n_annotations
= new_child
.as(nullable AAnnotations)
1844 redef fun n_doc
=(node
)
1847 if node
!= null then node
.parent
= self
1849 redef fun n_kwredef
=(node
)
1852 if node
!= null then node
.parent
= self
1854 redef fun n_visibility
=(node
)
1856 _n_visibility
= node
1859 redef fun n_kwtype
=(node
)
1864 redef fun n_id
=(node
)
1869 redef fun n_type
=(node
)
1874 redef fun n_annotations
=(node
)
1876 _n_annotations
= node
1877 if node
!= null then node
.parent
= self
1881 redef fun visit_all
(v
: Visitor)
1883 v
.enter_visit
(_n_doc
)
1884 v
.enter_visit
(_n_kwredef
)
1885 v
.enter_visit
(_n_visibility
)
1886 v
.enter_visit
(_n_kwtype
)
1887 v
.enter_visit
(_n_id
)
1888 v
.enter_visit
(_n_type
)
1889 v
.enter_visit
(_n_annotations
)
1892 redef class AReadAble
1893 init init_areadable
(
1894 n_kwredef
: nullable TKwredef,
1895 n_kwreadable
: nullable TKwreadable
1898 _n_kwredef
= n_kwredef
1899 if n_kwredef
!= null then n_kwredef
.parent
= self
1900 _n_kwreadable
= n_kwreadable
.as(not null)
1901 n_kwreadable
.parent
= self
1904 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1906 if _n_kwredef
== old_child
then
1907 n_kwredef
= new_child
.as(nullable TKwredef)
1910 if _n_kwreadable
== old_child
then
1911 n_kwreadable
= new_child
.as(TKwreadable)
1916 redef fun n_kwredef
=(node
)
1919 if node
!= null then node
.parent
= self
1921 redef fun n_kwreadable
=(node
)
1923 _n_kwreadable
= node
1928 redef fun visit_all
(v
: Visitor)
1930 v
.enter_visit
(_n_kwredef
)
1931 v
.enter_visit
(_n_kwreadable
)
1934 redef class AWriteAble
1935 init init_awriteable
(
1936 n_kwredef
: nullable TKwredef,
1937 n_visibility
: nullable AVisibility,
1938 n_kwwritable
: nullable TKwwritable
1941 _n_kwredef
= n_kwredef
1942 if n_kwredef
!= null then n_kwredef
.parent
= self
1943 _n_visibility
= n_visibility
1944 if n_visibility
!= null then n_visibility
.parent
= self
1945 _n_kwwritable
= n_kwwritable
.as(not null)
1946 n_kwwritable
.parent
= self
1949 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1951 if _n_kwredef
== old_child
then
1952 n_kwredef
= new_child
.as(nullable TKwredef)
1955 if _n_visibility
== old_child
then
1956 n_visibility
= new_child
.as(nullable AVisibility)
1959 if _n_kwwritable
== old_child
then
1960 n_kwwritable
= new_child
.as(TKwwritable)
1965 redef fun n_kwredef
=(node
)
1968 if node
!= null then node
.parent
= self
1970 redef fun n_visibility
=(node
)
1972 _n_visibility
= node
1973 if node
!= null then node
.parent
= self
1975 redef fun n_kwwritable
=(node
)
1977 _n_kwwritable
= node
1982 redef fun visit_all
(v
: Visitor)
1984 v
.enter_visit
(_n_kwredef
)
1985 v
.enter_visit
(_n_visibility
)
1986 v
.enter_visit
(_n_kwwritable
)
1989 redef class AIdMethid
1990 init init_aidmethid
(
1994 _n_id
= n_id
.as(not null)
1998 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2000 if _n_id
== old_child
then
2001 n_id
= new_child
.as(TId)
2006 redef fun n_id
=(node
)
2013 redef fun visit_all
(v
: Visitor)
2015 v
.enter_visit
(_n_id
)
2018 redef class APlusMethid
2019 init init_aplusmethid
(
2020 n_plus
: nullable TPlus
2023 _n_plus
= n_plus
.as(not null)
2024 n_plus
.parent
= self
2027 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2029 if _n_plus
== old_child
then
2030 n_plus
= new_child
.as(TPlus)
2035 redef fun n_plus
=(node
)
2042 redef fun visit_all
(v
: Visitor)
2044 v
.enter_visit
(_n_plus
)
2047 redef class AMinusMethid
2048 init init_aminusmethid
(
2049 n_minus
: nullable TMinus
2052 _n_minus
= n_minus
.as(not null)
2053 n_minus
.parent
= self
2056 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2058 if _n_minus
== old_child
then
2059 n_minus
= new_child
.as(TMinus)
2064 redef fun n_minus
=(node
)
2071 redef fun visit_all
(v
: Visitor)
2073 v
.enter_visit
(_n_minus
)
2076 redef class AStarMethid
2077 init init_astarmethid
(
2078 n_star
: nullable TStar
2081 _n_star
= n_star
.as(not null)
2082 n_star
.parent
= self
2085 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2087 if _n_star
== old_child
then
2088 n_star
= new_child
.as(TStar)
2093 redef fun n_star
=(node
)
2100 redef fun visit_all
(v
: Visitor)
2102 v
.enter_visit
(_n_star
)
2105 redef class ASlashMethid
2106 init init_aslashmethid
(
2107 n_slash
: nullable TSlash
2110 _n_slash
= n_slash
.as(not null)
2111 n_slash
.parent
= self
2114 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2116 if _n_slash
== old_child
then
2117 n_slash
= new_child
.as(TSlash)
2122 redef fun n_slash
=(node
)
2129 redef fun visit_all
(v
: Visitor)
2131 v
.enter_visit
(_n_slash
)
2134 redef class APercentMethid
2135 init init_apercentmethid
(
2136 n_percent
: nullable TPercent
2139 _n_percent
= n_percent
.as(not null)
2140 n_percent
.parent
= self
2143 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2145 if _n_percent
== old_child
then
2146 n_percent
= new_child
.as(TPercent)
2151 redef fun n_percent
=(node
)
2158 redef fun visit_all
(v
: Visitor)
2160 v
.enter_visit
(_n_percent
)
2163 redef class AEqMethid
2164 init init_aeqmethid
(
2168 _n_eq
= n_eq
.as(not null)
2172 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2174 if _n_eq
== old_child
then
2175 n_eq
= new_child
.as(TEq)
2180 redef fun n_eq
=(node
)
2187 redef fun visit_all
(v
: Visitor)
2189 v
.enter_visit
(_n_eq
)
2192 redef class ANeMethid
2193 init init_anemethid
(
2197 _n_ne
= n_ne
.as(not null)
2201 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2203 if _n_ne
== old_child
then
2204 n_ne
= new_child
.as(TNe)
2209 redef fun n_ne
=(node
)
2216 redef fun visit_all
(v
: Visitor)
2218 v
.enter_visit
(_n_ne
)
2221 redef class ALeMethid
2222 init init_alemethid
(
2226 _n_le
= n_le
.as(not null)
2230 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2232 if _n_le
== old_child
then
2233 n_le
= new_child
.as(TLe)
2238 redef fun n_le
=(node
)
2245 redef fun visit_all
(v
: Visitor)
2247 v
.enter_visit
(_n_le
)
2250 redef class AGeMethid
2251 init init_agemethid
(
2255 _n_ge
= n_ge
.as(not null)
2259 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2261 if _n_ge
== old_child
then
2262 n_ge
= new_child
.as(TGe)
2267 redef fun n_ge
=(node
)
2274 redef fun visit_all
(v
: Visitor)
2276 v
.enter_visit
(_n_ge
)
2279 redef class ALtMethid
2280 init init_altmethid
(
2284 _n_lt
= n_lt
.as(not null)
2288 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2290 if _n_lt
== old_child
then
2291 n_lt
= new_child
.as(TLt)
2296 redef fun n_lt
=(node
)
2303 redef fun visit_all
(v
: Visitor)
2305 v
.enter_visit
(_n_lt
)
2308 redef class AGtMethid
2309 init init_agtmethid
(
2313 _n_gt
= n_gt
.as(not null)
2317 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2319 if _n_gt
== old_child
then
2320 n_gt
= new_child
.as(TGt)
2325 redef fun n_gt
=(node
)
2332 redef fun visit_all
(v
: Visitor)
2334 v
.enter_visit
(_n_gt
)
2337 redef class ALlMethid
2338 init init_allmethid
(
2342 _n_ll
= n_ll
.as(not null)
2346 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2348 if _n_ll
== old_child
then
2349 n_ll
= new_child
.as(TLl)
2354 redef fun n_ll
=(node
)
2361 redef fun visit_all
(v
: Visitor)
2363 v
.enter_visit
(_n_ll
)
2366 redef class AGgMethid
2367 init init_aggmethid
(
2371 _n_gg
= n_gg
.as(not null)
2375 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2377 if _n_gg
== old_child
then
2378 n_gg
= new_child
.as(TGg)
2383 redef fun n_gg
=(node
)
2390 redef fun visit_all
(v
: Visitor)
2392 v
.enter_visit
(_n_gg
)
2395 redef class ABraMethid
2396 init init_abramethid
(
2397 n_obra
: nullable TObra,
2398 n_cbra
: nullable TCbra
2401 _n_obra
= n_obra
.as(not null)
2402 n_obra
.parent
= self
2403 _n_cbra
= n_cbra
.as(not null)
2404 n_cbra
.parent
= self
2407 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2409 if _n_obra
== old_child
then
2410 n_obra
= new_child
.as(TObra)
2413 if _n_cbra
== old_child
then
2414 n_cbra
= new_child
.as(TCbra)
2419 redef fun n_obra
=(node
)
2424 redef fun n_cbra
=(node
)
2431 redef fun visit_all
(v
: Visitor)
2433 v
.enter_visit
(_n_obra
)
2434 v
.enter_visit
(_n_cbra
)
2437 redef class AStarshipMethid
2438 init init_astarshipmethid
(
2439 n_starship
: nullable TStarship
2442 _n_starship
= n_starship
.as(not null)
2443 n_starship
.parent
= self
2446 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2448 if _n_starship
== old_child
then
2449 n_starship
= new_child
.as(TStarship)
2454 redef fun n_starship
=(node
)
2461 redef fun visit_all
(v
: Visitor)
2463 v
.enter_visit
(_n_starship
)
2466 redef class AAssignMethid
2467 init init_aassignmethid
(
2469 n_assign
: nullable TAssign
2472 _n_id
= n_id
.as(not null)
2474 _n_assign
= n_assign
.as(not null)
2475 n_assign
.parent
= self
2478 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2480 if _n_id
== old_child
then
2481 n_id
= new_child
.as(TId)
2484 if _n_assign
== old_child
then
2485 n_assign
= new_child
.as(TAssign)
2490 redef fun n_id
=(node
)
2495 redef fun n_assign
=(node
)
2502 redef fun visit_all
(v
: Visitor)
2504 v
.enter_visit
(_n_id
)
2505 v
.enter_visit
(_n_assign
)
2508 redef class ABraassignMethid
2509 init init_abraassignmethid
(
2510 n_obra
: nullable TObra,
2511 n_cbra
: nullable TCbra,
2512 n_assign
: nullable TAssign
2515 _n_obra
= n_obra
.as(not null)
2516 n_obra
.parent
= self
2517 _n_cbra
= n_cbra
.as(not null)
2518 n_cbra
.parent
= self
2519 _n_assign
= n_assign
.as(not null)
2520 n_assign
.parent
= self
2523 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2525 if _n_obra
== old_child
then
2526 n_obra
= new_child
.as(TObra)
2529 if _n_cbra
== old_child
then
2530 n_cbra
= new_child
.as(TCbra)
2533 if _n_assign
== old_child
then
2534 n_assign
= new_child
.as(TAssign)
2539 redef fun n_obra
=(node
)
2544 redef fun n_cbra
=(node
)
2549 redef fun n_assign
=(node
)
2556 redef fun visit_all
(v
: Visitor)
2558 v
.enter_visit
(_n_obra
)
2559 v
.enter_visit
(_n_cbra
)
2560 v
.enter_visit
(_n_assign
)
2563 redef class ASignature
2564 init init_asignature
(
2565 n_opar
: nullable TOpar,
2566 n_params
: Collection[Object], # Should be Collection[AParam]
2567 n_cpar
: nullable TCpar,
2568 n_type
: nullable AType
2572 if n_opar
!= null then n_opar
.parent
= self
2573 _n_params
.unsafe_add_all
(n_params
)
2575 if n_cpar
!= null then n_cpar
.parent
= self
2577 if n_type
!= null then n_type
.parent
= self
2580 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2582 if _n_opar
== old_child
then
2583 n_opar
= new_child
.as(nullable TOpar)
2586 if _n_params
.replace_child
(old_child
, new_child
) then return
2587 if _n_cpar
== old_child
then
2588 n_cpar
= new_child
.as(nullable TCpar)
2591 if _n_type
== old_child
then
2592 n_type
= new_child
.as(nullable AType)
2597 redef fun n_opar
=(node
)
2600 if node
!= null then node
.parent
= self
2602 redef fun n_cpar
=(node
)
2605 if node
!= null then node
.parent
= self
2607 redef fun n_type
=(node
)
2610 if node
!= null then node
.parent
= self
2614 redef fun visit_all
(v
: Visitor)
2616 v
.enter_visit
(_n_opar
)
2617 _n_params
.visit_all
(v
)
2618 v
.enter_visit
(_n_cpar
)
2619 v
.enter_visit
(_n_type
)
2625 n_type
: nullable AType,
2626 n_dotdotdot
: nullable TDotdotdot,
2627 n_annotations
: nullable AAnnotations
2630 _n_id
= n_id
.as(not null)
2633 if n_type
!= null then n_type
.parent
= self
2634 _n_dotdotdot
= n_dotdotdot
2635 if n_dotdotdot
!= null then n_dotdotdot
.parent
= self
2636 _n_annotations
= n_annotations
2637 if n_annotations
!= null then n_annotations
.parent
= self
2640 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2642 if _n_id
== old_child
then
2643 n_id
= new_child
.as(TId)
2646 if _n_type
== old_child
then
2647 n_type
= new_child
.as(nullable AType)
2650 if _n_dotdotdot
== old_child
then
2651 n_dotdotdot
= new_child
.as(nullable TDotdotdot)
2654 if _n_annotations
== old_child
then
2655 n_annotations
= new_child
.as(nullable AAnnotations)
2660 redef fun n_id
=(node
)
2665 redef fun n_type
=(node
)
2668 if node
!= null then node
.parent
= self
2670 redef fun n_dotdotdot
=(node
)
2673 if node
!= null then node
.parent
= self
2675 redef fun n_annotations
=(node
)
2677 _n_annotations
= node
2678 if node
!= null then node
.parent
= self
2682 redef fun visit_all
(v
: Visitor)
2684 v
.enter_visit
(_n_id
)
2685 v
.enter_visit
(_n_type
)
2686 v
.enter_visit
(_n_dotdotdot
)
2687 v
.enter_visit
(_n_annotations
)
2692 n_kwnullable
: nullable TKwnullable,
2693 n_id
: nullable TClassid,
2694 n_types
: Collection[Object], # Should be Collection[AType]
2695 n_annotations
: nullable AAnnotations
2698 _n_kwnullable
= n_kwnullable
2699 if n_kwnullable
!= null then n_kwnullable
.parent
= self
2700 _n_id
= n_id
.as(not null)
2702 _n_types
.unsafe_add_all
(n_types
)
2703 _n_annotations
= n_annotations
2704 if n_annotations
!= null then n_annotations
.parent
= self
2707 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2709 if _n_kwnullable
== old_child
then
2710 n_kwnullable
= new_child
.as(nullable TKwnullable)
2713 if _n_id
== old_child
then
2714 n_id
= new_child
.as(TClassid)
2717 if _n_types
.replace_child
(old_child
, new_child
) then return
2718 if _n_annotations
== old_child
then
2719 n_annotations
= new_child
.as(nullable AAnnotations)
2724 redef fun n_kwnullable
=(node
)
2726 _n_kwnullable
= node
2727 if node
!= null then node
.parent
= self
2729 redef fun n_id
=(node
)
2734 redef fun n_annotations
=(node
)
2736 _n_annotations
= node
2737 if node
!= null then node
.parent
= self
2741 redef fun visit_all
(v
: Visitor)
2743 v
.enter_visit
(_n_kwnullable
)
2744 v
.enter_visit
(_n_id
)
2745 _n_types
.visit_all
(v
)
2746 v
.enter_visit
(_n_annotations
)
2751 n_kwlabel
: nullable TKwlabel,
2755 _n_kwlabel
= n_kwlabel
.as(not null)
2756 n_kwlabel
.parent
= self
2757 _n_id
= n_id
.as(not null)
2761 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2763 if _n_kwlabel
== old_child
then
2764 n_kwlabel
= new_child
.as(TKwlabel)
2767 if _n_id
== old_child
then
2768 n_id
= new_child
.as(TId)
2773 redef fun n_kwlabel
=(node
)
2778 redef fun n_id
=(node
)
2785 redef fun visit_all
(v
: Visitor)
2787 v
.enter_visit
(_n_kwlabel
)
2788 v
.enter_visit
(_n_id
)
2791 redef class ABlockExpr
2792 init init_ablockexpr
(
2793 n_expr
: Collection[Object], # Should be Collection[AExpr]
2794 n_kwend
: nullable TKwend
2797 _n_expr
.unsafe_add_all
(n_expr
)
2799 if n_kwend
!= null then n_kwend
.parent
= self
2802 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2804 if _n_expr
.replace_child
(old_child
, new_child
) then return
2805 if _n_kwend
== old_child
then
2806 n_kwend
= new_child
.as(nullable TKwend)
2811 redef fun n_kwend
=(node
)
2814 if node
!= null then node
.parent
= self
2818 redef fun visit_all
(v
: Visitor)
2820 _n_expr
.visit_all
(v
)
2821 v
.enter_visit
(_n_kwend
)
2824 redef class AVardeclExpr
2825 init init_avardeclexpr
(
2826 n_kwvar
: nullable TKwvar,
2828 n_type
: nullable AType,
2829 n_assign
: nullable TAssign,
2830 n_expr
: nullable AExpr,
2831 n_annotations
: nullable AAnnotations
2834 _n_kwvar
= n_kwvar
.as(not null)
2835 n_kwvar
.parent
= self
2836 _n_id
= n_id
.as(not null)
2839 if n_type
!= null then n_type
.parent
= self
2840 _n_assign
= n_assign
2841 if n_assign
!= null then n_assign
.parent
= self
2843 if n_expr
!= null then n_expr
.parent
= self
2844 _n_annotations
= n_annotations
2845 if n_annotations
!= null then n_annotations
.parent
= self
2848 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2850 if _n_kwvar
== old_child
then
2851 n_kwvar
= new_child
.as(TKwvar)
2854 if _n_id
== old_child
then
2855 n_id
= new_child
.as(TId)
2858 if _n_type
== old_child
then
2859 n_type
= new_child
.as(nullable AType)
2862 if _n_assign
== old_child
then
2863 n_assign
= new_child
.as(nullable TAssign)
2866 if _n_expr
== old_child
then
2867 n_expr
= new_child
.as(nullable AExpr)
2870 if _n_annotations
== old_child
then
2871 n_annotations
= new_child
.as(nullable AAnnotations)
2876 redef fun n_kwvar
=(node
)
2881 redef fun n_id
=(node
)
2886 redef fun n_type
=(node
)
2889 if node
!= null then node
.parent
= self
2891 redef fun n_assign
=(node
)
2894 if node
!= null then node
.parent
= self
2896 redef fun n_expr
=(node
)
2899 if node
!= null then node
.parent
= self
2901 redef fun n_annotations
=(node
)
2903 _n_annotations
= node
2904 if node
!= null then node
.parent
= self
2908 redef fun visit_all
(v
: Visitor)
2910 v
.enter_visit
(_n_kwvar
)
2911 v
.enter_visit
(_n_id
)
2912 v
.enter_visit
(_n_type
)
2913 v
.enter_visit
(_n_assign
)
2914 v
.enter_visit
(_n_expr
)
2915 v
.enter_visit
(_n_annotations
)
2918 redef class AReturnExpr
2919 init init_areturnexpr
(
2920 n_kwreturn
: nullable TKwreturn,
2921 n_expr
: nullable AExpr
2924 _n_kwreturn
= n_kwreturn
2925 if n_kwreturn
!= null then n_kwreturn
.parent
= self
2927 if n_expr
!= null then n_expr
.parent
= self
2930 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2932 if _n_kwreturn
== old_child
then
2933 n_kwreturn
= new_child
.as(nullable TKwreturn)
2936 if _n_expr
== old_child
then
2937 n_expr
= new_child
.as(nullable AExpr)
2942 redef fun n_kwreturn
=(node
)
2945 if node
!= null then node
.parent
= self
2947 redef fun n_expr
=(node
)
2950 if node
!= null then node
.parent
= self
2954 redef fun visit_all
(v
: Visitor)
2956 v
.enter_visit
(_n_kwreturn
)
2957 v
.enter_visit
(_n_expr
)
2960 redef class ABreakExpr
2961 init init_abreakexpr
(
2962 n_kwbreak
: nullable TKwbreak,
2963 n_label
: nullable ALabel,
2964 n_expr
: nullable AExpr
2967 _n_kwbreak
= n_kwbreak
.as(not null)
2968 n_kwbreak
.parent
= self
2970 if n_label
!= null then n_label
.parent
= self
2972 if n_expr
!= null then n_expr
.parent
= self
2975 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2977 if _n_kwbreak
== old_child
then
2978 n_kwbreak
= new_child
.as(TKwbreak)
2981 if _n_label
== old_child
then
2982 n_label
= new_child
.as(nullable ALabel)
2985 if _n_expr
== old_child
then
2986 n_expr
= new_child
.as(nullable AExpr)
2991 redef fun n_kwbreak
=(node
)
2996 redef fun n_label
=(node
)
2999 if node
!= null then node
.parent
= self
3001 redef fun n_expr
=(node
)
3004 if node
!= null then node
.parent
= self
3008 redef fun visit_all
(v
: Visitor)
3010 v
.enter_visit
(_n_kwbreak
)
3011 v
.enter_visit
(_n_label
)
3012 v
.enter_visit
(_n_expr
)
3015 redef class AAbortExpr
3016 init init_aabortexpr
(
3017 n_kwabort
: nullable TKwabort
3020 _n_kwabort
= n_kwabort
.as(not null)
3021 n_kwabort
.parent
= self
3024 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3026 if _n_kwabort
== old_child
then
3027 n_kwabort
= new_child
.as(TKwabort)
3032 redef fun n_kwabort
=(node
)
3039 redef fun visit_all
(v
: Visitor)
3041 v
.enter_visit
(_n_kwabort
)
3044 redef class AContinueExpr
3045 init init_acontinueexpr
(
3046 n_kwcontinue
: nullable TKwcontinue,
3047 n_label
: nullable ALabel,
3048 n_expr
: nullable AExpr
3051 _n_kwcontinue
= n_kwcontinue
3052 if n_kwcontinue
!= null then n_kwcontinue
.parent
= self
3054 if n_label
!= null then n_label
.parent
= self
3056 if n_expr
!= null then n_expr
.parent
= self
3059 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3061 if _n_kwcontinue
== old_child
then
3062 n_kwcontinue
= new_child
.as(nullable TKwcontinue)
3065 if _n_label
== old_child
then
3066 n_label
= new_child
.as(nullable ALabel)
3069 if _n_expr
== old_child
then
3070 n_expr
= new_child
.as(nullable AExpr)
3075 redef fun n_kwcontinue
=(node
)
3077 _n_kwcontinue
= node
3078 if node
!= null then node
.parent
= self
3080 redef fun n_label
=(node
)
3083 if node
!= null then node
.parent
= self
3085 redef fun n_expr
=(node
)
3088 if node
!= null then node
.parent
= self
3092 redef fun visit_all
(v
: Visitor)
3094 v
.enter_visit
(_n_kwcontinue
)
3095 v
.enter_visit
(_n_label
)
3096 v
.enter_visit
(_n_expr
)
3101 n_kwdo
: nullable TKwdo,
3102 n_block
: nullable AExpr,
3103 n_label
: nullable ALabel
3106 _n_kwdo
= n_kwdo
.as(not null)
3107 n_kwdo
.parent
= self
3109 if n_block
!= null then n_block
.parent
= self
3111 if n_label
!= null then n_label
.parent
= self
3114 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3116 if _n_kwdo
== old_child
then
3117 n_kwdo
= new_child
.as(TKwdo)
3120 if _n_block
== old_child
then
3121 n_block
= new_child
.as(nullable AExpr)
3124 if _n_label
== old_child
then
3125 n_label
= new_child
.as(nullable ALabel)
3130 redef fun n_kwdo
=(node
)
3135 redef fun n_block
=(node
)
3138 if node
!= null then node
.parent
= self
3140 redef fun n_label
=(node
)
3143 if node
!= null then node
.parent
= self
3147 redef fun visit_all
(v
: Visitor)
3149 v
.enter_visit
(_n_kwdo
)
3150 v
.enter_visit
(_n_block
)
3151 v
.enter_visit
(_n_label
)
3156 n_kwif
: nullable TKwif,
3157 n_expr
: nullable AExpr,
3158 n_then
: nullable AExpr,
3159 n_else
: nullable AExpr
3162 _n_kwif
= n_kwif
.as(not null)
3163 n_kwif
.parent
= self
3164 _n_expr
= n_expr
.as(not null)
3165 n_expr
.parent
= self
3167 if n_then
!= null then n_then
.parent
= self
3169 if n_else
!= null then n_else
.parent
= self
3172 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3174 if _n_kwif
== old_child
then
3175 n_kwif
= new_child
.as(TKwif)
3178 if _n_expr
== old_child
then
3179 n_expr
= new_child
.as(AExpr)
3182 if _n_then
== old_child
then
3183 n_then
= new_child
.as(nullable AExpr)
3186 if _n_else
== old_child
then
3187 n_else
= new_child
.as(nullable AExpr)
3192 redef fun n_kwif
=(node
)
3197 redef fun n_expr
=(node
)
3202 redef fun n_then
=(node
)
3205 if node
!= null then node
.parent
= self
3207 redef fun n_else
=(node
)
3210 if node
!= null then node
.parent
= self
3214 redef fun visit_all
(v
: Visitor)
3216 v
.enter_visit
(_n_kwif
)
3217 v
.enter_visit
(_n_expr
)
3218 v
.enter_visit
(_n_then
)
3219 v
.enter_visit
(_n_else
)
3222 redef class AIfexprExpr
3223 init init_aifexprexpr
(
3224 n_kwif
: nullable TKwif,
3225 n_expr
: nullable AExpr,
3226 n_kwthen
: nullable TKwthen,
3227 n_then
: nullable AExpr,
3228 n_kwelse
: nullable TKwelse,
3229 n_else
: nullable AExpr
3232 _n_kwif
= n_kwif
.as(not null)
3233 n_kwif
.parent
= self
3234 _n_expr
= n_expr
.as(not null)
3235 n_expr
.parent
= self
3236 _n_kwthen
= n_kwthen
.as(not null)
3237 n_kwthen
.parent
= self
3238 _n_then
= n_then
.as(not null)
3239 n_then
.parent
= self
3240 _n_kwelse
= n_kwelse
.as(not null)
3241 n_kwelse
.parent
= self
3242 _n_else
= n_else
.as(not null)
3243 n_else
.parent
= self
3246 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3248 if _n_kwif
== old_child
then
3249 n_kwif
= new_child
.as(TKwif)
3252 if _n_expr
== old_child
then
3253 n_expr
= new_child
.as(AExpr)
3256 if _n_kwthen
== old_child
then
3257 n_kwthen
= new_child
.as(TKwthen)
3260 if _n_then
== old_child
then
3261 n_then
= new_child
.as(AExpr)
3264 if _n_kwelse
== old_child
then
3265 n_kwelse
= new_child
.as(TKwelse)
3268 if _n_else
== old_child
then
3269 n_else
= new_child
.as(AExpr)
3274 redef fun n_kwif
=(node
)
3279 redef fun n_expr
=(node
)
3284 redef fun n_kwthen
=(node
)
3289 redef fun n_then
=(node
)
3294 redef fun n_kwelse
=(node
)
3299 redef fun n_else
=(node
)
3306 redef fun visit_all
(v
: Visitor)
3308 v
.enter_visit
(_n_kwif
)
3309 v
.enter_visit
(_n_expr
)
3310 v
.enter_visit
(_n_kwthen
)
3311 v
.enter_visit
(_n_then
)
3312 v
.enter_visit
(_n_kwelse
)
3313 v
.enter_visit
(_n_else
)
3316 redef class AWhileExpr
3317 init init_awhileexpr
(
3318 n_kwwhile
: nullable TKwwhile,
3319 n_expr
: nullable AExpr,
3320 n_kwdo
: nullable TKwdo,
3321 n_block
: nullable AExpr,
3322 n_label
: nullable ALabel
3325 _n_kwwhile
= n_kwwhile
.as(not null)
3326 n_kwwhile
.parent
= self
3327 _n_expr
= n_expr
.as(not null)
3328 n_expr
.parent
= self
3329 _n_kwdo
= n_kwdo
.as(not null)
3330 n_kwdo
.parent
= self
3332 if n_block
!= null then n_block
.parent
= self
3334 if n_label
!= null then n_label
.parent
= self
3337 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3339 if _n_kwwhile
== old_child
then
3340 n_kwwhile
= new_child
.as(TKwwhile)
3343 if _n_expr
== old_child
then
3344 n_expr
= new_child
.as(AExpr)
3347 if _n_kwdo
== old_child
then
3348 n_kwdo
= new_child
.as(TKwdo)
3351 if _n_block
== old_child
then
3352 n_block
= new_child
.as(nullable AExpr)
3355 if _n_label
== old_child
then
3356 n_label
= new_child
.as(nullable ALabel)
3361 redef fun n_kwwhile
=(node
)
3366 redef fun n_expr
=(node
)
3371 redef fun n_kwdo
=(node
)
3376 redef fun n_block
=(node
)
3379 if node
!= null then node
.parent
= self
3381 redef fun n_label
=(node
)
3384 if node
!= null then node
.parent
= self
3388 redef fun visit_all
(v
: Visitor)
3390 v
.enter_visit
(_n_kwwhile
)
3391 v
.enter_visit
(_n_expr
)
3392 v
.enter_visit
(_n_kwdo
)
3393 v
.enter_visit
(_n_block
)
3394 v
.enter_visit
(_n_label
)
3397 redef class ALoopExpr
3398 init init_aloopexpr
(
3399 n_kwloop
: nullable TKwloop,
3400 n_block
: nullable AExpr,
3401 n_label
: nullable ALabel
3404 _n_kwloop
= n_kwloop
.as(not null)
3405 n_kwloop
.parent
= self
3407 if n_block
!= null then n_block
.parent
= self
3409 if n_label
!= null then n_label
.parent
= self
3412 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3414 if _n_kwloop
== old_child
then
3415 n_kwloop
= new_child
.as(TKwloop)
3418 if _n_block
== old_child
then
3419 n_block
= new_child
.as(nullable AExpr)
3422 if _n_label
== old_child
then
3423 n_label
= new_child
.as(nullable ALabel)
3428 redef fun n_kwloop
=(node
)
3433 redef fun n_block
=(node
)
3436 if node
!= null then node
.parent
= self
3438 redef fun n_label
=(node
)
3441 if node
!= null then node
.parent
= self
3445 redef fun visit_all
(v
: Visitor)
3447 v
.enter_visit
(_n_kwloop
)
3448 v
.enter_visit
(_n_block
)
3449 v
.enter_visit
(_n_label
)
3452 redef class AForExpr
3453 init init_aforexpr
(
3454 n_kwfor
: nullable TKwfor,
3455 n_ids
: Collection[Object], # Should be Collection[TId]
3456 n_expr
: nullable AExpr,
3457 n_kwdo
: nullable TKwdo,
3458 n_block
: nullable AExpr,
3459 n_label
: nullable ALabel
3462 _n_kwfor
= n_kwfor
.as(not null)
3463 n_kwfor
.parent
= self
3464 _n_ids
.unsafe_add_all
(n_ids
)
3465 _n_expr
= n_expr
.as(not null)
3466 n_expr
.parent
= self
3467 _n_kwdo
= n_kwdo
.as(not null)
3468 n_kwdo
.parent
= self
3470 if n_block
!= null then n_block
.parent
= self
3472 if n_label
!= null then n_label
.parent
= self
3475 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3477 if _n_kwfor
== old_child
then
3478 n_kwfor
= new_child
.as(TKwfor)
3481 if _n_ids
.replace_child
(old_child
, new_child
) then return
3482 if _n_expr
== old_child
then
3483 n_expr
= new_child
.as(AExpr)
3486 if _n_kwdo
== old_child
then
3487 n_kwdo
= new_child
.as(TKwdo)
3490 if _n_block
== old_child
then
3491 n_block
= new_child
.as(nullable AExpr)
3494 if _n_label
== old_child
then
3495 n_label
= new_child
.as(nullable ALabel)
3500 redef fun n_kwfor
=(node
)
3505 redef fun n_expr
=(node
)
3510 redef fun n_kwdo
=(node
)
3515 redef fun n_block
=(node
)
3518 if node
!= null then node
.parent
= self
3520 redef fun n_label
=(node
)
3523 if node
!= null then node
.parent
= self
3527 redef fun visit_all
(v
: Visitor)
3529 v
.enter_visit
(_n_kwfor
)
3531 v
.enter_visit
(_n_expr
)
3532 v
.enter_visit
(_n_kwdo
)
3533 v
.enter_visit
(_n_block
)
3534 v
.enter_visit
(_n_label
)
3537 redef class AAssertExpr
3538 init init_aassertexpr
(
3539 n_kwassert
: nullable TKwassert,
3541 n_expr
: nullable AExpr,
3542 n_else
: nullable AExpr
3545 _n_kwassert
= n_kwassert
.as(not null)
3546 n_kwassert
.parent
= self
3548 if n_id
!= null then n_id
.parent
= self
3549 _n_expr
= n_expr
.as(not null)
3550 n_expr
.parent
= self
3552 if n_else
!= null then n_else
.parent
= self
3555 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3557 if _n_kwassert
== old_child
then
3558 n_kwassert
= new_child
.as(TKwassert)
3561 if _n_id
== old_child
then
3562 n_id
= new_child
.as(nullable TId)
3565 if _n_expr
== old_child
then
3566 n_expr
= new_child
.as(AExpr)
3569 if _n_else
== old_child
then
3570 n_else
= new_child
.as(nullable AExpr)
3575 redef fun n_kwassert
=(node
)
3580 redef fun n_id
=(node
)
3583 if node
!= null then node
.parent
= self
3585 redef fun n_expr
=(node
)
3590 redef fun n_else
=(node
)
3593 if node
!= null then node
.parent
= self
3597 redef fun visit_all
(v
: Visitor)
3599 v
.enter_visit
(_n_kwassert
)
3600 v
.enter_visit
(_n_id
)
3601 v
.enter_visit
(_n_expr
)
3602 v
.enter_visit
(_n_else
)
3605 redef class AOnceExpr
3606 init init_aonceexpr
(
3607 n_kwonce
: nullable TKwonce,
3608 n_expr
: nullable AExpr
3611 _n_kwonce
= n_kwonce
.as(not null)
3612 n_kwonce
.parent
= self
3613 _n_expr
= n_expr
.as(not null)
3614 n_expr
.parent
= self
3617 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3619 if _n_kwonce
== old_child
then
3620 n_kwonce
= new_child
.as(TKwonce)
3623 if _n_expr
== old_child
then
3624 n_expr
= new_child
.as(AExpr)
3629 redef fun n_kwonce
=(node
)
3634 redef fun n_expr
=(node
)
3641 redef fun visit_all
(v
: Visitor)
3643 v
.enter_visit
(_n_kwonce
)
3644 v
.enter_visit
(_n_expr
)
3647 redef class ASendExpr
3648 init init_asendexpr
(
3649 n_expr
: nullable AExpr
3652 _n_expr
= n_expr
.as(not null)
3653 n_expr
.parent
= self
3656 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3658 if _n_expr
== old_child
then
3659 n_expr
= new_child
.as(AExpr)
3664 redef fun n_expr
=(node
)
3671 redef fun visit_all
(v
: Visitor)
3673 v
.enter_visit
(_n_expr
)
3676 redef class ABinopExpr
3677 init init_abinopexpr
(
3678 n_expr
: nullable AExpr,
3679 n_expr2
: nullable AExpr
3682 _n_expr
= n_expr
.as(not null)
3683 n_expr
.parent
= self
3684 _n_expr2
= n_expr2
.as(not null)
3685 n_expr2
.parent
= self
3688 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3690 if _n_expr
== old_child
then
3691 n_expr
= new_child
.as(AExpr)
3694 if _n_expr2
== old_child
then
3695 n_expr2
= new_child
.as(AExpr)
3700 redef fun n_expr
=(node
)
3705 redef fun n_expr2
=(node
)
3712 redef fun visit_all
(v
: Visitor)
3714 v
.enter_visit
(_n_expr
)
3715 v
.enter_visit
(_n_expr2
)
3720 n_expr
: nullable AExpr,
3721 n_expr2
: nullable AExpr
3724 _n_expr
= n_expr
.as(not null)
3725 n_expr
.parent
= self
3726 _n_expr2
= n_expr2
.as(not null)
3727 n_expr2
.parent
= self
3730 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3732 if _n_expr
== old_child
then
3733 n_expr
= new_child
.as(AExpr)
3736 if _n_expr2
== old_child
then
3737 n_expr2
= new_child
.as(AExpr)
3742 redef fun n_expr
=(node
)
3747 redef fun n_expr2
=(node
)
3754 redef fun visit_all
(v
: Visitor)
3756 v
.enter_visit
(_n_expr
)
3757 v
.enter_visit
(_n_expr2
)
3760 redef class AAndExpr
3761 init init_aandexpr
(
3762 n_expr
: nullable AExpr,
3763 n_expr2
: nullable AExpr
3766 _n_expr
= n_expr
.as(not null)
3767 n_expr
.parent
= self
3768 _n_expr2
= n_expr2
.as(not null)
3769 n_expr2
.parent
= self
3772 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3774 if _n_expr
== old_child
then
3775 n_expr
= new_child
.as(AExpr)
3778 if _n_expr2
== old_child
then
3779 n_expr2
= new_child
.as(AExpr)
3784 redef fun n_expr
=(node
)
3789 redef fun n_expr2
=(node
)
3796 redef fun visit_all
(v
: Visitor)
3798 v
.enter_visit
(_n_expr
)
3799 v
.enter_visit
(_n_expr2
)
3802 redef class AOrElseExpr
3803 init init_aorelseexpr
(
3804 n_expr
: nullable AExpr,
3805 n_expr2
: nullable AExpr
3808 _n_expr
= n_expr
.as(not null)
3809 n_expr
.parent
= self
3810 _n_expr2
= n_expr2
.as(not null)
3811 n_expr2
.parent
= self
3814 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3816 if _n_expr
== old_child
then
3817 n_expr
= new_child
.as(AExpr)
3820 if _n_expr2
== old_child
then
3821 n_expr2
= new_child
.as(AExpr)
3826 redef fun n_expr
=(node
)
3831 redef fun n_expr2
=(node
)
3838 redef fun visit_all
(v
: Visitor)
3840 v
.enter_visit
(_n_expr
)
3841 v
.enter_visit
(_n_expr2
)
3844 redef class AImpliesExpr
3845 init init_aimpliesexpr
(
3846 n_expr
: nullable AExpr,
3847 n_expr2
: nullable AExpr
3850 _n_expr
= n_expr
.as(not null)
3851 n_expr
.parent
= self
3852 _n_expr2
= n_expr2
.as(not null)
3853 n_expr2
.parent
= self
3856 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3858 if _n_expr
== old_child
then
3859 n_expr
= new_child
.as(AExpr)
3862 if _n_expr2
== old_child
then
3863 n_expr2
= new_child
.as(AExpr)
3868 redef fun n_expr
=(node
)
3873 redef fun n_expr2
=(node
)
3880 redef fun visit_all
(v
: Visitor)
3882 v
.enter_visit
(_n_expr
)
3883 v
.enter_visit
(_n_expr2
)
3886 redef class ANotExpr
3887 init init_anotexpr
(
3888 n_kwnot
: nullable TKwnot,
3889 n_expr
: nullable AExpr
3892 _n_kwnot
= n_kwnot
.as(not null)
3893 n_kwnot
.parent
= self
3894 _n_expr
= n_expr
.as(not null)
3895 n_expr
.parent
= self
3898 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3900 if _n_kwnot
== old_child
then
3901 n_kwnot
= new_child
.as(TKwnot)
3904 if _n_expr
== old_child
then
3905 n_expr
= new_child
.as(AExpr)
3910 redef fun n_kwnot
=(node
)
3915 redef fun n_expr
=(node
)
3922 redef fun visit_all
(v
: Visitor)
3924 v
.enter_visit
(_n_kwnot
)
3925 v
.enter_visit
(_n_expr
)
3930 n_expr
: nullable AExpr,
3931 n_expr2
: nullable AExpr
3934 _n_expr
= n_expr
.as(not null)
3935 n_expr
.parent
= self
3936 _n_expr2
= n_expr2
.as(not null)
3937 n_expr2
.parent
= self
3940 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3942 if _n_expr
== old_child
then
3943 n_expr
= new_child
.as(AExpr)
3946 if _n_expr2
== old_child
then
3947 n_expr2
= new_child
.as(AExpr)
3952 redef fun n_expr
=(node
)
3957 redef fun n_expr2
=(node
)
3964 redef fun visit_all
(v
: Visitor)
3966 v
.enter_visit
(_n_expr
)
3967 v
.enter_visit
(_n_expr2
)
3972 n_expr
: nullable AExpr,
3973 n_expr2
: nullable AExpr
3976 _n_expr
= n_expr
.as(not null)
3977 n_expr
.parent
= self
3978 _n_expr2
= n_expr2
.as(not null)
3979 n_expr2
.parent
= self
3982 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3984 if _n_expr
== old_child
then
3985 n_expr
= new_child
.as(AExpr)
3988 if _n_expr2
== old_child
then
3989 n_expr2
= new_child
.as(AExpr)
3994 redef fun n_expr
=(node
)
3999 redef fun n_expr2
=(node
)
4006 redef fun visit_all
(v
: Visitor)
4008 v
.enter_visit
(_n_expr
)
4009 v
.enter_visit
(_n_expr2
)
4014 n_expr
: nullable AExpr,
4015 n_expr2
: nullable AExpr
4018 _n_expr
= n_expr
.as(not null)
4019 n_expr
.parent
= self
4020 _n_expr2
= n_expr2
.as(not null)
4021 n_expr2
.parent
= self
4024 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4026 if _n_expr
== old_child
then
4027 n_expr
= new_child
.as(AExpr)
4030 if _n_expr2
== old_child
then
4031 n_expr2
= new_child
.as(AExpr)
4036 redef fun n_expr
=(node
)
4041 redef fun n_expr2
=(node
)
4048 redef fun visit_all
(v
: Visitor)
4050 v
.enter_visit
(_n_expr
)
4051 v
.enter_visit
(_n_expr2
)
4056 n_expr
: nullable AExpr,
4057 n_expr2
: nullable AExpr
4060 _n_expr
= n_expr
.as(not null)
4061 n_expr
.parent
= self
4062 _n_expr2
= n_expr2
.as(not null)
4063 n_expr2
.parent
= self
4066 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4068 if _n_expr
== old_child
then
4069 n_expr
= new_child
.as(AExpr)
4072 if _n_expr2
== old_child
then
4073 n_expr2
= new_child
.as(AExpr)
4078 redef fun n_expr
=(node
)
4083 redef fun n_expr2
=(node
)
4090 redef fun visit_all
(v
: Visitor)
4092 v
.enter_visit
(_n_expr
)
4093 v
.enter_visit
(_n_expr2
)
4098 n_expr
: nullable AExpr,
4099 n_expr2
: nullable AExpr
4102 _n_expr
= n_expr
.as(not null)
4103 n_expr
.parent
= self
4104 _n_expr2
= n_expr2
.as(not null)
4105 n_expr2
.parent
= self
4108 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4110 if _n_expr
== old_child
then
4111 n_expr
= new_child
.as(AExpr)
4114 if _n_expr2
== old_child
then
4115 n_expr2
= new_child
.as(AExpr)
4120 redef fun n_expr
=(node
)
4125 redef fun n_expr2
=(node
)
4132 redef fun visit_all
(v
: Visitor)
4134 v
.enter_visit
(_n_expr
)
4135 v
.enter_visit
(_n_expr2
)
4140 n_expr
: nullable AExpr,
4141 n_expr2
: nullable AExpr
4144 _n_expr
= n_expr
.as(not null)
4145 n_expr
.parent
= self
4146 _n_expr2
= n_expr2
.as(not null)
4147 n_expr2
.parent
= self
4150 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4152 if _n_expr
== old_child
then
4153 n_expr
= new_child
.as(AExpr)
4156 if _n_expr2
== old_child
then
4157 n_expr2
= new_child
.as(AExpr)
4162 redef fun n_expr
=(node
)
4167 redef fun n_expr2
=(node
)
4174 redef fun visit_all
(v
: Visitor)
4176 v
.enter_visit
(_n_expr
)
4177 v
.enter_visit
(_n_expr2
)
4182 n_expr
: nullable AExpr,
4183 n_expr2
: nullable AExpr
4186 _n_expr
= n_expr
.as(not null)
4187 n_expr
.parent
= self
4188 _n_expr2
= n_expr2
.as(not null)
4189 n_expr2
.parent
= self
4192 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4194 if _n_expr
== old_child
then
4195 n_expr
= new_child
.as(AExpr)
4198 if _n_expr2
== old_child
then
4199 n_expr2
= new_child
.as(AExpr)
4204 redef fun n_expr
=(node
)
4209 redef fun n_expr2
=(node
)
4216 redef fun visit_all
(v
: Visitor)
4218 v
.enter_visit
(_n_expr
)
4219 v
.enter_visit
(_n_expr2
)
4224 n_expr
: nullable AExpr,
4225 n_expr2
: nullable AExpr
4228 _n_expr
= n_expr
.as(not null)
4229 n_expr
.parent
= self
4230 _n_expr2
= n_expr2
.as(not null)
4231 n_expr2
.parent
= self
4234 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4236 if _n_expr
== old_child
then
4237 n_expr
= new_child
.as(AExpr)
4240 if _n_expr2
== old_child
then
4241 n_expr2
= new_child
.as(AExpr)
4246 redef fun n_expr
=(node
)
4251 redef fun n_expr2
=(node
)
4258 redef fun visit_all
(v
: Visitor)
4260 v
.enter_visit
(_n_expr
)
4261 v
.enter_visit
(_n_expr2
)
4264 redef class AIsaExpr
4265 init init_aisaexpr
(
4266 n_expr
: nullable AExpr,
4267 n_type
: nullable AType
4270 _n_expr
= n_expr
.as(not null)
4271 n_expr
.parent
= self
4272 _n_type
= n_type
.as(not null)
4273 n_type
.parent
= self
4276 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4278 if _n_expr
== old_child
then
4279 n_expr
= new_child
.as(AExpr)
4282 if _n_type
== old_child
then
4283 n_type
= new_child
.as(AType)
4288 redef fun n_expr
=(node
)
4293 redef fun n_type
=(node
)
4300 redef fun visit_all
(v
: Visitor)
4302 v
.enter_visit
(_n_expr
)
4303 v
.enter_visit
(_n_type
)
4306 redef class APlusExpr
4307 init init_aplusexpr
(
4308 n_expr
: nullable AExpr,
4309 n_expr2
: nullable AExpr
4312 _n_expr
= n_expr
.as(not null)
4313 n_expr
.parent
= self
4314 _n_expr2
= n_expr2
.as(not null)
4315 n_expr2
.parent
= self
4318 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4320 if _n_expr
== old_child
then
4321 n_expr
= new_child
.as(AExpr)
4324 if _n_expr2
== old_child
then
4325 n_expr2
= new_child
.as(AExpr)
4330 redef fun n_expr
=(node
)
4335 redef fun n_expr2
=(node
)
4342 redef fun visit_all
(v
: Visitor)
4344 v
.enter_visit
(_n_expr
)
4345 v
.enter_visit
(_n_expr2
)
4348 redef class AMinusExpr
4349 init init_aminusexpr
(
4350 n_expr
: nullable AExpr,
4351 n_expr2
: nullable AExpr
4354 _n_expr
= n_expr
.as(not null)
4355 n_expr
.parent
= self
4356 _n_expr2
= n_expr2
.as(not null)
4357 n_expr2
.parent
= self
4360 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4362 if _n_expr
== old_child
then
4363 n_expr
= new_child
.as(AExpr)
4366 if _n_expr2
== old_child
then
4367 n_expr2
= new_child
.as(AExpr)
4372 redef fun n_expr
=(node
)
4377 redef fun n_expr2
=(node
)
4384 redef fun visit_all
(v
: Visitor)
4386 v
.enter_visit
(_n_expr
)
4387 v
.enter_visit
(_n_expr2
)
4390 redef class AStarshipExpr
4391 init init_astarshipexpr
(
4392 n_expr
: nullable AExpr,
4393 n_expr2
: nullable AExpr
4396 _n_expr
= n_expr
.as(not null)
4397 n_expr
.parent
= self
4398 _n_expr2
= n_expr2
.as(not null)
4399 n_expr2
.parent
= self
4402 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4404 if _n_expr
== old_child
then
4405 n_expr
= new_child
.as(AExpr)
4408 if _n_expr2
== old_child
then
4409 n_expr2
= new_child
.as(AExpr)
4414 redef fun n_expr
=(node
)
4419 redef fun n_expr2
=(node
)
4426 redef fun visit_all
(v
: Visitor)
4428 v
.enter_visit
(_n_expr
)
4429 v
.enter_visit
(_n_expr2
)
4432 redef class AStarExpr
4433 init init_astarexpr
(
4434 n_expr
: nullable AExpr,
4435 n_expr2
: nullable AExpr
4438 _n_expr
= n_expr
.as(not null)
4439 n_expr
.parent
= self
4440 _n_expr2
= n_expr2
.as(not null)
4441 n_expr2
.parent
= self
4444 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4446 if _n_expr
== old_child
then
4447 n_expr
= new_child
.as(AExpr)
4450 if _n_expr2
== old_child
then
4451 n_expr2
= new_child
.as(AExpr)
4456 redef fun n_expr
=(node
)
4461 redef fun n_expr2
=(node
)
4468 redef fun visit_all
(v
: Visitor)
4470 v
.enter_visit
(_n_expr
)
4471 v
.enter_visit
(_n_expr2
)
4474 redef class ASlashExpr
4475 init init_aslashexpr
(
4476 n_expr
: nullable AExpr,
4477 n_expr2
: nullable AExpr
4480 _n_expr
= n_expr
.as(not null)
4481 n_expr
.parent
= self
4482 _n_expr2
= n_expr2
.as(not null)
4483 n_expr2
.parent
= self
4486 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4488 if _n_expr
== old_child
then
4489 n_expr
= new_child
.as(AExpr)
4492 if _n_expr2
== old_child
then
4493 n_expr2
= new_child
.as(AExpr)
4498 redef fun n_expr
=(node
)
4503 redef fun n_expr2
=(node
)
4510 redef fun visit_all
(v
: Visitor)
4512 v
.enter_visit
(_n_expr
)
4513 v
.enter_visit
(_n_expr2
)
4516 redef class APercentExpr
4517 init init_apercentexpr
(
4518 n_expr
: nullable AExpr,
4519 n_expr2
: nullable AExpr
4522 _n_expr
= n_expr
.as(not null)
4523 n_expr
.parent
= self
4524 _n_expr2
= n_expr2
.as(not null)
4525 n_expr2
.parent
= self
4528 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4530 if _n_expr
== old_child
then
4531 n_expr
= new_child
.as(AExpr)
4534 if _n_expr2
== old_child
then
4535 n_expr2
= new_child
.as(AExpr)
4540 redef fun n_expr
=(node
)
4545 redef fun n_expr2
=(node
)
4552 redef fun visit_all
(v
: Visitor)
4554 v
.enter_visit
(_n_expr
)
4555 v
.enter_visit
(_n_expr2
)
4558 redef class AUminusExpr
4559 init init_auminusexpr
(
4560 n_minus
: nullable TMinus,
4561 n_expr
: nullable AExpr
4564 _n_minus
= n_minus
.as(not null)
4565 n_minus
.parent
= self
4566 _n_expr
= n_expr
.as(not null)
4567 n_expr
.parent
= self
4570 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4572 if _n_minus
== old_child
then
4573 n_minus
= new_child
.as(TMinus)
4576 if _n_expr
== old_child
then
4577 n_expr
= new_child
.as(AExpr)
4582 redef fun n_minus
=(node
)
4587 redef fun n_expr
=(node
)
4594 redef fun visit_all
(v
: Visitor)
4596 v
.enter_visit
(_n_minus
)
4597 v
.enter_visit
(_n_expr
)
4600 redef class ANewExpr
4601 init init_anewexpr
(
4602 n_kwnew
: nullable TKwnew,
4603 n_type
: nullable AType,
4605 n_args
: nullable AExprs
4608 _n_kwnew
= n_kwnew
.as(not null)
4609 n_kwnew
.parent
= self
4610 _n_type
= n_type
.as(not null)
4611 n_type
.parent
= self
4613 if n_id
!= null then n_id
.parent
= self
4614 _n_args
= n_args
.as(not null)
4615 n_args
.parent
= self
4618 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4620 if _n_kwnew
== old_child
then
4621 n_kwnew
= new_child
.as(TKwnew)
4624 if _n_type
== old_child
then
4625 n_type
= new_child
.as(AType)
4628 if _n_id
== old_child
then
4629 n_id
= new_child
.as(nullable TId)
4632 if _n_args
== old_child
then
4633 n_args
= new_child
.as(AExprs)
4638 redef fun n_kwnew
=(node
)
4643 redef fun n_type
=(node
)
4648 redef fun n_id
=(node
)
4651 if node
!= null then node
.parent
= self
4653 redef fun n_args
=(node
)
4660 redef fun visit_all
(v
: Visitor)
4662 v
.enter_visit
(_n_kwnew
)
4663 v
.enter_visit
(_n_type
)
4664 v
.enter_visit
(_n_id
)
4665 v
.enter_visit
(_n_args
)
4668 redef class AAttrExpr
4669 init init_aattrexpr
(
4670 n_expr
: nullable AExpr,
4671 n_id
: nullable TAttrid
4674 _n_expr
= n_expr
.as(not null)
4675 n_expr
.parent
= self
4676 _n_id
= n_id
.as(not null)
4680 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4682 if _n_expr
== old_child
then
4683 n_expr
= new_child
.as(AExpr)
4686 if _n_id
== old_child
then
4687 n_id
= new_child
.as(TAttrid)
4692 redef fun n_expr
=(node
)
4697 redef fun n_id
=(node
)
4704 redef fun visit_all
(v
: Visitor)
4706 v
.enter_visit
(_n_expr
)
4707 v
.enter_visit
(_n_id
)
4710 redef class AAttrAssignExpr
4711 init init_aattrassignexpr
(
4712 n_expr
: nullable AExpr,
4713 n_id
: nullable TAttrid,
4714 n_assign
: nullable TAssign,
4715 n_value
: nullable AExpr
4718 _n_expr
= n_expr
.as(not null)
4719 n_expr
.parent
= self
4720 _n_id
= n_id
.as(not null)
4722 _n_assign
= n_assign
.as(not null)
4723 n_assign
.parent
= self
4724 _n_value
= n_value
.as(not null)
4725 n_value
.parent
= self
4728 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4730 if _n_expr
== old_child
then
4731 n_expr
= new_child
.as(AExpr)
4734 if _n_id
== old_child
then
4735 n_id
= new_child
.as(TAttrid)
4738 if _n_assign
== old_child
then
4739 n_assign
= new_child
.as(TAssign)
4742 if _n_value
== old_child
then
4743 n_value
= new_child
.as(AExpr)
4748 redef fun n_expr
=(node
)
4753 redef fun n_id
=(node
)
4758 redef fun n_assign
=(node
)
4763 redef fun n_value
=(node
)
4770 redef fun visit_all
(v
: Visitor)
4772 v
.enter_visit
(_n_expr
)
4773 v
.enter_visit
(_n_id
)
4774 v
.enter_visit
(_n_assign
)
4775 v
.enter_visit
(_n_value
)
4778 redef class AAttrReassignExpr
4779 init init_aattrreassignexpr
(
4780 n_expr
: nullable AExpr,
4781 n_id
: nullable TAttrid,
4782 n_assign_op
: nullable AAssignOp,
4783 n_value
: nullable AExpr
4786 _n_expr
= n_expr
.as(not null)
4787 n_expr
.parent
= self
4788 _n_id
= n_id
.as(not null)
4790 _n_assign_op
= n_assign_op
.as(not null)
4791 n_assign_op
.parent
= self
4792 _n_value
= n_value
.as(not null)
4793 n_value
.parent
= self
4796 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4798 if _n_expr
== old_child
then
4799 n_expr
= new_child
.as(AExpr)
4802 if _n_id
== old_child
then
4803 n_id
= new_child
.as(TAttrid)
4806 if _n_assign_op
== old_child
then
4807 n_assign_op
= new_child
.as(AAssignOp)
4810 if _n_value
== old_child
then
4811 n_value
= new_child
.as(AExpr)
4816 redef fun n_expr
=(node
)
4821 redef fun n_id
=(node
)
4826 redef fun n_assign_op
=(node
)
4831 redef fun n_value
=(node
)
4838 redef fun visit_all
(v
: Visitor)
4840 v
.enter_visit
(_n_expr
)
4841 v
.enter_visit
(_n_id
)
4842 v
.enter_visit
(_n_assign_op
)
4843 v
.enter_visit
(_n_value
)
4846 redef class ACallExpr
4847 init init_acallexpr
(
4848 n_expr
: nullable AExpr,
4850 n_args
: nullable AExprs
4853 _n_expr
= n_expr
.as(not null)
4854 n_expr
.parent
= self
4855 _n_id
= n_id
.as(not null)
4857 _n_args
= n_args
.as(not null)
4858 n_args
.parent
= self
4861 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4863 if _n_expr
== old_child
then
4864 n_expr
= new_child
.as(AExpr)
4867 if _n_id
== old_child
then
4868 n_id
= new_child
.as(TId)
4871 if _n_args
== old_child
then
4872 n_args
= new_child
.as(AExprs)
4877 redef fun n_expr
=(node
)
4882 redef fun n_id
=(node
)
4887 redef fun n_args
=(node
)
4894 redef fun visit_all
(v
: Visitor)
4896 v
.enter_visit
(_n_expr
)
4897 v
.enter_visit
(_n_id
)
4898 v
.enter_visit
(_n_args
)
4901 redef class ACallAssignExpr
4902 init init_acallassignexpr
(
4903 n_expr
: nullable AExpr,
4905 n_args
: nullable AExprs,
4906 n_assign
: nullable TAssign,
4907 n_value
: nullable AExpr
4910 _n_expr
= n_expr
.as(not null)
4911 n_expr
.parent
= self
4912 _n_id
= n_id
.as(not null)
4914 _n_args
= n_args
.as(not null)
4915 n_args
.parent
= self
4916 _n_assign
= n_assign
.as(not null)
4917 n_assign
.parent
= self
4918 _n_value
= n_value
.as(not null)
4919 n_value
.parent
= self
4922 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4924 if _n_expr
== old_child
then
4925 n_expr
= new_child
.as(AExpr)
4928 if _n_id
== old_child
then
4929 n_id
= new_child
.as(TId)
4932 if _n_args
== old_child
then
4933 n_args
= new_child
.as(AExprs)
4936 if _n_assign
== old_child
then
4937 n_assign
= new_child
.as(TAssign)
4940 if _n_value
== old_child
then
4941 n_value
= new_child
.as(AExpr)
4946 redef fun n_expr
=(node
)
4951 redef fun n_id
=(node
)
4956 redef fun n_args
=(node
)
4961 redef fun n_assign
=(node
)
4966 redef fun n_value
=(node
)
4973 redef fun visit_all
(v
: Visitor)
4975 v
.enter_visit
(_n_expr
)
4976 v
.enter_visit
(_n_id
)
4977 v
.enter_visit
(_n_args
)
4978 v
.enter_visit
(_n_assign
)
4979 v
.enter_visit
(_n_value
)
4982 redef class ACallReassignExpr
4983 init init_acallreassignexpr
(
4984 n_expr
: nullable AExpr,
4986 n_args
: nullable AExprs,
4987 n_assign_op
: nullable AAssignOp,
4988 n_value
: nullable AExpr
4991 _n_expr
= n_expr
.as(not null)
4992 n_expr
.parent
= self
4993 _n_id
= n_id
.as(not null)
4995 _n_args
= n_args
.as(not null)
4996 n_args
.parent
= self
4997 _n_assign_op
= n_assign_op
.as(not null)
4998 n_assign_op
.parent
= self
4999 _n_value
= n_value
.as(not null)
5000 n_value
.parent
= self
5003 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5005 if _n_expr
== old_child
then
5006 n_expr
= new_child
.as(AExpr)
5009 if _n_id
== old_child
then
5010 n_id
= new_child
.as(TId)
5013 if _n_args
== old_child
then
5014 n_args
= new_child
.as(AExprs)
5017 if _n_assign_op
== old_child
then
5018 n_assign_op
= new_child
.as(AAssignOp)
5021 if _n_value
== old_child
then
5022 n_value
= new_child
.as(AExpr)
5027 redef fun n_expr
=(node
)
5032 redef fun n_id
=(node
)
5037 redef fun n_args
=(node
)
5042 redef fun n_assign_op
=(node
)
5047 redef fun n_value
=(node
)
5054 redef fun visit_all
(v
: Visitor)
5056 v
.enter_visit
(_n_expr
)
5057 v
.enter_visit
(_n_id
)
5058 v
.enter_visit
(_n_args
)
5059 v
.enter_visit
(_n_assign_op
)
5060 v
.enter_visit
(_n_value
)
5063 redef class ASuperExpr
5064 init init_asuperexpr
(
5065 n_qualified
: nullable AQualified,
5066 n_kwsuper
: nullable TKwsuper,
5067 n_args
: nullable AExprs
5070 _n_qualified
= n_qualified
5071 if n_qualified
!= null then n_qualified
.parent
= self
5072 _n_kwsuper
= n_kwsuper
.as(not null)
5073 n_kwsuper
.parent
= self
5074 _n_args
= n_args
.as(not null)
5075 n_args
.parent
= self
5078 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5080 if _n_qualified
== old_child
then
5081 n_qualified
= new_child
.as(nullable AQualified)
5084 if _n_kwsuper
== old_child
then
5085 n_kwsuper
= new_child
.as(TKwsuper)
5088 if _n_args
== old_child
then
5089 n_args
= new_child
.as(AExprs)
5094 redef fun n_qualified
=(node
)
5097 if node
!= null then node
.parent
= self
5099 redef fun n_kwsuper
=(node
)
5104 redef fun n_args
=(node
)
5111 redef fun visit_all
(v
: Visitor)
5113 v
.enter_visit
(_n_qualified
)
5114 v
.enter_visit
(_n_kwsuper
)
5115 v
.enter_visit
(_n_args
)
5118 redef class AInitExpr
5119 init init_ainitexpr
(
5120 n_expr
: nullable AExpr,
5121 n_kwinit
: nullable TKwinit,
5122 n_args
: nullable AExprs
5125 _n_expr
= n_expr
.as(not null)
5126 n_expr
.parent
= self
5127 _n_kwinit
= n_kwinit
.as(not null)
5128 n_kwinit
.parent
= self
5129 _n_args
= n_args
.as(not null)
5130 n_args
.parent
= self
5133 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5135 if _n_expr
== old_child
then
5136 n_expr
= new_child
.as(AExpr)
5139 if _n_kwinit
== old_child
then
5140 n_kwinit
= new_child
.as(TKwinit)
5143 if _n_args
== old_child
then
5144 n_args
= new_child
.as(AExprs)
5149 redef fun n_expr
=(node
)
5154 redef fun n_kwinit
=(node
)
5159 redef fun n_args
=(node
)
5166 redef fun visit_all
(v
: Visitor)
5168 v
.enter_visit
(_n_expr
)
5169 v
.enter_visit
(_n_kwinit
)
5170 v
.enter_visit
(_n_args
)
5173 redef class ABraExpr
5174 init init_abraexpr
(
5175 n_expr
: nullable AExpr,
5176 n_args
: nullable AExprs
5179 _n_expr
= n_expr
.as(not null)
5180 n_expr
.parent
= self
5181 _n_args
= n_args
.as(not null)
5182 n_args
.parent
= self
5185 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5187 if _n_expr
== old_child
then
5188 n_expr
= new_child
.as(AExpr)
5191 if _n_args
== old_child
then
5192 n_args
= new_child
.as(AExprs)
5197 redef fun n_expr
=(node
)
5202 redef fun n_args
=(node
)
5209 redef fun visit_all
(v
: Visitor)
5211 v
.enter_visit
(_n_expr
)
5212 v
.enter_visit
(_n_args
)
5215 redef class ABraAssignExpr
5216 init init_abraassignexpr
(
5217 n_expr
: nullable AExpr,
5218 n_args
: nullable AExprs,
5219 n_assign
: nullable TAssign,
5220 n_value
: nullable AExpr
5223 _n_expr
= n_expr
.as(not null)
5224 n_expr
.parent
= self
5225 _n_args
= n_args
.as(not null)
5226 n_args
.parent
= self
5227 _n_assign
= n_assign
.as(not null)
5228 n_assign
.parent
= self
5229 _n_value
= n_value
.as(not null)
5230 n_value
.parent
= self
5233 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5235 if _n_expr
== old_child
then
5236 n_expr
= new_child
.as(AExpr)
5239 if _n_args
== old_child
then
5240 n_args
= new_child
.as(AExprs)
5243 if _n_assign
== old_child
then
5244 n_assign
= new_child
.as(TAssign)
5247 if _n_value
== old_child
then
5248 n_value
= new_child
.as(AExpr)
5253 redef fun n_expr
=(node
)
5258 redef fun n_args
=(node
)
5263 redef fun n_assign
=(node
)
5268 redef fun n_value
=(node
)
5275 redef fun visit_all
(v
: Visitor)
5277 v
.enter_visit
(_n_expr
)
5278 v
.enter_visit
(_n_args
)
5279 v
.enter_visit
(_n_assign
)
5280 v
.enter_visit
(_n_value
)
5283 redef class ABraReassignExpr
5284 init init_abrareassignexpr
(
5285 n_expr
: nullable AExpr,
5286 n_args
: nullable AExprs,
5287 n_assign_op
: nullable AAssignOp,
5288 n_value
: nullable AExpr
5291 _n_expr
= n_expr
.as(not null)
5292 n_expr
.parent
= self
5293 _n_args
= n_args
.as(not null)
5294 n_args
.parent
= self
5295 _n_assign_op
= n_assign_op
.as(not null)
5296 n_assign_op
.parent
= self
5297 _n_value
= n_value
.as(not null)
5298 n_value
.parent
= self
5301 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5303 if _n_expr
== old_child
then
5304 n_expr
= new_child
.as(AExpr)
5307 if _n_args
== old_child
then
5308 n_args
= new_child
.as(AExprs)
5311 if _n_assign_op
== old_child
then
5312 n_assign_op
= new_child
.as(AAssignOp)
5315 if _n_value
== old_child
then
5316 n_value
= new_child
.as(AExpr)
5321 redef fun n_expr
=(node
)
5326 redef fun n_args
=(node
)
5331 redef fun n_assign_op
=(node
)
5336 redef fun n_value
=(node
)
5343 redef fun visit_all
(v
: Visitor)
5345 v
.enter_visit
(_n_expr
)
5346 v
.enter_visit
(_n_args
)
5347 v
.enter_visit
(_n_assign_op
)
5348 v
.enter_visit
(_n_value
)
5351 redef class AVarExpr
5352 init init_avarexpr
(
5356 _n_id
= n_id
.as(not null)
5360 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5362 if _n_id
== old_child
then
5363 n_id
= new_child
.as(TId)
5368 redef fun n_id
=(node
)
5375 redef fun visit_all
(v
: Visitor)
5377 v
.enter_visit
(_n_id
)
5380 redef class AVarAssignExpr
5381 init init_avarassignexpr
(
5383 n_assign
: nullable TAssign,
5384 n_value
: nullable AExpr
5387 _n_id
= n_id
.as(not null)
5389 _n_assign
= n_assign
.as(not null)
5390 n_assign
.parent
= self
5391 _n_value
= n_value
.as(not null)
5392 n_value
.parent
= self
5395 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5397 if _n_id
== old_child
then
5398 n_id
= new_child
.as(TId)
5401 if _n_assign
== old_child
then
5402 n_assign
= new_child
.as(TAssign)
5405 if _n_value
== old_child
then
5406 n_value
= new_child
.as(AExpr)
5411 redef fun n_id
=(node
)
5416 redef fun n_assign
=(node
)
5421 redef fun n_value
=(node
)
5428 redef fun visit_all
(v
: Visitor)
5430 v
.enter_visit
(_n_id
)
5431 v
.enter_visit
(_n_assign
)
5432 v
.enter_visit
(_n_value
)
5435 redef class AVarReassignExpr
5436 init init_avarreassignexpr
(
5438 n_assign_op
: nullable AAssignOp,
5439 n_value
: nullable AExpr
5442 _n_id
= n_id
.as(not null)
5444 _n_assign_op
= n_assign_op
.as(not null)
5445 n_assign_op
.parent
= self
5446 _n_value
= n_value
.as(not null)
5447 n_value
.parent
= self
5450 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5452 if _n_id
== old_child
then
5453 n_id
= new_child
.as(TId)
5456 if _n_assign_op
== old_child
then
5457 n_assign_op
= new_child
.as(AAssignOp)
5460 if _n_value
== old_child
then
5461 n_value
= new_child
.as(AExpr)
5466 redef fun n_id
=(node
)
5471 redef fun n_assign_op
=(node
)
5476 redef fun n_value
=(node
)
5483 redef fun visit_all
(v
: Visitor)
5485 v
.enter_visit
(_n_id
)
5486 v
.enter_visit
(_n_assign_op
)
5487 v
.enter_visit
(_n_value
)
5490 redef class ARangeExpr
5491 init init_arangeexpr
(
5492 n_expr
: nullable AExpr,
5493 n_expr2
: nullable AExpr,
5494 n_annotations
: nullable AAnnotations
5497 _n_expr
= n_expr
.as(not null)
5498 n_expr
.parent
= self
5499 _n_expr2
= n_expr2
.as(not null)
5500 n_expr2
.parent
= self
5501 _n_annotations
= n_annotations
5502 if n_annotations
!= null then n_annotations
.parent
= self
5505 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5507 if _n_expr
== old_child
then
5508 n_expr
= new_child
.as(AExpr)
5511 if _n_expr2
== old_child
then
5512 n_expr2
= new_child
.as(AExpr)
5515 if _n_annotations
== old_child
then
5516 n_annotations
= new_child
.as(nullable AAnnotations)
5521 redef fun n_expr
=(node
)
5526 redef fun n_expr2
=(node
)
5531 redef fun n_annotations
=(node
)
5533 _n_annotations
= node
5534 if node
!= null then node
.parent
= self
5538 redef fun visit_all
(v
: Visitor)
5540 v
.enter_visit
(_n_expr
)
5541 v
.enter_visit
(_n_expr2
)
5542 v
.enter_visit
(_n_annotations
)
5545 redef class ACrangeExpr
5546 init init_acrangeexpr
(
5547 n_obra
: nullable TObra,
5548 n_expr
: nullable AExpr,
5549 n_expr2
: nullable AExpr,
5550 n_cbra
: nullable TCbra,
5551 n_annotations
: nullable AAnnotations
5554 _n_obra
= n_obra
.as(not null)
5555 n_obra
.parent
= self
5556 _n_expr
= n_expr
.as(not null)
5557 n_expr
.parent
= self
5558 _n_expr2
= n_expr2
.as(not null)
5559 n_expr2
.parent
= self
5560 _n_cbra
= n_cbra
.as(not null)
5561 n_cbra
.parent
= self
5562 _n_annotations
= n_annotations
5563 if n_annotations
!= null then n_annotations
.parent
= self
5566 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5568 if _n_obra
== old_child
then
5569 n_obra
= new_child
.as(TObra)
5572 if _n_expr
== old_child
then
5573 n_expr
= new_child
.as(AExpr)
5576 if _n_expr2
== old_child
then
5577 n_expr2
= new_child
.as(AExpr)
5580 if _n_cbra
== old_child
then
5581 n_cbra
= new_child
.as(TCbra)
5584 if _n_annotations
== old_child
then
5585 n_annotations
= new_child
.as(nullable AAnnotations)
5590 redef fun n_obra
=(node
)
5595 redef fun n_expr
=(node
)
5600 redef fun n_expr2
=(node
)
5605 redef fun n_cbra
=(node
)
5610 redef fun n_annotations
=(node
)
5612 _n_annotations
= node
5613 if node
!= null then node
.parent
= self
5617 redef fun visit_all
(v
: Visitor)
5619 v
.enter_visit
(_n_obra
)
5620 v
.enter_visit
(_n_expr
)
5621 v
.enter_visit
(_n_expr2
)
5622 v
.enter_visit
(_n_cbra
)
5623 v
.enter_visit
(_n_annotations
)
5626 redef class AOrangeExpr
5627 init init_aorangeexpr
(
5628 n_obra
: nullable TObra,
5629 n_expr
: nullable AExpr,
5630 n_expr2
: nullable AExpr,
5631 n_cbra
: nullable TObra,
5632 n_annotations
: nullable AAnnotations
5635 _n_obra
= n_obra
.as(not null)
5636 n_obra
.parent
= self
5637 _n_expr
= n_expr
.as(not null)
5638 n_expr
.parent
= self
5639 _n_expr2
= n_expr2
.as(not null)
5640 n_expr2
.parent
= self
5641 _n_cbra
= n_cbra
.as(not null)
5642 n_cbra
.parent
= self
5643 _n_annotations
= n_annotations
5644 if n_annotations
!= null then n_annotations
.parent
= self
5647 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5649 if _n_obra
== old_child
then
5650 n_obra
= new_child
.as(TObra)
5653 if _n_expr
== old_child
then
5654 n_expr
= new_child
.as(AExpr)
5657 if _n_expr2
== old_child
then
5658 n_expr2
= new_child
.as(AExpr)
5661 if _n_cbra
== old_child
then
5662 n_cbra
= new_child
.as(TObra)
5665 if _n_annotations
== old_child
then
5666 n_annotations
= new_child
.as(nullable AAnnotations)
5671 redef fun n_obra
=(node
)
5676 redef fun n_expr
=(node
)
5681 redef fun n_expr2
=(node
)
5686 redef fun n_cbra
=(node
)
5691 redef fun n_annotations
=(node
)
5693 _n_annotations
= node
5694 if node
!= null then node
.parent
= self
5698 redef fun visit_all
(v
: Visitor)
5700 v
.enter_visit
(_n_obra
)
5701 v
.enter_visit
(_n_expr
)
5702 v
.enter_visit
(_n_expr2
)
5703 v
.enter_visit
(_n_cbra
)
5704 v
.enter_visit
(_n_annotations
)
5707 redef class AArrayExpr
5708 init init_aarrayexpr
(
5709 n_exprs
: nullable AExprs,
5710 n_annotations
: nullable AAnnotations
5713 _n_exprs
= n_exprs
.as(not null)
5714 n_exprs
.parent
= self
5715 _n_annotations
= n_annotations
5716 if n_annotations
!= null then n_annotations
.parent
= self
5719 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5721 if _n_exprs
== old_child
then
5722 n_exprs
= new_child
.as(AExprs)
5725 if _n_annotations
== old_child
then
5726 n_annotations
= new_child
.as(nullable AAnnotations)
5731 redef fun n_exprs
=(node
)
5736 redef fun n_annotations
=(node
)
5738 _n_annotations
= node
5739 if node
!= null then node
.parent
= self
5743 redef fun visit_all
(v
: Visitor)
5745 v
.enter_visit
(_n_exprs
)
5746 v
.enter_visit
(_n_annotations
)
5749 redef class ASelfExpr
5750 init init_aselfexpr
(
5751 n_kwself
: nullable TKwself,
5752 n_annotations
: nullable AAnnotations
5755 _n_kwself
= n_kwself
.as(not null)
5756 n_kwself
.parent
= self
5757 _n_annotations
= n_annotations
5758 if n_annotations
!= null then n_annotations
.parent
= self
5761 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5763 if _n_kwself
== old_child
then
5764 n_kwself
= new_child
.as(TKwself)
5767 if _n_annotations
== old_child
then
5768 n_annotations
= new_child
.as(nullable AAnnotations)
5773 redef fun n_kwself
=(node
)
5778 redef fun n_annotations
=(node
)
5780 _n_annotations
= node
5781 if node
!= null then node
.parent
= self
5785 redef fun visit_all
(v
: Visitor)
5787 v
.enter_visit
(_n_kwself
)
5788 v
.enter_visit
(_n_annotations
)
5791 redef class AImplicitSelfExpr
5792 init init_aimplicitselfexpr
5796 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5802 redef fun visit_all
(v
: Visitor)
5806 redef class ATrueExpr
5807 init init_atrueexpr
(
5808 n_kwtrue
: nullable TKwtrue,
5809 n_annotations
: nullable AAnnotations
5812 _n_kwtrue
= n_kwtrue
.as(not null)
5813 n_kwtrue
.parent
= self
5814 _n_annotations
= n_annotations
5815 if n_annotations
!= null then n_annotations
.parent
= self
5818 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5820 if _n_kwtrue
== old_child
then
5821 n_kwtrue
= new_child
.as(TKwtrue)
5824 if _n_annotations
== old_child
then
5825 n_annotations
= new_child
.as(nullable AAnnotations)
5830 redef fun n_kwtrue
=(node
)
5835 redef fun n_annotations
=(node
)
5837 _n_annotations
= node
5838 if node
!= null then node
.parent
= self
5842 redef fun visit_all
(v
: Visitor)
5844 v
.enter_visit
(_n_kwtrue
)
5845 v
.enter_visit
(_n_annotations
)
5848 redef class AFalseExpr
5849 init init_afalseexpr
(
5850 n_kwfalse
: nullable TKwfalse,
5851 n_annotations
: nullable AAnnotations
5854 _n_kwfalse
= n_kwfalse
.as(not null)
5855 n_kwfalse
.parent
= self
5856 _n_annotations
= n_annotations
5857 if n_annotations
!= null then n_annotations
.parent
= self
5860 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5862 if _n_kwfalse
== old_child
then
5863 n_kwfalse
= new_child
.as(TKwfalse)
5866 if _n_annotations
== old_child
then
5867 n_annotations
= new_child
.as(nullable AAnnotations)
5872 redef fun n_kwfalse
=(node
)
5877 redef fun n_annotations
=(node
)
5879 _n_annotations
= node
5880 if node
!= null then node
.parent
= self
5884 redef fun visit_all
(v
: Visitor)
5886 v
.enter_visit
(_n_kwfalse
)
5887 v
.enter_visit
(_n_annotations
)
5890 redef class ANullExpr
5891 init init_anullexpr
(
5892 n_kwnull
: nullable TKwnull,
5893 n_annotations
: nullable AAnnotations
5896 _n_kwnull
= n_kwnull
.as(not null)
5897 n_kwnull
.parent
= self
5898 _n_annotations
= n_annotations
5899 if n_annotations
!= null then n_annotations
.parent
= self
5902 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5904 if _n_kwnull
== old_child
then
5905 n_kwnull
= new_child
.as(TKwnull)
5908 if _n_annotations
== old_child
then
5909 n_annotations
= new_child
.as(nullable AAnnotations)
5914 redef fun n_kwnull
=(node
)
5919 redef fun n_annotations
=(node
)
5921 _n_annotations
= node
5922 if node
!= null then node
.parent
= self
5926 redef fun visit_all
(v
: Visitor)
5928 v
.enter_visit
(_n_kwnull
)
5929 v
.enter_visit
(_n_annotations
)
5932 redef class ADecIntExpr
5933 init init_adecintexpr
(
5934 n_number
: nullable TNumber,
5935 n_annotations
: nullable AAnnotations
5938 _n_number
= n_number
.as(not null)
5939 n_number
.parent
= self
5940 _n_annotations
= n_annotations
5941 if n_annotations
!= null then n_annotations
.parent
= self
5944 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5946 if _n_number
== old_child
then
5947 n_number
= new_child
.as(TNumber)
5950 if _n_annotations
== old_child
then
5951 n_annotations
= new_child
.as(nullable AAnnotations)
5956 redef fun n_number
=(node
)
5961 redef fun n_annotations
=(node
)
5963 _n_annotations
= node
5964 if node
!= null then node
.parent
= self
5968 redef fun visit_all
(v
: Visitor)
5970 v
.enter_visit
(_n_number
)
5971 v
.enter_visit
(_n_annotations
)
5974 redef class AHexIntExpr
5975 init init_ahexintexpr
(
5976 n_hex_number
: nullable THexNumber,
5977 n_annotations
: nullable AAnnotations
5980 _n_hex_number
= n_hex_number
.as(not null)
5981 n_hex_number
.parent
= self
5982 _n_annotations
= n_annotations
5983 if n_annotations
!= null then n_annotations
.parent
= self
5986 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5988 if _n_hex_number
== old_child
then
5989 n_hex_number
= new_child
.as(THexNumber)
5992 if _n_annotations
== old_child
then
5993 n_annotations
= new_child
.as(nullable AAnnotations)
5998 redef fun n_hex_number
=(node
)
6000 _n_hex_number
= node
6003 redef fun n_annotations
=(node
)
6005 _n_annotations
= node
6006 if node
!= null then node
.parent
= self
6010 redef fun visit_all
(v
: Visitor)
6012 v
.enter_visit
(_n_hex_number
)
6013 v
.enter_visit
(_n_annotations
)
6016 redef class AFloatExpr
6017 init init_afloatexpr
(
6018 n_float
: nullable TFloat,
6019 n_annotations
: nullable AAnnotations
6022 _n_float
= n_float
.as(not null)
6023 n_float
.parent
= self
6024 _n_annotations
= n_annotations
6025 if n_annotations
!= null then n_annotations
.parent
= self
6028 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6030 if _n_float
== old_child
then
6031 n_float
= new_child
.as(TFloat)
6034 if _n_annotations
== old_child
then
6035 n_annotations
= new_child
.as(nullable AAnnotations)
6040 redef fun n_float
=(node
)
6045 redef fun n_annotations
=(node
)
6047 _n_annotations
= node
6048 if node
!= null then node
.parent
= self
6052 redef fun visit_all
(v
: Visitor)
6054 v
.enter_visit
(_n_float
)
6055 v
.enter_visit
(_n_annotations
)
6058 redef class ACharExpr
6059 init init_acharexpr
(
6060 n_char
: nullable TChar,
6061 n_annotations
: nullable AAnnotations
6064 _n_char
= n_char
.as(not null)
6065 n_char
.parent
= self
6066 _n_annotations
= n_annotations
6067 if n_annotations
!= null then n_annotations
.parent
= self
6070 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6072 if _n_char
== old_child
then
6073 n_char
= new_child
.as(TChar)
6076 if _n_annotations
== old_child
then
6077 n_annotations
= new_child
.as(nullable AAnnotations)
6082 redef fun n_char
=(node
)
6087 redef fun n_annotations
=(node
)
6089 _n_annotations
= node
6090 if node
!= null then node
.parent
= self
6094 redef fun visit_all
(v
: Visitor)
6096 v
.enter_visit
(_n_char
)
6097 v
.enter_visit
(_n_annotations
)
6100 redef class AStringExpr
6101 init init_astringexpr
(
6102 n_string
: nullable TString,
6103 n_annotations
: nullable AAnnotations
6106 _n_string
= n_string
.as(not null)
6107 n_string
.parent
= self
6108 _n_annotations
= n_annotations
6109 if n_annotations
!= null then n_annotations
.parent
= self
6112 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6114 if _n_string
== old_child
then
6115 n_string
= new_child
.as(TString)
6118 if _n_annotations
== old_child
then
6119 n_annotations
= new_child
.as(nullable AAnnotations)
6124 redef fun n_string
=(node
)
6129 redef fun n_annotations
=(node
)
6131 _n_annotations
= node
6132 if node
!= null then node
.parent
= self
6136 redef fun visit_all
(v
: Visitor)
6138 v
.enter_visit
(_n_string
)
6139 v
.enter_visit
(_n_annotations
)
6142 redef class AStartStringExpr
6143 init init_astartstringexpr
(
6144 n_string
: nullable TStartString
6147 _n_string
= n_string
.as(not null)
6148 n_string
.parent
= self
6151 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6153 if _n_string
== old_child
then
6154 n_string
= new_child
.as(TStartString)
6159 redef fun n_string
=(node
)
6166 redef fun visit_all
(v
: Visitor)
6168 v
.enter_visit
(_n_string
)
6171 redef class AMidStringExpr
6172 init init_amidstringexpr
(
6173 n_string
: nullable TMidString
6176 _n_string
= n_string
.as(not null)
6177 n_string
.parent
= self
6180 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6182 if _n_string
== old_child
then
6183 n_string
= new_child
.as(TMidString)
6188 redef fun n_string
=(node
)
6195 redef fun visit_all
(v
: Visitor)
6197 v
.enter_visit
(_n_string
)
6200 redef class AEndStringExpr
6201 init init_aendstringexpr
(
6202 n_string
: nullable TEndString
6205 _n_string
= n_string
.as(not null)
6206 n_string
.parent
= self
6209 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6211 if _n_string
== old_child
then
6212 n_string
= new_child
.as(TEndString)
6217 redef fun n_string
=(node
)
6224 redef fun visit_all
(v
: Visitor)
6226 v
.enter_visit
(_n_string
)
6229 redef class ASuperstringExpr
6230 init init_asuperstringexpr
(
6231 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6232 n_annotations
: nullable AAnnotations
6235 _n_exprs
.unsafe_add_all
(n_exprs
)
6236 _n_annotations
= n_annotations
6237 if n_annotations
!= null then n_annotations
.parent
= self
6240 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6242 if _n_exprs
.replace_child
(old_child
, new_child
) then return
6243 if _n_annotations
== old_child
then
6244 n_annotations
= new_child
.as(nullable AAnnotations)
6249 redef fun n_annotations
=(node
)
6251 _n_annotations
= node
6252 if node
!= null then node
.parent
= self
6256 redef fun visit_all
(v
: Visitor)
6258 _n_exprs
.visit_all
(v
)
6259 v
.enter_visit
(_n_annotations
)
6262 redef class AParExpr
6263 init init_aparexpr
(
6264 n_opar
: nullable TOpar,
6265 n_expr
: nullable AExpr,
6266 n_cpar
: nullable TCpar,
6267 n_annotations
: nullable AAnnotations
6270 _n_opar
= n_opar
.as(not null)
6271 n_opar
.parent
= self
6272 _n_expr
= n_expr
.as(not null)
6273 n_expr
.parent
= self
6274 _n_cpar
= n_cpar
.as(not null)
6275 n_cpar
.parent
= self
6276 _n_annotations
= n_annotations
6277 if n_annotations
!= null then n_annotations
.parent
= self
6280 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6282 if _n_opar
== old_child
then
6283 n_opar
= new_child
.as(TOpar)
6286 if _n_expr
== old_child
then
6287 n_expr
= new_child
.as(AExpr)
6290 if _n_cpar
== old_child
then
6291 n_cpar
= new_child
.as(TCpar)
6294 if _n_annotations
== old_child
then
6295 n_annotations
= new_child
.as(nullable AAnnotations)
6300 redef fun n_opar
=(node
)
6305 redef fun n_expr
=(node
)
6310 redef fun n_cpar
=(node
)
6315 redef fun n_annotations
=(node
)
6317 _n_annotations
= node
6318 if node
!= null then node
.parent
= self
6322 redef fun visit_all
(v
: Visitor)
6324 v
.enter_visit
(_n_opar
)
6325 v
.enter_visit
(_n_expr
)
6326 v
.enter_visit
(_n_cpar
)
6327 v
.enter_visit
(_n_annotations
)
6330 redef class AAsCastExpr
6331 init init_aascastexpr
(
6332 n_expr
: nullable AExpr,
6333 n_kwas
: nullable TKwas,
6334 n_opar
: nullable TOpar,
6335 n_type
: nullable AType,
6336 n_cpar
: nullable TCpar
6339 _n_expr
= n_expr
.as(not null)
6340 n_expr
.parent
= self
6341 _n_kwas
= n_kwas
.as(not null)
6342 n_kwas
.parent
= self
6344 if n_opar
!= null then n_opar
.parent
= self
6345 _n_type
= n_type
.as(not null)
6346 n_type
.parent
= self
6348 if n_cpar
!= null then n_cpar
.parent
= self
6351 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6353 if _n_expr
== old_child
then
6354 n_expr
= new_child
.as(AExpr)
6357 if _n_kwas
== old_child
then
6358 n_kwas
= new_child
.as(TKwas)
6361 if _n_opar
== old_child
then
6362 n_opar
= new_child
.as(nullable TOpar)
6365 if _n_type
== old_child
then
6366 n_type
= new_child
.as(AType)
6369 if _n_cpar
== old_child
then
6370 n_cpar
= new_child
.as(nullable TCpar)
6375 redef fun n_expr
=(node
)
6380 redef fun n_kwas
=(node
)
6385 redef fun n_opar
=(node
)
6388 if node
!= null then node
.parent
= self
6390 redef fun n_type
=(node
)
6395 redef fun n_cpar
=(node
)
6398 if node
!= null then node
.parent
= self
6402 redef fun visit_all
(v
: Visitor)
6404 v
.enter_visit
(_n_expr
)
6405 v
.enter_visit
(_n_kwas
)
6406 v
.enter_visit
(_n_opar
)
6407 v
.enter_visit
(_n_type
)
6408 v
.enter_visit
(_n_cpar
)
6411 redef class AAsNotnullExpr
6412 init init_aasnotnullexpr
(
6413 n_expr
: nullable AExpr,
6414 n_kwas
: nullable TKwas,
6415 n_opar
: nullable TOpar,
6416 n_kwnot
: nullable TKwnot,
6417 n_kwnull
: nullable TKwnull,
6418 n_cpar
: nullable TCpar
6421 _n_expr
= n_expr
.as(not null)
6422 n_expr
.parent
= self
6423 _n_kwas
= n_kwas
.as(not null)
6424 n_kwas
.parent
= self
6426 if n_opar
!= null then n_opar
.parent
= self
6427 _n_kwnot
= n_kwnot
.as(not null)
6428 n_kwnot
.parent
= self
6429 _n_kwnull
= n_kwnull
.as(not null)
6430 n_kwnull
.parent
= self
6432 if n_cpar
!= null then n_cpar
.parent
= self
6435 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6437 if _n_expr
== old_child
then
6438 n_expr
= new_child
.as(AExpr)
6441 if _n_kwas
== old_child
then
6442 n_kwas
= new_child
.as(TKwas)
6445 if _n_opar
== old_child
then
6446 n_opar
= new_child
.as(nullable TOpar)
6449 if _n_kwnot
== old_child
then
6450 n_kwnot
= new_child
.as(TKwnot)
6453 if _n_kwnull
== old_child
then
6454 n_kwnull
= new_child
.as(TKwnull)
6457 if _n_cpar
== old_child
then
6458 n_cpar
= new_child
.as(nullable TCpar)
6463 redef fun n_expr
=(node
)
6468 redef fun n_kwas
=(node
)
6473 redef fun n_opar
=(node
)
6476 if node
!= null then node
.parent
= self
6478 redef fun n_kwnot
=(node
)
6483 redef fun n_kwnull
=(node
)
6488 redef fun n_cpar
=(node
)
6491 if node
!= null then node
.parent
= self
6495 redef fun visit_all
(v
: Visitor)
6497 v
.enter_visit
(_n_expr
)
6498 v
.enter_visit
(_n_kwas
)
6499 v
.enter_visit
(_n_opar
)
6500 v
.enter_visit
(_n_kwnot
)
6501 v
.enter_visit
(_n_kwnull
)
6502 v
.enter_visit
(_n_cpar
)
6505 redef class AIssetAttrExpr
6506 init init_aissetattrexpr
(
6507 n_kwisset
: nullable TKwisset,
6508 n_expr
: nullable AExpr,
6509 n_id
: nullable TAttrid
6512 _n_kwisset
= n_kwisset
.as(not null)
6513 n_kwisset
.parent
= self
6514 _n_expr
= n_expr
.as(not null)
6515 n_expr
.parent
= self
6516 _n_id
= n_id
.as(not null)
6520 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6522 if _n_kwisset
== old_child
then
6523 n_kwisset
= new_child
.as(TKwisset)
6526 if _n_expr
== old_child
then
6527 n_expr
= new_child
.as(AExpr)
6530 if _n_id
== old_child
then
6531 n_id
= new_child
.as(TAttrid)
6536 redef fun n_kwisset
=(node
)
6541 redef fun n_expr
=(node
)
6546 redef fun n_id
=(node
)
6553 redef fun visit_all
(v
: Visitor)
6555 v
.enter_visit
(_n_kwisset
)
6556 v
.enter_visit
(_n_expr
)
6557 v
.enter_visit
(_n_id
)
6560 redef class ADebugTypeExpr
6561 init init_adebugtypeexpr
(
6562 n_kwdebug
: nullable TKwdebug,
6563 n_kwtype
: nullable TKwtype,
6564 n_expr
: nullable AExpr,
6565 n_type
: nullable AType
6568 _n_kwdebug
= n_kwdebug
.as(not null)
6569 n_kwdebug
.parent
= self
6570 _n_kwtype
= n_kwtype
.as(not null)
6571 n_kwtype
.parent
= self
6572 _n_expr
= n_expr
.as(not null)
6573 n_expr
.parent
= self
6574 _n_type
= n_type
.as(not null)
6575 n_type
.parent
= self
6578 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6580 if _n_kwdebug
== old_child
then
6581 n_kwdebug
= new_child
.as(TKwdebug)
6584 if _n_kwtype
== old_child
then
6585 n_kwtype
= new_child
.as(TKwtype)
6588 if _n_expr
== old_child
then
6589 n_expr
= new_child
.as(AExpr)
6592 if _n_type
== old_child
then
6593 n_type
= new_child
.as(AType)
6598 redef fun n_kwdebug
=(node
)
6603 redef fun n_kwtype
=(node
)
6608 redef fun n_expr
=(node
)
6613 redef fun n_type
=(node
)
6620 redef fun visit_all
(v
: Visitor)
6622 v
.enter_visit
(_n_kwdebug
)
6623 v
.enter_visit
(_n_kwtype
)
6624 v
.enter_visit
(_n_expr
)
6625 v
.enter_visit
(_n_type
)
6628 redef class AListExprs
6629 init init_alistexprs
(
6630 n_exprs
: Collection[Object] # Should be Collection[AExpr]
6633 _n_exprs
.unsafe_add_all
(n_exprs
)
6636 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6638 if _n_exprs
.replace_child
(old_child
, new_child
) then return
6643 redef fun visit_all
(v
: Visitor)
6645 _n_exprs
.visit_all
(v
)
6648 redef class AParExprs
6649 init init_aparexprs
(
6650 n_opar
: nullable TOpar,
6651 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6652 n_cpar
: nullable TCpar
6655 _n_opar
= n_opar
.as(not null)
6656 n_opar
.parent
= self
6657 _n_exprs
.unsafe_add_all
(n_exprs
)
6658 _n_cpar
= n_cpar
.as(not null)
6659 n_cpar
.parent
= self
6662 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6664 if _n_opar
== old_child
then
6665 n_opar
= new_child
.as(TOpar)
6668 if _n_exprs
.replace_child
(old_child
, new_child
) then return
6669 if _n_cpar
== old_child
then
6670 n_cpar
= new_child
.as(TCpar)
6675 redef fun n_opar
=(node
)
6680 redef fun n_cpar
=(node
)
6687 redef fun visit_all
(v
: Visitor)
6689 v
.enter_visit
(_n_opar
)
6690 _n_exprs
.visit_all
(v
)
6691 v
.enter_visit
(_n_cpar
)
6694 redef class ABraExprs
6695 init init_abraexprs
(
6696 n_obra
: nullable TObra,
6697 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6698 n_cbra
: nullable TCbra
6701 _n_obra
= n_obra
.as(not null)
6702 n_obra
.parent
= self
6703 _n_exprs
.unsafe_add_all
(n_exprs
)
6704 _n_cbra
= n_cbra
.as(not null)
6705 n_cbra
.parent
= self
6708 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6710 if _n_obra
== old_child
then
6711 n_obra
= new_child
.as(TObra)
6714 if _n_exprs
.replace_child
(old_child
, new_child
) then return
6715 if _n_cbra
== old_child
then
6716 n_cbra
= new_child
.as(TCbra)
6721 redef fun n_obra
=(node
)
6726 redef fun n_cbra
=(node
)
6733 redef fun visit_all
(v
: Visitor)
6735 v
.enter_visit
(_n_obra
)
6736 _n_exprs
.visit_all
(v
)
6737 v
.enter_visit
(_n_cbra
)
6740 redef class APlusAssignOp
6741 init init_aplusassignop
(
6742 n_pluseq
: nullable TPluseq
6745 _n_pluseq
= n_pluseq
.as(not null)
6746 n_pluseq
.parent
= self
6749 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6751 if _n_pluseq
== old_child
then
6752 n_pluseq
= new_child
.as(TPluseq)
6757 redef fun n_pluseq
=(node
)
6764 redef fun visit_all
(v
: Visitor)
6766 v
.enter_visit
(_n_pluseq
)
6769 redef class AMinusAssignOp
6770 init init_aminusassignop
(
6771 n_minuseq
: nullable TMinuseq
6774 _n_minuseq
= n_minuseq
.as(not null)
6775 n_minuseq
.parent
= self
6778 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6780 if _n_minuseq
== old_child
then
6781 n_minuseq
= new_child
.as(TMinuseq)
6786 redef fun n_minuseq
=(node
)
6793 redef fun visit_all
(v
: Visitor)
6795 v
.enter_visit
(_n_minuseq
)
6798 redef class AModuleName
6799 init init_amodulename
(
6800 n_quad
: nullable TQuad,
6801 n_path
: Collection[Object], # Should be Collection[TId]
6806 if n_quad
!= null then n_quad
.parent
= self
6807 _n_path
.unsafe_add_all
(n_path
)
6808 _n_id
= n_id
.as(not null)
6812 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6814 if _n_quad
== old_child
then
6815 n_quad
= new_child
.as(nullable TQuad)
6818 if _n_path
.replace_child
(old_child
, new_child
) then return
6819 if _n_id
== old_child
then
6820 n_id
= new_child
.as(TId)
6825 redef fun n_quad
=(node
)
6828 if node
!= null then node
.parent
= self
6830 redef fun n_id
=(node
)
6837 redef fun visit_all
(v
: Visitor)
6839 v
.enter_visit
(_n_quad
)
6840 _n_path
.visit_all
(v
)
6841 v
.enter_visit
(_n_id
)
6844 redef class AExternCalls
6845 init init_aexterncalls
(
6846 n_kwimport
: nullable TKwimport,
6847 n_extern_calls
: Collection[Object] # Should be Collection[AExternCall]
6850 _n_kwimport
= n_kwimport
.as(not null)
6851 n_kwimport
.parent
= self
6852 _n_extern_calls
.unsafe_add_all
(n_extern_calls
)
6855 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6857 if _n_kwimport
== old_child
then
6858 n_kwimport
= new_child
.as(TKwimport)
6861 if _n_extern_calls
.replace_child
(old_child
, new_child
) then return
6864 redef fun n_kwimport
=(node
)
6871 redef fun visit_all
(v
: Visitor)
6873 v
.enter_visit
(_n_kwimport
)
6874 _n_extern_calls
.visit_all
(v
)
6877 redef class AExternCall
6878 init init_aexterncall
6882 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6888 redef fun visit_all
(v
: Visitor)
6892 redef class ASuperExternCall
6893 init init_asuperexterncall
(
6894 n_kwsuper
: nullable TKwsuper
6897 _n_kwsuper
= n_kwsuper
.as(not null)
6898 n_kwsuper
.parent
= self
6901 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6903 if _n_kwsuper
== old_child
then
6904 n_kwsuper
= new_child
.as(TKwsuper)
6909 redef fun n_kwsuper
=(node
)
6916 redef fun visit_all
(v
: Visitor)
6918 v
.enter_visit
(_n_kwsuper
)
6921 redef class ALocalPropExternCall
6922 init init_alocalpropexterncall
(
6923 n_methid
: nullable AMethid
6926 _n_methid
= n_methid
.as(not null)
6927 n_methid
.parent
= self
6930 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6932 if _n_methid
== old_child
then
6933 n_methid
= new_child
.as(AMethid)
6938 redef fun n_methid
=(node
)
6945 redef fun visit_all
(v
: Visitor)
6947 v
.enter_visit
(_n_methid
)
6950 redef class AFullPropExternCall
6951 init init_afullpropexterncall
(
6952 n_type
: nullable AType,
6953 n_dot
: nullable TDot,
6954 n_methid
: nullable AMethid
6957 _n_type
= n_type
.as(not null)
6958 n_type
.parent
= self
6960 if n_dot
!= null then n_dot
.parent
= self
6961 _n_methid
= n_methid
.as(not null)
6962 n_methid
.parent
= self
6965 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6967 if _n_type
== old_child
then
6968 n_type
= new_child
.as(AType)
6971 if _n_dot
== old_child
then
6972 n_dot
= new_child
.as(nullable TDot)
6975 if _n_methid
== old_child
then
6976 n_methid
= new_child
.as(AMethid)
6981 redef fun n_type
=(node
)
6986 redef fun n_dot
=(node
)
6989 if node
!= null then node
.parent
= self
6991 redef fun n_methid
=(node
)
6998 redef fun visit_all
(v
: Visitor)
7000 v
.enter_visit
(_n_type
)
7001 v
.enter_visit
(_n_dot
)
7002 v
.enter_visit
(_n_methid
)
7005 redef class AInitPropExternCall
7006 init init_ainitpropexterncall
(
7007 n_type
: nullable AType
7010 _n_type
= n_type
.as(not null)
7011 n_type
.parent
= self
7014 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7016 if _n_type
== old_child
then
7017 n_type
= new_child
.as(AType)
7022 redef fun n_type
=(node
)
7029 redef fun visit_all
(v
: Visitor)
7031 v
.enter_visit
(_n_type
)
7034 redef class ACastAsExternCall
7035 init init_acastasexterncall
(
7036 n_from_type
: nullable AType,
7037 n_dot
: nullable TDot,
7038 n_kwas
: nullable TKwas,
7039 n_to_type
: nullable AType
7042 _n_from_type
= n_from_type
.as(not null)
7043 n_from_type
.parent
= self
7045 if n_dot
!= null then n_dot
.parent
= self
7046 _n_kwas
= n_kwas
.as(not null)
7047 n_kwas
.parent
= self
7048 _n_to_type
= n_to_type
.as(not null)
7049 n_to_type
.parent
= self
7052 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7054 if _n_from_type
== old_child
then
7055 n_from_type
= new_child
.as(AType)
7058 if _n_dot
== old_child
then
7059 n_dot
= new_child
.as(nullable TDot)
7062 if _n_kwas
== old_child
then
7063 n_kwas
= new_child
.as(TKwas)
7066 if _n_to_type
== old_child
then
7067 n_to_type
= new_child
.as(AType)
7072 redef fun n_from_type
=(node
)
7077 redef fun n_dot
=(node
)
7080 if node
!= null then node
.parent
= self
7082 redef fun n_kwas
=(node
)
7087 redef fun n_to_type
=(node
)
7094 redef fun visit_all
(v
: Visitor)
7096 v
.enter_visit
(_n_from_type
)
7097 v
.enter_visit
(_n_dot
)
7098 v
.enter_visit
(_n_kwas
)
7099 v
.enter_visit
(_n_to_type
)
7102 redef class AAsNullableExternCall
7103 init init_aasnullableexterncall
(
7104 n_type
: nullable AType,
7105 n_kwas
: nullable TKwas,
7106 n_kwnullable
: nullable TKwnullable
7109 _n_type
= n_type
.as(not null)
7110 n_type
.parent
= self
7111 _n_kwas
= n_kwas
.as(not null)
7112 n_kwas
.parent
= self
7113 _n_kwnullable
= n_kwnullable
.as(not null)
7114 n_kwnullable
.parent
= self
7117 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7119 if _n_type
== old_child
then
7120 n_type
= new_child
.as(AType)
7123 if _n_kwas
== old_child
then
7124 n_kwas
= new_child
.as(TKwas)
7127 if _n_kwnullable
== old_child
then
7128 n_kwnullable
= new_child
.as(TKwnullable)
7133 redef fun n_type
=(node
)
7138 redef fun n_kwas
=(node
)
7143 redef fun n_kwnullable
=(node
)
7145 _n_kwnullable
= node
7150 redef fun visit_all
(v
: Visitor)
7152 v
.enter_visit
(_n_type
)
7153 v
.enter_visit
(_n_kwas
)
7154 v
.enter_visit
(_n_kwnullable
)
7157 redef class AAsNotNullableExternCall
7158 init init_aasnotnullableexterncall
(
7159 n_type
: nullable AType,
7160 n_kwas
: nullable TKwas,
7161 n_kwnot
: nullable TKwnot,
7162 n_kwnullable
: nullable TKwnullable
7165 _n_type
= n_type
.as(not null)
7166 n_type
.parent
= self
7167 _n_kwas
= n_kwas
.as(not null)
7168 n_kwas
.parent
= self
7169 _n_kwnot
= n_kwnot
.as(not null)
7170 n_kwnot
.parent
= self
7171 _n_kwnullable
= n_kwnullable
.as(not null)
7172 n_kwnullable
.parent
= self
7175 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7177 if _n_type
== old_child
then
7178 n_type
= new_child
.as(AType)
7181 if _n_kwas
== old_child
then
7182 n_kwas
= new_child
.as(TKwas)
7185 if _n_kwnot
== old_child
then
7186 n_kwnot
= new_child
.as(TKwnot)
7189 if _n_kwnullable
== old_child
then
7190 n_kwnullable
= new_child
.as(TKwnullable)
7195 redef fun n_type
=(node
)
7200 redef fun n_kwas
=(node
)
7205 redef fun n_kwnot
=(node
)
7210 redef fun n_kwnullable
=(node
)
7212 _n_kwnullable
= node
7217 redef fun visit_all
(v
: Visitor)
7219 v
.enter_visit
(_n_type
)
7220 v
.enter_visit
(_n_kwas
)
7221 v
.enter_visit
(_n_kwnot
)
7222 v
.enter_visit
(_n_kwnullable
)
7225 redef class AInLanguage
7226 init init_ainlanguage
(
7227 n_kwin
: nullable TKwin,
7228 n_string
: nullable TString
7231 _n_kwin
= n_kwin
.as(not null)
7232 n_kwin
.parent
= self
7233 _n_string
= n_string
.as(not null)
7234 n_string
.parent
= self
7237 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7239 if _n_kwin
== old_child
then
7240 n_kwin
= new_child
.as(TKwin)
7243 if _n_string
== old_child
then
7244 n_string
= new_child
.as(TString)
7249 redef fun n_kwin
=(node
)
7254 redef fun n_string
=(node
)
7261 redef fun visit_all
(v
: Visitor)
7263 v
.enter_visit
(_n_kwin
)
7264 v
.enter_visit
(_n_string
)
7267 redef class AExternCodeBlock
7268 init init_aexterncodeblock
(
7269 n_in_language
: nullable AInLanguage,
7270 n_extern_code_segment
: nullable TExternCodeSegment
7273 _n_in_language
= n_in_language
7274 if n_in_language
!= null then n_in_language
.parent
= self
7275 _n_extern_code_segment
= n_extern_code_segment
.as(not null)
7276 n_extern_code_segment
.parent
= self
7279 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7281 if _n_in_language
== old_child
then
7282 n_in_language
= new_child
.as(nullable AInLanguage)
7285 if _n_extern_code_segment
== old_child
then
7286 n_extern_code_segment
= new_child
.as(TExternCodeSegment)
7291 redef fun n_in_language
=(node
)
7293 _n_in_language
= node
7294 if node
!= null then node
.parent
= self
7296 redef fun n_extern_code_segment
=(node
)
7298 _n_extern_code_segment
= node
7303 redef fun visit_all
(v
: Visitor)
7305 v
.enter_visit
(_n_in_language
)
7306 v
.enter_visit
(_n_extern_code_segment
)
7309 redef class AQualified
7310 init init_aqualified
(
7311 n_id
: Collection[Object], # Should be Collection[TId]
7312 n_classid
: nullable TClassid
7315 _n_id
.unsafe_add_all
(n_id
)
7316 _n_classid
= n_classid
7317 if n_classid
!= null then n_classid
.parent
= self
7320 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7322 if _n_id
.replace_child
(old_child
, new_child
) then return
7323 if _n_classid
== old_child
then
7324 n_classid
= new_child
.as(nullable TClassid)
7329 redef fun n_classid
=(node
)
7332 if node
!= null then node
.parent
= self
7336 redef fun visit_all
(v
: Visitor)
7339 v
.enter_visit
(_n_classid
)
7344 n_comment
: Collection[Object] # Should be Collection[TComment]
7347 _n_comment
.unsafe_add_all
(n_comment
)
7350 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7352 if _n_comment
.replace_child
(old_child
, new_child
) then return
7357 redef fun visit_all
(v
: Visitor)
7359 _n_comment
.visit_all
(v
)
7362 redef class AAnnotations
7363 init init_aannotations
(
7365 n_opar
: nullable TOpar,
7366 n_items
: Collection[Object], # Should be Collection[AAnnotation]
7367 n_cpar
: nullable TCpar
7371 if n_at
!= null then n_at
.parent
= self
7373 if n_opar
!= null then n_opar
.parent
= self
7374 _n_items
.unsafe_add_all
(n_items
)
7376 if n_cpar
!= null then n_cpar
.parent
= self
7379 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7381 if _n_at
== old_child
then
7382 n_at
= new_child
.as(nullable TAt)
7385 if _n_opar
== old_child
then
7386 n_opar
= new_child
.as(nullable TOpar)
7389 if _n_items
.replace_child
(old_child
, new_child
) then return
7390 if _n_cpar
== old_child
then
7391 n_cpar
= new_child
.as(nullable TCpar)
7396 redef fun n_at
=(node
)
7399 if node
!= null then node
.parent
= self
7401 redef fun n_opar
=(node
)
7404 if node
!= null then node
.parent
= self
7406 redef fun n_cpar
=(node
)
7409 if node
!= null then node
.parent
= self
7413 redef fun visit_all
(v
: Visitor)
7415 v
.enter_visit
(_n_at
)
7416 v
.enter_visit
(_n_opar
)
7417 _n_items
.visit_all
(v
)
7418 v
.enter_visit
(_n_cpar
)
7421 redef class AAnnotation
7422 init init_aannotation
(
7423 n_atid
: nullable AAtid,
7424 n_opar
: nullable TOpar,
7425 n_args
: Collection[Object], # Should be Collection[AAtArg]
7426 n_cpar
: nullable TCpar,
7427 n_annotations
: nullable AAnnotations
7430 _n_atid
= n_atid
.as(not null)
7431 n_atid
.parent
= self
7433 if n_opar
!= null then n_opar
.parent
= self
7434 _n_args
.unsafe_add_all
(n_args
)
7436 if n_cpar
!= null then n_cpar
.parent
= self
7437 _n_annotations
= n_annotations
7438 if n_annotations
!= null then n_annotations
.parent
= self
7441 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7443 if _n_atid
== old_child
then
7444 n_atid
= new_child
.as(AAtid)
7447 if _n_opar
== old_child
then
7448 n_opar
= new_child
.as(nullable TOpar)
7451 if _n_args
.replace_child
(old_child
, new_child
) then return
7452 if _n_cpar
== old_child
then
7453 n_cpar
= new_child
.as(nullable TCpar)
7456 if _n_annotations
== old_child
then
7457 n_annotations
= new_child
.as(nullable AAnnotations)
7462 redef fun n_atid
=(node
)
7467 redef fun n_opar
=(node
)
7470 if node
!= null then node
.parent
= self
7472 redef fun n_cpar
=(node
)
7475 if node
!= null then node
.parent
= self
7477 redef fun n_annotations
=(node
)
7479 _n_annotations
= node
7480 if node
!= null then node
.parent
= self
7484 redef fun visit_all
(v
: Visitor)
7486 v
.enter_visit
(_n_atid
)
7487 v
.enter_visit
(_n_opar
)
7488 _n_args
.visit_all
(v
)
7489 v
.enter_visit
(_n_cpar
)
7490 v
.enter_visit
(_n_annotations
)
7493 redef class ATypeAtArg
7494 init init_atypeatarg
(
7495 n_type
: nullable AType
7498 _n_type
= n_type
.as(not null)
7499 n_type
.parent
= self
7502 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7504 if _n_type
== old_child
then
7505 n_type
= new_child
.as(AType)
7510 redef fun n_type
=(node
)
7517 redef fun visit_all
(v
: Visitor)
7519 v
.enter_visit
(_n_type
)
7522 redef class AExprAtArg
7523 init init_aexpratarg
(
7524 n_expr
: nullable AExpr
7527 _n_expr
= n_expr
.as(not null)
7528 n_expr
.parent
= self
7531 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7533 if _n_expr
== old_child
then
7534 n_expr
= new_child
.as(AExpr)
7539 redef fun n_expr
=(node
)
7546 redef fun visit_all
(v
: Visitor)
7548 v
.enter_visit
(_n_expr
)
7551 redef class AAtAtArg
7552 init init_aatatarg
(
7553 n_annotations
: nullable AAnnotations
7556 _n_annotations
= n_annotations
.as(not null)
7557 n_annotations
.parent
= self
7560 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7562 if _n_annotations
== old_child
then
7563 n_annotations
= new_child
.as(AAnnotations)
7568 redef fun n_annotations
=(node
)
7570 _n_annotations
= node
7575 redef fun visit_all
(v
: Visitor)
7577 v
.enter_visit
(_n_annotations
)
7585 _n_id
= n_id
.as(not null)
7589 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7591 if _n_id
== old_child
then
7592 n_id
= new_child
.as(TId)
7597 redef fun n_id
=(node
)
7604 redef fun visit_all
(v
: Visitor)
7606 v
.enter_visit
(_n_id
)
7609 redef class AKwexternAtid
7610 init init_akwexternatid
(
7611 n_id
: nullable TKwextern
7614 _n_id
= n_id
.as(not null)
7618 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7620 if _n_id
== old_child
then
7621 n_id
= new_child
.as(TKwextern)
7626 redef fun n_id
=(node
)
7633 redef fun visit_all
(v
: Visitor)
7635 v
.enter_visit
(_n_id
)
7638 redef class AKwinternAtid
7639 init init_akwinternatid
(
7640 n_id
: nullable TKwintern
7643 _n_id
= n_id
.as(not null)
7647 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7649 if _n_id
== old_child
then
7650 n_id
= new_child
.as(TKwintern)
7655 redef fun n_id
=(node
)
7662 redef fun visit_all
(v
: Visitor)
7664 v
.enter_visit
(_n_id
)
7667 redef class AKwreadableAtid
7668 init init_akwreadableatid
(
7669 n_id
: nullable TKwreadable
7672 _n_id
= n_id
.as(not null)
7676 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7678 if _n_id
== old_child
then
7679 n_id
= new_child
.as(TKwreadable)
7684 redef fun n_id
=(node
)
7691 redef fun visit_all
(v
: Visitor)
7693 v
.enter_visit
(_n_id
)
7696 redef class AKwwritableAtid
7697 init init_akwwritableatid
(
7698 n_id
: nullable TKwwritable
7701 _n_id
= n_id
.as(not null)
7705 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7707 if _n_id
== old_child
then
7708 n_id
= new_child
.as(TKwwritable)
7713 redef fun n_id
=(node
)
7720 redef fun visit_all
(v
: Visitor)
7722 v
.enter_visit
(_n_id
)
7725 redef class AKwimportAtid
7726 init init_akwimportatid
(
7727 n_id
: nullable TKwimport
7730 _n_id
= n_id
.as(not null)
7734 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7736 if _n_id
== old_child
then
7737 n_id
= new_child
.as(TKwimport)
7742 redef fun n_id
=(node
)
7749 redef fun visit_all
(v
: Visitor)
7751 v
.enter_visit
(_n_id
)
7756 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7758 if _n_base
== old_child
then
7759 if new_child
== null then
7761 new_child
.parent
= self
7762 assert new_child
isa AModule
7765 old_child
.parent
= null
7770 redef fun visit_all
(v
: Visitor)
7772 if _n_base
!= null then
7773 v
.enter_visit
(_n_base
.as(not null))
7775 v
.enter_visit
(_n_eof
)