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 self.n_imports
.unsafe_add_all
(n_imports
)
20 self.n_extern_code_blocks
.unsafe_add_all
(n_extern_code_blocks
)
21 self.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_kwredef
: nullable TKwredef,
54 n_visibility
: nullable AVisibility,
55 n_kwmodule
: nullable TKwmodule,
56 n_name
: nullable AModuleName,
57 n_annotations
: nullable AAnnotations
61 if n_doc
!= null then n_doc
.parent
= self
62 _n_kwredef
= n_kwredef
63 if n_kwredef
!= null then n_kwredef
.parent
= self
64 _n_visibility
= n_visibility
.as(not null)
65 n_visibility
.parent
= self
66 _n_kwmodule
= n_kwmodule
.as(not null)
67 n_kwmodule
.parent
= self
68 _n_name
= n_name
.as(not null)
70 _n_annotations
= n_annotations
71 if n_annotations
!= null then n_annotations
.parent
= self
74 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
76 if _n_doc
== old_child
then
77 n_doc
= new_child
.as(nullable ADoc)
80 if _n_kwredef
== old_child
then
81 n_kwredef
= new_child
.as(nullable TKwredef)
84 if _n_visibility
== old_child
then
85 n_visibility
= new_child
.as(AVisibility)
88 if _n_kwmodule
== old_child
then
89 n_kwmodule
= new_child
.as(TKwmodule)
92 if _n_name
== old_child
then
93 n_name
= new_child
.as(AModuleName)
96 if _n_annotations
== old_child
then
97 n_annotations
= new_child
.as(nullable AAnnotations)
102 redef fun n_doc
=(node
)
105 if node
!= null then node
.parent
= self
107 redef fun n_kwredef
=(node
)
110 if node
!= null then node
.parent
= self
112 redef fun n_visibility
=(node
)
117 redef fun n_kwmodule
=(node
)
122 redef fun n_name
=(node
)
127 redef fun n_annotations
=(node
)
129 _n_annotations
= node
130 if node
!= null then node
.parent
= self
134 redef fun visit_all
(v
: Visitor)
136 v
.enter_visit
(_n_doc
)
137 v
.enter_visit
(_n_kwredef
)
138 v
.enter_visit
(_n_visibility
)
139 v
.enter_visit
(_n_kwmodule
)
140 v
.enter_visit
(_n_name
)
141 v
.enter_visit
(_n_annotations
)
144 redef class AStdImport
145 init init_astdimport
(
146 n_visibility
: nullable AVisibility,
147 n_kwimport
: nullable TKwimport,
148 n_name
: nullable AModuleName,
149 n_annotations
: nullable AAnnotations
152 _n_visibility
= n_visibility
.as(not null)
153 n_visibility
.parent
= self
154 _n_kwimport
= n_kwimport
.as(not null)
155 n_kwimport
.parent
= self
156 _n_name
= n_name
.as(not null)
158 _n_annotations
= n_annotations
159 if n_annotations
!= null then n_annotations
.parent
= self
162 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
164 if _n_visibility
== old_child
then
165 n_visibility
= new_child
.as(AVisibility)
168 if _n_kwimport
== old_child
then
169 n_kwimport
= new_child
.as(TKwimport)
172 if _n_name
== old_child
then
173 n_name
= new_child
.as(AModuleName)
176 if _n_annotations
== old_child
then
177 n_annotations
= new_child
.as(nullable AAnnotations)
182 redef fun n_visibility
=(node
)
187 redef fun n_kwimport
=(node
)
192 redef fun n_name
=(node
)
197 redef fun n_annotations
=(node
)
199 _n_annotations
= node
200 if node
!= null then node
.parent
= self
204 redef fun visit_all
(v
: Visitor)
206 v
.enter_visit
(_n_visibility
)
207 v
.enter_visit
(_n_kwimport
)
208 v
.enter_visit
(_n_name
)
209 v
.enter_visit
(_n_annotations
)
212 redef class ANoImport
213 init init_anoimport
(
214 n_visibility
: nullable AVisibility,
215 n_kwimport
: nullable TKwimport,
216 n_kwend
: nullable TKwend
219 _n_visibility
= n_visibility
.as(not null)
220 n_visibility
.parent
= self
221 _n_kwimport
= n_kwimport
.as(not null)
222 n_kwimport
.parent
= self
223 _n_kwend
= n_kwend
.as(not null)
224 n_kwend
.parent
= self
227 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
229 if _n_visibility
== old_child
then
230 n_visibility
= new_child
.as(AVisibility)
233 if _n_kwimport
== old_child
then
234 n_kwimport
= new_child
.as(TKwimport)
237 if _n_kwend
== old_child
then
238 n_kwend
= new_child
.as(TKwend)
243 redef fun n_visibility
=(node
)
248 redef fun n_kwimport
=(node
)
253 redef fun n_kwend
=(node
)
260 redef fun visit_all
(v
: Visitor)
262 v
.enter_visit
(_n_visibility
)
263 v
.enter_visit
(_n_kwimport
)
264 v
.enter_visit
(_n_kwend
)
267 redef class APublicVisibility
268 init init_apublicvisibility
(
269 n_kwpublic
: nullable TKwpublic
272 _n_kwpublic
= n_kwpublic
273 if n_kwpublic
!= null then n_kwpublic
.parent
= self
276 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
278 if _n_kwpublic
== old_child
then
279 n_kwpublic
= new_child
.as(nullable TKwpublic)
284 redef fun n_kwpublic
=(node
)
287 if node
!= null then node
.parent
= self
291 redef fun visit_all
(v
: Visitor)
293 v
.enter_visit
(_n_kwpublic
)
296 redef class APrivateVisibility
297 init init_aprivatevisibility
(
298 n_kwprivate
: nullable TKwprivate
301 _n_kwprivate
= n_kwprivate
.as(not null)
302 n_kwprivate
.parent
= self
305 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
307 if _n_kwprivate
== old_child
then
308 n_kwprivate
= new_child
.as(TKwprivate)
313 redef fun n_kwprivate
=(node
)
320 redef fun visit_all
(v
: Visitor)
322 v
.enter_visit
(_n_kwprivate
)
325 redef class AProtectedVisibility
326 init init_aprotectedvisibility
(
327 n_kwprotected
: nullable TKwprotected
330 _n_kwprotected
= n_kwprotected
.as(not null)
331 n_kwprotected
.parent
= self
334 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
336 if _n_kwprotected
== old_child
then
337 n_kwprotected
= new_child
.as(TKwprotected)
342 redef fun n_kwprotected
=(node
)
344 _n_kwprotected
= node
349 redef fun visit_all
(v
: Visitor)
351 v
.enter_visit
(_n_kwprotected
)
354 redef class AIntrudeVisibility
355 init init_aintrudevisibility
(
356 n_kwintrude
: nullable TKwintrude
359 _n_kwintrude
= n_kwintrude
.as(not null)
360 n_kwintrude
.parent
= self
363 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
365 if _n_kwintrude
== old_child
then
366 n_kwintrude
= new_child
.as(TKwintrude)
371 redef fun n_kwintrude
=(node
)
378 redef fun visit_all
(v
: Visitor)
380 v
.enter_visit
(_n_kwintrude
)
383 redef class AStdClassdef
384 init init_astdclassdef
(
385 n_doc
: nullable ADoc,
386 n_kwredef
: nullable TKwredef,
387 n_visibility
: nullable AVisibility,
388 n_classkind
: nullable AClasskind,
389 n_id
: nullable TClassid,
390 n_formaldefs
: Collection[Object], # Should be Collection[AFormaldef]
391 n_annotations
: nullable AAnnotations,
392 n_extern_code_block
: nullable AExternCodeBlock,
393 n_superclasses
: Collection[Object], # Should be Collection[ASuperclass]
394 n_propdefs
: Collection[Object], # Should be Collection[APropdef]
395 n_kwend
: nullable TKwend
399 if n_doc
!= null then n_doc
.parent
= self
400 _n_kwredef
= n_kwredef
401 if n_kwredef
!= null then n_kwredef
.parent
= self
402 _n_visibility
= n_visibility
.as(not null)
403 n_visibility
.parent
= self
404 _n_classkind
= n_classkind
.as(not null)
405 n_classkind
.parent
= self
407 if n_id
!= null then n_id
.parent
= self
408 self.n_formaldefs
.unsafe_add_all
(n_formaldefs
)
409 _n_annotations
= n_annotations
410 if n_annotations
!= null then n_annotations
.parent
= self
411 _n_extern_code_block
= n_extern_code_block
412 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
413 self.n_superclasses
.unsafe_add_all
(n_superclasses
)
414 self.n_propdefs
.unsafe_add_all
(n_propdefs
)
415 _n_kwend
= n_kwend
.as(not null)
416 n_kwend
.parent
= self
419 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
421 if _n_doc
== old_child
then
422 n_doc
= new_child
.as(nullable ADoc)
425 if _n_kwredef
== old_child
then
426 n_kwredef
= new_child
.as(nullable TKwredef)
429 if _n_visibility
== old_child
then
430 n_visibility
= new_child
.as(AVisibility)
433 if _n_classkind
== old_child
then
434 n_classkind
= new_child
.as(AClasskind)
437 if _n_id
== old_child
then
438 n_id
= new_child
.as(nullable TClassid)
441 if n_formaldefs
.replace_child
(old_child
, new_child
) then return
442 if _n_annotations
== old_child
then
443 n_annotations
= new_child
.as(nullable AAnnotations)
446 if _n_extern_code_block
== old_child
then
447 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
450 if n_superclasses
.replace_child
(old_child
, new_child
) then return
451 if n_propdefs
.replace_child
(old_child
, new_child
) then return
452 if _n_kwend
== old_child
then
453 n_kwend
= new_child
.as(TKwend)
458 redef fun n_doc
=(node
)
461 if node
!= null then node
.parent
= self
463 redef fun n_kwredef
=(node
)
466 if node
!= null then node
.parent
= self
468 redef fun n_visibility
=(node
)
473 redef fun n_classkind
=(node
)
478 redef fun n_id
=(node
)
481 if node
!= null then node
.parent
= self
483 redef fun n_annotations
=(node
)
485 _n_annotations
= node
486 if node
!= null then node
.parent
= self
488 redef fun n_extern_code_block
=(node
)
490 _n_extern_code_block
= node
491 if node
!= null then node
.parent
= self
493 redef fun n_kwend
=(node
)
500 redef fun visit_all
(v
: Visitor)
502 v
.enter_visit
(_n_doc
)
503 v
.enter_visit
(_n_kwredef
)
504 v
.enter_visit
(_n_visibility
)
505 v
.enter_visit
(_n_classkind
)
507 n_formaldefs
.visit_all
(v
)
508 v
.enter_visit
(_n_annotations
)
509 v
.enter_visit
(_n_extern_code_block
)
510 n_superclasses
.visit_all
(v
)
511 n_propdefs
.visit_all
(v
)
512 v
.enter_visit
(_n_kwend
)
515 redef class ATopClassdef
516 init init_atopclassdef
(
517 n_propdefs
: Collection[Object] # Should be Collection[APropdef]
520 self.n_propdefs
.unsafe_add_all
(n_propdefs
)
523 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
525 if n_propdefs
.replace_child
(old_child
, new_child
) then return
530 redef fun visit_all
(v
: Visitor)
532 n_propdefs
.visit_all
(v
)
535 redef class AMainClassdef
536 init init_amainclassdef
(
537 n_propdefs
: Collection[Object] # Should be Collection[APropdef]
540 self.n_propdefs
.unsafe_add_all
(n_propdefs
)
543 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
545 if n_propdefs
.replace_child
(old_child
, new_child
) then return
550 redef fun visit_all
(v
: Visitor)
552 n_propdefs
.visit_all
(v
)
555 redef class AConcreteClasskind
556 init init_aconcreteclasskind
(
557 n_kwclass
: nullable TKwclass
560 _n_kwclass
= n_kwclass
.as(not null)
561 n_kwclass
.parent
= self
564 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
566 if _n_kwclass
== old_child
then
567 n_kwclass
= new_child
.as(TKwclass)
572 redef fun n_kwclass
=(node
)
579 redef fun visit_all
(v
: Visitor)
581 v
.enter_visit
(_n_kwclass
)
584 redef class AAbstractClasskind
585 init init_aabstractclasskind
(
586 n_kwabstract
: nullable TKwabstract,
587 n_kwclass
: nullable TKwclass
590 _n_kwabstract
= n_kwabstract
.as(not null)
591 n_kwabstract
.parent
= self
592 _n_kwclass
= n_kwclass
.as(not null)
593 n_kwclass
.parent
= self
596 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
598 if _n_kwabstract
== old_child
then
599 n_kwabstract
= new_child
.as(TKwabstract)
602 if _n_kwclass
== old_child
then
603 n_kwclass
= new_child
.as(TKwclass)
608 redef fun n_kwabstract
=(node
)
613 redef fun n_kwclass
=(node
)
620 redef fun visit_all
(v
: Visitor)
622 v
.enter_visit
(_n_kwabstract
)
623 v
.enter_visit
(_n_kwclass
)
626 redef class AInterfaceClasskind
627 init init_ainterfaceclasskind
(
628 n_kwinterface
: nullable TKwinterface
631 _n_kwinterface
= n_kwinterface
.as(not null)
632 n_kwinterface
.parent
= self
635 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
637 if _n_kwinterface
== old_child
then
638 n_kwinterface
= new_child
.as(TKwinterface)
643 redef fun n_kwinterface
=(node
)
645 _n_kwinterface
= node
650 redef fun visit_all
(v
: Visitor)
652 v
.enter_visit
(_n_kwinterface
)
655 redef class AEnumClasskind
656 init init_aenumclasskind
(
657 n_kwenum
: nullable TKwenum
660 _n_kwenum
= n_kwenum
.as(not null)
661 n_kwenum
.parent
= self
664 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
666 if _n_kwenum
== old_child
then
667 n_kwenum
= new_child
.as(TKwenum)
672 redef fun n_kwenum
=(node
)
679 redef fun visit_all
(v
: Visitor)
681 v
.enter_visit
(_n_kwenum
)
684 redef class AExternClasskind
685 init init_aexternclasskind
(
686 n_kwextern
: nullable TKwextern,
687 n_kwclass
: nullable TKwclass
690 _n_kwextern
= n_kwextern
.as(not null)
691 n_kwextern
.parent
= self
692 _n_kwclass
= n_kwclass
693 if n_kwclass
!= null then n_kwclass
.parent
= self
696 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
698 if _n_kwextern
== old_child
then
699 n_kwextern
= new_child
.as(TKwextern)
702 if _n_kwclass
== old_child
then
703 n_kwclass
= new_child
.as(nullable TKwclass)
708 redef fun n_kwextern
=(node
)
713 redef fun n_kwclass
=(node
)
716 if node
!= null then node
.parent
= self
720 redef fun visit_all
(v
: Visitor)
722 v
.enter_visit
(_n_kwextern
)
723 v
.enter_visit
(_n_kwclass
)
726 redef class AFormaldef
727 init init_aformaldef
(
728 n_id
: nullable TClassid,
729 n_type
: nullable AType,
730 n_annotations
: nullable AAnnotations
733 _n_id
= n_id
.as(not null)
736 if n_type
!= null then n_type
.parent
= self
737 _n_annotations
= n_annotations
738 if n_annotations
!= null then n_annotations
.parent
= self
741 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
743 if _n_id
== old_child
then
744 n_id
= new_child
.as(TClassid)
747 if _n_type
== old_child
then
748 n_type
= new_child
.as(nullable AType)
751 if _n_annotations
== old_child
then
752 n_annotations
= new_child
.as(nullable AAnnotations)
757 redef fun n_id
=(node
)
762 redef fun n_type
=(node
)
765 if node
!= null then node
.parent
= self
767 redef fun n_annotations
=(node
)
769 _n_annotations
= node
770 if node
!= null then node
.parent
= self
774 redef fun visit_all
(v
: Visitor)
777 v
.enter_visit
(_n_type
)
778 v
.enter_visit
(_n_annotations
)
781 redef class ASuperclass
782 init init_asuperclass
(
783 n_kwsuper
: nullable TKwsuper,
784 n_type
: nullable AType,
785 n_annotations
: nullable AAnnotations
788 _n_kwsuper
= n_kwsuper
.as(not null)
789 n_kwsuper
.parent
= self
790 _n_type
= n_type
.as(not null)
792 _n_annotations
= n_annotations
793 if n_annotations
!= null then n_annotations
.parent
= self
796 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
798 if _n_kwsuper
== old_child
then
799 n_kwsuper
= new_child
.as(TKwsuper)
802 if _n_type
== old_child
then
803 n_type
= new_child
.as(AType)
806 if _n_annotations
== old_child
then
807 n_annotations
= new_child
.as(nullable AAnnotations)
812 redef fun n_kwsuper
=(node
)
817 redef fun n_type
=(node
)
822 redef fun n_annotations
=(node
)
824 _n_annotations
= node
825 if node
!= null then node
.parent
= self
829 redef fun visit_all
(v
: Visitor)
831 v
.enter_visit
(_n_kwsuper
)
832 v
.enter_visit
(_n_type
)
833 v
.enter_visit
(_n_annotations
)
836 redef class AAttrPropdef
837 init init_aattrpropdef
(
838 n_doc
: nullable ADoc,
839 n_readable
: nullable AAble,
840 n_writable
: nullable AAble,
841 n_kwredef
: nullable TKwredef,
842 n_visibility
: nullable AVisibility,
843 n_kwvar
: nullable TKwvar,
844 n_id
: nullable TAttrid,
846 n_type
: nullable AType,
847 n_annotations
: nullable AAnnotations,
848 n_expr
: nullable AExpr
852 if n_doc
!= null then n_doc
.parent
= self
853 _n_readable
= n_readable
854 if n_readable
!= null then n_readable
.parent
= self
855 _n_writable
= n_writable
856 if n_writable
!= null then n_writable
.parent
= self
857 _n_kwredef
= n_kwredef
858 if n_kwredef
!= null then n_kwredef
.parent
= self
859 _n_visibility
= n_visibility
.as(not null)
860 n_visibility
.parent
= self
861 _n_kwvar
= n_kwvar
.as(not null)
862 n_kwvar
.parent
= self
864 if n_id
!= null then n_id
.parent
= self
866 if n_id2
!= null then n_id2
.parent
= self
868 if n_type
!= null then n_type
.parent
= self
869 _n_annotations
= n_annotations
870 if n_annotations
!= null then n_annotations
.parent
= self
872 if n_expr
!= null then n_expr
.parent
= self
875 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
877 if _n_doc
== old_child
then
878 n_doc
= new_child
.as(nullable ADoc)
881 if _n_readable
== old_child
then
882 n_readable
= new_child
.as(nullable AAble)
885 if _n_writable
== old_child
then
886 n_writable
= new_child
.as(nullable AAble)
889 if _n_kwredef
== old_child
then
890 n_kwredef
= new_child
.as(nullable TKwredef)
893 if _n_visibility
== old_child
then
894 n_visibility
= new_child
.as(AVisibility)
897 if _n_kwvar
== old_child
then
898 n_kwvar
= new_child
.as(TKwvar)
901 if _n_id
== old_child
then
902 n_id
= new_child
.as(nullable TAttrid)
905 if _n_id2
== old_child
then
906 n_id2
= new_child
.as(nullable TId)
909 if _n_type
== old_child
then
910 n_type
= new_child
.as(nullable AType)
913 if _n_annotations
== old_child
then
914 n_annotations
= new_child
.as(nullable AAnnotations)
917 if _n_expr
== old_child
then
918 n_expr
= new_child
.as(nullable AExpr)
923 redef fun n_doc
=(node
)
926 if node
!= null then node
.parent
= self
928 redef fun n_readable
=(node
)
931 if node
!= null then node
.parent
= self
933 redef fun n_writable
=(node
)
936 if node
!= null then node
.parent
= self
938 redef fun n_kwredef
=(node
)
941 if node
!= null then node
.parent
= self
943 redef fun n_visibility
=(node
)
948 redef fun n_kwvar
=(node
)
953 redef fun n_id
=(node
)
956 if node
!= null then node
.parent
= self
958 redef fun n_id2
=(node
)
961 if node
!= null then node
.parent
= self
963 redef fun n_type
=(node
)
966 if node
!= null then node
.parent
= self
968 redef fun n_annotations
=(node
)
970 _n_annotations
= node
971 if node
!= null then node
.parent
= self
973 redef fun n_expr
=(node
)
976 if node
!= null then node
.parent
= self
980 redef fun visit_all
(v
: Visitor)
982 v
.enter_visit
(_n_doc
)
983 v
.enter_visit
(_n_readable
)
984 v
.enter_visit
(_n_writable
)
985 v
.enter_visit
(_n_kwredef
)
986 v
.enter_visit
(_n_visibility
)
987 v
.enter_visit
(_n_kwvar
)
989 v
.enter_visit
(_n_id2
)
990 v
.enter_visit
(_n_type
)
991 v
.enter_visit
(_n_annotations
)
992 v
.enter_visit
(_n_expr
)
995 redef class AMethPropdef
996 init init_amethpropdef
(
997 n_doc
: nullable ADoc,
998 n_kwredef
: nullable TKwredef,
999 n_visibility
: nullable AVisibility,
1000 n_methid
: nullable AMethid,
1001 n_signature
: nullable ASignature
1005 if n_doc
!= null then n_doc
.parent
= self
1006 _n_kwredef
= n_kwredef
1007 if n_kwredef
!= null then n_kwredef
.parent
= self
1008 _n_visibility
= n_visibility
.as(not null)
1009 n_visibility
.parent
= self
1010 _n_methid
= n_methid
.as(not null)
1011 n_methid
.parent
= self
1012 _n_signature
= n_signature
.as(not null)
1013 n_signature
.parent
= self
1016 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1018 if _n_doc
== old_child
then
1019 n_doc
= new_child
.as(nullable ADoc)
1022 if _n_kwredef
== old_child
then
1023 n_kwredef
= new_child
.as(nullable TKwredef)
1026 if _n_visibility
== old_child
then
1027 n_visibility
= new_child
.as(AVisibility)
1030 if _n_methid
== old_child
then
1031 n_methid
= new_child
.as(AMethid)
1034 if _n_signature
== old_child
then
1035 n_signature
= new_child
.as(ASignature)
1040 redef fun n_doc
=(node
)
1043 if node
!= null then node
.parent
= self
1045 redef fun n_kwredef
=(node
)
1048 if node
!= null then node
.parent
= self
1050 redef fun n_visibility
=(node
)
1052 _n_visibility
= node
1055 redef fun n_methid
=(node
)
1060 redef fun n_signature
=(node
)
1067 redef fun visit_all
(v
: Visitor)
1069 v
.enter_visit
(_n_doc
)
1070 v
.enter_visit
(_n_kwredef
)
1071 v
.enter_visit
(_n_visibility
)
1072 v
.enter_visit
(_n_methid
)
1073 v
.enter_visit
(_n_signature
)
1076 redef class ADeferredMethPropdef
1077 init init_adeferredmethpropdef
(
1078 n_doc
: nullable ADoc,
1079 n_kwredef
: nullable TKwredef,
1080 n_visibility
: nullable AVisibility,
1081 n_kwmeth
: nullable TKwmeth,
1082 n_methid
: nullable AMethid,
1083 n_signature
: nullable ASignature,
1084 n_annotations
: nullable AAnnotations
1088 if n_doc
!= null then n_doc
.parent
= self
1089 _n_kwredef
= n_kwredef
1090 if n_kwredef
!= null then n_kwredef
.parent
= self
1091 _n_visibility
= n_visibility
.as(not null)
1092 n_visibility
.parent
= self
1093 _n_kwmeth
= n_kwmeth
.as(not null)
1094 n_kwmeth
.parent
= self
1095 _n_methid
= n_methid
.as(not null)
1096 n_methid
.parent
= self
1097 _n_signature
= n_signature
.as(not null)
1098 n_signature
.parent
= self
1099 _n_annotations
= n_annotations
1100 if n_annotations
!= null then n_annotations
.parent
= self
1103 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1105 if _n_doc
== old_child
then
1106 n_doc
= new_child
.as(nullable ADoc)
1109 if _n_kwredef
== old_child
then
1110 n_kwredef
= new_child
.as(nullable TKwredef)
1113 if _n_visibility
== old_child
then
1114 n_visibility
= new_child
.as(AVisibility)
1117 if _n_kwmeth
== old_child
then
1118 n_kwmeth
= new_child
.as(TKwmeth)
1121 if _n_methid
== old_child
then
1122 n_methid
= new_child
.as(AMethid)
1125 if _n_signature
== old_child
then
1126 n_signature
= new_child
.as(ASignature)
1129 if _n_annotations
== old_child
then
1130 n_annotations
= new_child
.as(nullable AAnnotations)
1135 redef fun n_doc
=(node
)
1138 if node
!= null then node
.parent
= self
1140 redef fun n_kwredef
=(node
)
1143 if node
!= null then node
.parent
= self
1145 redef fun n_visibility
=(node
)
1147 _n_visibility
= node
1150 redef fun n_kwmeth
=(node
)
1155 redef fun n_methid
=(node
)
1160 redef fun n_signature
=(node
)
1165 redef fun n_annotations
=(node
)
1167 _n_annotations
= node
1168 if node
!= null then node
.parent
= self
1172 redef fun visit_all
(v
: Visitor)
1174 v
.enter_visit
(_n_doc
)
1175 v
.enter_visit
(_n_kwredef
)
1176 v
.enter_visit
(_n_visibility
)
1177 v
.enter_visit
(_n_kwmeth
)
1178 v
.enter_visit
(_n_methid
)
1179 v
.enter_visit
(_n_signature
)
1180 v
.enter_visit
(_n_annotations
)
1183 redef class AInternMethPropdef
1184 init init_ainternmethpropdef
(
1185 n_doc
: nullable ADoc,
1186 n_kwredef
: nullable TKwredef,
1187 n_visibility
: nullable AVisibility,
1188 n_kwmeth
: nullable TKwmeth,
1189 n_methid
: nullable AMethid,
1190 n_signature
: nullable ASignature
1194 if n_doc
!= null then n_doc
.parent
= self
1195 _n_kwredef
= n_kwredef
1196 if n_kwredef
!= null then n_kwredef
.parent
= self
1197 _n_visibility
= n_visibility
.as(not null)
1198 n_visibility
.parent
= self
1199 _n_kwmeth
= n_kwmeth
.as(not null)
1200 n_kwmeth
.parent
= self
1201 _n_methid
= n_methid
.as(not null)
1202 n_methid
.parent
= self
1203 _n_signature
= n_signature
.as(not null)
1204 n_signature
.parent
= self
1207 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1209 if _n_doc
== old_child
then
1210 n_doc
= new_child
.as(nullable ADoc)
1213 if _n_kwredef
== old_child
then
1214 n_kwredef
= new_child
.as(nullable TKwredef)
1217 if _n_visibility
== old_child
then
1218 n_visibility
= new_child
.as(AVisibility)
1221 if _n_kwmeth
== old_child
then
1222 n_kwmeth
= new_child
.as(TKwmeth)
1225 if _n_methid
== old_child
then
1226 n_methid
= new_child
.as(AMethid)
1229 if _n_signature
== old_child
then
1230 n_signature
= new_child
.as(ASignature)
1235 redef fun n_doc
=(node
)
1238 if node
!= null then node
.parent
= self
1240 redef fun n_kwredef
=(node
)
1243 if node
!= null then node
.parent
= self
1245 redef fun n_visibility
=(node
)
1247 _n_visibility
= node
1250 redef fun n_kwmeth
=(node
)
1255 redef fun n_methid
=(node
)
1260 redef fun n_signature
=(node
)
1267 redef fun visit_all
(v
: Visitor)
1269 v
.enter_visit
(_n_doc
)
1270 v
.enter_visit
(_n_kwredef
)
1271 v
.enter_visit
(_n_visibility
)
1272 v
.enter_visit
(_n_kwmeth
)
1273 v
.enter_visit
(_n_methid
)
1274 v
.enter_visit
(_n_signature
)
1277 redef class AInternNewPropdef
1278 init init_ainternnewpropdef
(
1279 n_doc
: nullable ADoc,
1280 n_kwredef
: nullable TKwredef,
1281 n_visibility
: nullable AVisibility,
1282 n_kwnew
: nullable TKwnew,
1283 n_methid
: nullable AMethid,
1284 n_signature
: nullable ASignature
1288 if n_doc
!= null then n_doc
.parent
= self
1289 _n_kwredef
= n_kwredef
1290 if n_kwredef
!= null then n_kwredef
.parent
= self
1291 _n_visibility
= n_visibility
.as(not null)
1292 n_visibility
.parent
= self
1293 _n_kwnew
= n_kwnew
.as(not null)
1294 n_kwnew
.parent
= self
1295 _n_methid
= n_methid
1296 if n_methid
!= null then n_methid
.parent
= self
1297 _n_signature
= n_signature
.as(not null)
1298 n_signature
.parent
= self
1301 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1303 if _n_doc
== old_child
then
1304 n_doc
= new_child
.as(nullable ADoc)
1307 if _n_kwredef
== old_child
then
1308 n_kwredef
= new_child
.as(nullable TKwredef)
1311 if _n_visibility
== old_child
then
1312 n_visibility
= new_child
.as(AVisibility)
1315 if _n_kwnew
== old_child
then
1316 n_kwnew
= new_child
.as(TKwnew)
1319 if _n_methid
== old_child
then
1320 n_methid
= new_child
.as(nullable AMethid)
1323 if _n_signature
== old_child
then
1324 n_signature
= new_child
.as(ASignature)
1329 redef fun n_doc
=(node
)
1332 if node
!= null then node
.parent
= self
1334 redef fun n_kwredef
=(node
)
1337 if node
!= null then node
.parent
= self
1339 redef fun n_visibility
=(node
)
1341 _n_visibility
= node
1344 redef fun n_kwnew
=(node
)
1349 redef fun n_methid
=(node
)
1352 if node
!= null then node
.parent
= self
1354 redef fun n_signature
=(node
)
1361 redef fun visit_all
(v
: Visitor)
1363 v
.enter_visit
(_n_doc
)
1364 v
.enter_visit
(_n_kwredef
)
1365 v
.enter_visit
(_n_visibility
)
1366 v
.enter_visit
(_n_kwnew
)
1367 v
.enter_visit
(_n_methid
)
1368 v
.enter_visit
(_n_signature
)
1371 redef class AExternMethPropdef
1372 init init_aexternmethpropdef
(
1373 n_doc
: nullable ADoc,
1374 n_kwredef
: nullable TKwredef,
1375 n_visibility
: nullable AVisibility,
1376 n_kwmeth
: nullable TKwmeth,
1377 n_methid
: nullable AMethid,
1378 n_signature
: nullable ASignature,
1379 n_annotations
: nullable AAnnotations,
1380 n_extern
: nullable TString,
1381 n_extern_calls
: nullable AExternCalls,
1382 n_extern_code_block
: nullable AExternCodeBlock
1386 if n_doc
!= null then n_doc
.parent
= self
1387 _n_kwredef
= n_kwredef
1388 if n_kwredef
!= null then n_kwredef
.parent
= self
1389 _n_visibility
= n_visibility
.as(not null)
1390 n_visibility
.parent
= self
1391 _n_kwmeth
= n_kwmeth
.as(not null)
1392 n_kwmeth
.parent
= self
1393 _n_methid
= n_methid
.as(not null)
1394 n_methid
.parent
= self
1395 _n_signature
= n_signature
.as(not null)
1396 n_signature
.parent
= self
1397 _n_annotations
= n_annotations
1398 if n_annotations
!= null then n_annotations
.parent
= self
1399 _n_extern
= n_extern
1400 if n_extern
!= null then n_extern
.parent
= self
1401 _n_extern_calls
= n_extern_calls
1402 if n_extern_calls
!= null then n_extern_calls
.parent
= self
1403 _n_extern_code_block
= n_extern_code_block
1404 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
1407 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1409 if _n_doc
== old_child
then
1410 n_doc
= new_child
.as(nullable ADoc)
1413 if _n_kwredef
== old_child
then
1414 n_kwredef
= new_child
.as(nullable TKwredef)
1417 if _n_visibility
== old_child
then
1418 n_visibility
= new_child
.as(AVisibility)
1421 if _n_kwmeth
== old_child
then
1422 n_kwmeth
= new_child
.as(TKwmeth)
1425 if _n_methid
== old_child
then
1426 n_methid
= new_child
.as(AMethid)
1429 if _n_signature
== old_child
then
1430 n_signature
= new_child
.as(ASignature)
1433 if _n_annotations
== old_child
then
1434 n_annotations
= new_child
.as(nullable AAnnotations)
1437 if _n_extern
== old_child
then
1438 n_extern
= new_child
.as(nullable TString)
1441 if _n_extern_calls
== old_child
then
1442 n_extern_calls
= new_child
.as(nullable AExternCalls)
1445 if _n_extern_code_block
== old_child
then
1446 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
1451 redef fun n_doc
=(node
)
1454 if node
!= null then node
.parent
= self
1456 redef fun n_kwredef
=(node
)
1459 if node
!= null then node
.parent
= self
1461 redef fun n_visibility
=(node
)
1463 _n_visibility
= node
1466 redef fun n_kwmeth
=(node
)
1471 redef fun n_methid
=(node
)
1476 redef fun n_signature
=(node
)
1481 redef fun n_annotations
=(node
)
1483 _n_annotations
= node
1484 if node
!= null then node
.parent
= self
1486 redef fun n_extern
=(node
)
1489 if node
!= null then node
.parent
= self
1491 redef fun n_extern_calls
=(node
)
1493 _n_extern_calls
= node
1494 if node
!= null then node
.parent
= self
1496 redef fun n_extern_code_block
=(node
)
1498 _n_extern_code_block
= node
1499 if node
!= null then node
.parent
= self
1503 redef fun visit_all
(v
: Visitor)
1505 v
.enter_visit
(_n_doc
)
1506 v
.enter_visit
(_n_kwredef
)
1507 v
.enter_visit
(_n_visibility
)
1508 v
.enter_visit
(_n_kwmeth
)
1509 v
.enter_visit
(_n_methid
)
1510 v
.enter_visit
(_n_signature
)
1511 v
.enter_visit
(_n_annotations
)
1512 v
.enter_visit
(_n_extern
)
1513 v
.enter_visit
(_n_extern_calls
)
1514 v
.enter_visit
(_n_extern_code_block
)
1517 redef class AConcreteMethPropdef
1518 init init_aconcretemethpropdef
(
1519 n_doc
: nullable ADoc,
1520 n_kwredef
: nullable TKwredef,
1521 n_visibility
: nullable AVisibility,
1522 n_kwmeth
: nullable TKwmeth,
1523 n_methid
: nullable AMethid,
1524 n_signature
: nullable ASignature,
1525 n_annotations
: nullable AAnnotations,
1526 n_block
: nullable AExpr
1530 if n_doc
!= null then n_doc
.parent
= self
1531 _n_kwredef
= n_kwredef
1532 if n_kwredef
!= null then n_kwredef
.parent
= self
1533 _n_visibility
= n_visibility
.as(not null)
1534 n_visibility
.parent
= self
1535 _n_kwmeth
= n_kwmeth
.as(not null)
1536 n_kwmeth
.parent
= self
1537 _n_methid
= n_methid
.as(not null)
1538 n_methid
.parent
= self
1539 _n_signature
= n_signature
.as(not null)
1540 n_signature
.parent
= self
1541 _n_annotations
= n_annotations
1542 if n_annotations
!= null then n_annotations
.parent
= self
1544 if n_block
!= null then n_block
.parent
= self
1547 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1549 if _n_doc
== old_child
then
1550 n_doc
= new_child
.as(nullable ADoc)
1553 if _n_kwredef
== old_child
then
1554 n_kwredef
= new_child
.as(nullable TKwredef)
1557 if _n_visibility
== old_child
then
1558 n_visibility
= new_child
.as(AVisibility)
1561 if _n_kwmeth
== old_child
then
1562 n_kwmeth
= new_child
.as(TKwmeth)
1565 if _n_methid
== old_child
then
1566 n_methid
= new_child
.as(AMethid)
1569 if _n_signature
== old_child
then
1570 n_signature
= new_child
.as(ASignature)
1573 if _n_annotations
== old_child
then
1574 n_annotations
= new_child
.as(nullable AAnnotations)
1577 if _n_block
== old_child
then
1578 n_block
= new_child
.as(nullable AExpr)
1583 redef fun n_doc
=(node
)
1586 if node
!= null then node
.parent
= self
1588 redef fun n_kwredef
=(node
)
1591 if node
!= null then node
.parent
= self
1593 redef fun n_visibility
=(node
)
1595 _n_visibility
= node
1598 redef fun n_kwmeth
=(node
)
1603 redef fun n_methid
=(node
)
1608 redef fun n_signature
=(node
)
1613 redef fun n_annotations
=(node
)
1615 _n_annotations
= node
1616 if node
!= null then node
.parent
= self
1618 redef fun n_block
=(node
)
1621 if node
!= null then node
.parent
= self
1625 redef fun visit_all
(v
: Visitor)
1627 v
.enter_visit
(_n_doc
)
1628 v
.enter_visit
(_n_kwredef
)
1629 v
.enter_visit
(_n_visibility
)
1630 v
.enter_visit
(_n_kwmeth
)
1631 v
.enter_visit
(_n_methid
)
1632 v
.enter_visit
(_n_signature
)
1633 v
.enter_visit
(_n_annotations
)
1634 v
.enter_visit
(_n_block
)
1637 redef class AConcreteInitPropdef
1638 init init_aconcreteinitpropdef
(
1639 n_doc
: nullable ADoc,
1640 n_kwredef
: nullable TKwredef,
1641 n_visibility
: nullable AVisibility,
1642 n_kwinit
: nullable TKwinit,
1643 n_methid
: nullable AMethid,
1644 n_signature
: nullable ASignature,
1645 n_annotations
: nullable AAnnotations,
1646 n_block
: nullable AExpr
1650 if n_doc
!= null then n_doc
.parent
= self
1651 _n_kwredef
= n_kwredef
1652 if n_kwredef
!= null then n_kwredef
.parent
= self
1653 _n_visibility
= n_visibility
.as(not null)
1654 n_visibility
.parent
= self
1655 _n_kwinit
= n_kwinit
.as(not null)
1656 n_kwinit
.parent
= self
1657 _n_methid
= n_methid
1658 if n_methid
!= null then n_methid
.parent
= self
1659 _n_signature
= n_signature
.as(not null)
1660 n_signature
.parent
= self
1661 _n_annotations
= n_annotations
1662 if n_annotations
!= null then n_annotations
.parent
= self
1664 if n_block
!= null then n_block
.parent
= self
1667 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1669 if _n_doc
== old_child
then
1670 n_doc
= new_child
.as(nullable ADoc)
1673 if _n_kwredef
== old_child
then
1674 n_kwredef
= new_child
.as(nullable TKwredef)
1677 if _n_visibility
== old_child
then
1678 n_visibility
= new_child
.as(AVisibility)
1681 if _n_kwinit
== old_child
then
1682 n_kwinit
= new_child
.as(TKwinit)
1685 if _n_methid
== old_child
then
1686 n_methid
= new_child
.as(nullable AMethid)
1689 if _n_signature
== old_child
then
1690 n_signature
= new_child
.as(ASignature)
1693 if _n_annotations
== old_child
then
1694 n_annotations
= new_child
.as(nullable AAnnotations)
1697 if _n_block
== old_child
then
1698 n_block
= new_child
.as(nullable AExpr)
1703 redef fun n_doc
=(node
)
1706 if node
!= null then node
.parent
= self
1708 redef fun n_kwredef
=(node
)
1711 if node
!= null then node
.parent
= self
1713 redef fun n_visibility
=(node
)
1715 _n_visibility
= node
1718 redef fun n_kwinit
=(node
)
1723 redef fun n_methid
=(node
)
1726 if node
!= null then node
.parent
= self
1728 redef fun n_signature
=(node
)
1733 redef fun n_annotations
=(node
)
1735 _n_annotations
= node
1736 if node
!= null then node
.parent
= self
1738 redef fun n_block
=(node
)
1741 if node
!= null then node
.parent
= self
1745 redef fun visit_all
(v
: Visitor)
1747 v
.enter_visit
(_n_doc
)
1748 v
.enter_visit
(_n_kwredef
)
1749 v
.enter_visit
(_n_visibility
)
1750 v
.enter_visit
(_n_kwinit
)
1751 v
.enter_visit
(_n_methid
)
1752 v
.enter_visit
(_n_signature
)
1753 v
.enter_visit
(_n_annotations
)
1754 v
.enter_visit
(_n_block
)
1757 redef class AExternInitPropdef
1758 init init_aexterninitpropdef
(
1759 n_doc
: nullable ADoc,
1760 n_kwredef
: nullable TKwredef,
1761 n_visibility
: nullable AVisibility,
1762 n_kwnew
: nullable TKwnew,
1763 n_methid
: nullable AMethid,
1764 n_signature
: nullable ASignature,
1765 n_annotations
: nullable AAnnotations,
1766 n_extern
: nullable TString,
1767 n_extern_calls
: nullable AExternCalls,
1768 n_extern_code_block
: nullable AExternCodeBlock
1772 if n_doc
!= null then n_doc
.parent
= self
1773 _n_kwredef
= n_kwredef
1774 if n_kwredef
!= null then n_kwredef
.parent
= self
1775 _n_visibility
= n_visibility
.as(not null)
1776 n_visibility
.parent
= self
1777 _n_kwnew
= n_kwnew
.as(not null)
1778 n_kwnew
.parent
= self
1779 _n_methid
= n_methid
1780 if n_methid
!= null then n_methid
.parent
= self
1781 _n_signature
= n_signature
.as(not null)
1782 n_signature
.parent
= self
1783 _n_annotations
= n_annotations
1784 if n_annotations
!= null then n_annotations
.parent
= self
1785 _n_extern
= n_extern
1786 if n_extern
!= null then n_extern
.parent
= self
1787 _n_extern_calls
= n_extern_calls
1788 if n_extern_calls
!= null then n_extern_calls
.parent
= self
1789 _n_extern_code_block
= n_extern_code_block
1790 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
1793 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1795 if _n_doc
== old_child
then
1796 n_doc
= new_child
.as(nullable ADoc)
1799 if _n_kwredef
== old_child
then
1800 n_kwredef
= new_child
.as(nullable TKwredef)
1803 if _n_visibility
== old_child
then
1804 n_visibility
= new_child
.as(AVisibility)
1807 if _n_kwnew
== old_child
then
1808 n_kwnew
= new_child
.as(TKwnew)
1811 if _n_methid
== old_child
then
1812 n_methid
= new_child
.as(nullable AMethid)
1815 if _n_signature
== old_child
then
1816 n_signature
= new_child
.as(ASignature)
1819 if _n_annotations
== old_child
then
1820 n_annotations
= new_child
.as(nullable AAnnotations)
1823 if _n_extern
== old_child
then
1824 n_extern
= new_child
.as(nullable TString)
1827 if _n_extern_calls
== old_child
then
1828 n_extern_calls
= new_child
.as(nullable AExternCalls)
1831 if _n_extern_code_block
== old_child
then
1832 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
1837 redef fun n_doc
=(node
)
1840 if node
!= null then node
.parent
= self
1842 redef fun n_kwredef
=(node
)
1845 if node
!= null then node
.parent
= self
1847 redef fun n_visibility
=(node
)
1849 _n_visibility
= node
1852 redef fun n_kwnew
=(node
)
1857 redef fun n_methid
=(node
)
1860 if node
!= null then node
.parent
= self
1862 redef fun n_signature
=(node
)
1867 redef fun n_annotations
=(node
)
1869 _n_annotations
= node
1870 if node
!= null then node
.parent
= self
1872 redef fun n_extern
=(node
)
1875 if node
!= null then node
.parent
= self
1877 redef fun n_extern_calls
=(node
)
1879 _n_extern_calls
= node
1880 if node
!= null then node
.parent
= self
1882 redef fun n_extern_code_block
=(node
)
1884 _n_extern_code_block
= node
1885 if node
!= null then node
.parent
= self
1889 redef fun visit_all
(v
: Visitor)
1891 v
.enter_visit
(_n_doc
)
1892 v
.enter_visit
(_n_kwredef
)
1893 v
.enter_visit
(_n_visibility
)
1894 v
.enter_visit
(_n_kwnew
)
1895 v
.enter_visit
(_n_methid
)
1896 v
.enter_visit
(_n_signature
)
1897 v
.enter_visit
(_n_annotations
)
1898 v
.enter_visit
(_n_extern
)
1899 v
.enter_visit
(_n_extern_calls
)
1900 v
.enter_visit
(_n_extern_code_block
)
1903 redef class AMainMethPropdef
1904 init init_amainmethpropdef
(
1905 n_kwredef
: nullable TKwredef,
1906 n_block
: nullable AExpr
1909 _n_kwredef
= n_kwredef
1910 if n_kwredef
!= null then n_kwredef
.parent
= self
1912 if n_block
!= null then n_block
.parent
= self
1915 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1917 if _n_kwredef
== old_child
then
1918 n_kwredef
= new_child
.as(nullable TKwredef)
1921 if _n_block
== old_child
then
1922 n_block
= new_child
.as(nullable AExpr)
1927 redef fun n_kwredef
=(node
)
1930 if node
!= null then node
.parent
= self
1932 redef fun n_block
=(node
)
1935 if node
!= null then node
.parent
= self
1939 redef fun visit_all
(v
: Visitor)
1941 v
.enter_visit
(_n_kwredef
)
1942 v
.enter_visit
(_n_block
)
1945 redef class ATypePropdef
1946 init init_atypepropdef
(
1947 n_doc
: nullable ADoc,
1948 n_kwredef
: nullable TKwredef,
1949 n_visibility
: nullable AVisibility,
1950 n_kwtype
: nullable TKwtype,
1951 n_id
: nullable TClassid,
1952 n_type
: nullable AType,
1953 n_annotations
: nullable AAnnotations
1957 if n_doc
!= null then n_doc
.parent
= self
1958 _n_kwredef
= n_kwredef
1959 if n_kwredef
!= null then n_kwredef
.parent
= self
1960 _n_visibility
= n_visibility
.as(not null)
1961 n_visibility
.parent
= self
1962 _n_kwtype
= n_kwtype
.as(not null)
1963 n_kwtype
.parent
= self
1964 _n_id
= n_id
.as(not null)
1966 _n_type
= n_type
.as(not null)
1967 n_type
.parent
= self
1968 _n_annotations
= n_annotations
1969 if n_annotations
!= null then n_annotations
.parent
= self
1972 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1974 if _n_doc
== old_child
then
1975 n_doc
= new_child
.as(nullable ADoc)
1978 if _n_kwredef
== old_child
then
1979 n_kwredef
= new_child
.as(nullable TKwredef)
1982 if _n_visibility
== old_child
then
1983 n_visibility
= new_child
.as(AVisibility)
1986 if _n_kwtype
== old_child
then
1987 n_kwtype
= new_child
.as(TKwtype)
1990 if _n_id
== old_child
then
1991 n_id
= new_child
.as(TClassid)
1994 if _n_type
== old_child
then
1995 n_type
= new_child
.as(AType)
1998 if _n_annotations
== old_child
then
1999 n_annotations
= new_child
.as(nullable AAnnotations)
2004 redef fun n_doc
=(node
)
2007 if node
!= null then node
.parent
= self
2009 redef fun n_kwredef
=(node
)
2012 if node
!= null then node
.parent
= self
2014 redef fun n_visibility
=(node
)
2016 _n_visibility
= node
2019 redef fun n_kwtype
=(node
)
2024 redef fun n_id
=(node
)
2029 redef fun n_type
=(node
)
2034 redef fun n_annotations
=(node
)
2036 _n_annotations
= node
2037 if node
!= null then node
.parent
= self
2041 redef fun visit_all
(v
: Visitor)
2043 v
.enter_visit
(_n_doc
)
2044 v
.enter_visit
(_n_kwredef
)
2045 v
.enter_visit
(_n_visibility
)
2046 v
.enter_visit
(_n_kwtype
)
2047 v
.enter_visit
(_n_id
)
2048 v
.enter_visit
(_n_type
)
2049 v
.enter_visit
(_n_annotations
)
2052 redef class AReadAble
2053 init init_areadable
(
2054 n_kwredef
: nullable TKwredef,
2055 n_kwreadable
: nullable TKwreadable
2058 _n_kwredef
= n_kwredef
2059 if n_kwredef
!= null then n_kwredef
.parent
= self
2060 _n_kwreadable
= n_kwreadable
.as(not null)
2061 n_kwreadable
.parent
= self
2064 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2066 if _n_kwredef
== old_child
then
2067 n_kwredef
= new_child
.as(nullable TKwredef)
2070 if _n_kwreadable
== old_child
then
2071 n_kwreadable
= new_child
.as(TKwreadable)
2076 redef fun n_kwredef
=(node
)
2079 if node
!= null then node
.parent
= self
2081 redef fun n_kwreadable
=(node
)
2083 _n_kwreadable
= node
2088 redef fun visit_all
(v
: Visitor)
2090 v
.enter_visit
(_n_kwredef
)
2091 v
.enter_visit
(_n_kwreadable
)
2094 redef class AWriteAble
2095 init init_awriteable
(
2096 n_kwredef
: nullable TKwredef,
2097 n_visibility
: nullable AVisibility,
2098 n_kwwritable
: nullable TKwwritable
2101 _n_kwredef
= n_kwredef
2102 if n_kwredef
!= null then n_kwredef
.parent
= self
2103 _n_visibility
= n_visibility
2104 if n_visibility
!= null then n_visibility
.parent
= self
2105 _n_kwwritable
= n_kwwritable
.as(not null)
2106 n_kwwritable
.parent
= self
2109 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2111 if _n_kwredef
== old_child
then
2112 n_kwredef
= new_child
.as(nullable TKwredef)
2115 if _n_visibility
== old_child
then
2116 n_visibility
= new_child
.as(nullable AVisibility)
2119 if _n_kwwritable
== old_child
then
2120 n_kwwritable
= new_child
.as(TKwwritable)
2125 redef fun n_kwredef
=(node
)
2128 if node
!= null then node
.parent
= self
2130 redef fun n_visibility
=(node
)
2132 _n_visibility
= node
2133 if node
!= null then node
.parent
= self
2135 redef fun n_kwwritable
=(node
)
2137 _n_kwwritable
= node
2142 redef fun visit_all
(v
: Visitor)
2144 v
.enter_visit
(_n_kwredef
)
2145 v
.enter_visit
(_n_visibility
)
2146 v
.enter_visit
(_n_kwwritable
)
2149 redef class AIdMethid
2150 init init_aidmethid
(
2154 _n_id
= n_id
.as(not null)
2158 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2160 if _n_id
== old_child
then
2161 n_id
= new_child
.as(TId)
2166 redef fun n_id
=(node
)
2173 redef fun visit_all
(v
: Visitor)
2175 v
.enter_visit
(_n_id
)
2178 redef class APlusMethid
2179 init init_aplusmethid
(
2180 n_plus
: nullable TPlus
2183 _n_plus
= n_plus
.as(not null)
2184 n_plus
.parent
= self
2187 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2189 if _n_plus
== old_child
then
2190 n_plus
= new_child
.as(TPlus)
2195 redef fun n_plus
=(node
)
2202 redef fun visit_all
(v
: Visitor)
2204 v
.enter_visit
(_n_plus
)
2207 redef class AMinusMethid
2208 init init_aminusmethid
(
2209 n_minus
: nullable TMinus
2212 _n_minus
= n_minus
.as(not null)
2213 n_minus
.parent
= self
2216 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2218 if _n_minus
== old_child
then
2219 n_minus
= new_child
.as(TMinus)
2224 redef fun n_minus
=(node
)
2231 redef fun visit_all
(v
: Visitor)
2233 v
.enter_visit
(_n_minus
)
2236 redef class AStarMethid
2237 init init_astarmethid
(
2238 n_star
: nullable TStar
2241 _n_star
= n_star
.as(not null)
2242 n_star
.parent
= self
2245 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2247 if _n_star
== old_child
then
2248 n_star
= new_child
.as(TStar)
2253 redef fun n_star
=(node
)
2260 redef fun visit_all
(v
: Visitor)
2262 v
.enter_visit
(_n_star
)
2265 redef class ASlashMethid
2266 init init_aslashmethid
(
2267 n_slash
: nullable TSlash
2270 _n_slash
= n_slash
.as(not null)
2271 n_slash
.parent
= self
2274 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2276 if _n_slash
== old_child
then
2277 n_slash
= new_child
.as(TSlash)
2282 redef fun n_slash
=(node
)
2289 redef fun visit_all
(v
: Visitor)
2291 v
.enter_visit
(_n_slash
)
2294 redef class APercentMethid
2295 init init_apercentmethid
(
2296 n_percent
: nullable TPercent
2299 _n_percent
= n_percent
.as(not null)
2300 n_percent
.parent
= self
2303 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2305 if _n_percent
== old_child
then
2306 n_percent
= new_child
.as(TPercent)
2311 redef fun n_percent
=(node
)
2318 redef fun visit_all
(v
: Visitor)
2320 v
.enter_visit
(_n_percent
)
2323 redef class AEqMethid
2324 init init_aeqmethid
(
2328 _n_eq
= n_eq
.as(not null)
2332 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2334 if _n_eq
== old_child
then
2335 n_eq
= new_child
.as(TEq)
2340 redef fun n_eq
=(node
)
2347 redef fun visit_all
(v
: Visitor)
2349 v
.enter_visit
(_n_eq
)
2352 redef class ANeMethid
2353 init init_anemethid
(
2357 _n_ne
= n_ne
.as(not null)
2361 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2363 if _n_ne
== old_child
then
2364 n_ne
= new_child
.as(TNe)
2369 redef fun n_ne
=(node
)
2376 redef fun visit_all
(v
: Visitor)
2378 v
.enter_visit
(_n_ne
)
2381 redef class ALeMethid
2382 init init_alemethid
(
2386 _n_le
= n_le
.as(not null)
2390 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2392 if _n_le
== old_child
then
2393 n_le
= new_child
.as(TLe)
2398 redef fun n_le
=(node
)
2405 redef fun visit_all
(v
: Visitor)
2407 v
.enter_visit
(_n_le
)
2410 redef class AGeMethid
2411 init init_agemethid
(
2415 _n_ge
= n_ge
.as(not null)
2419 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2421 if _n_ge
== old_child
then
2422 n_ge
= new_child
.as(TGe)
2427 redef fun n_ge
=(node
)
2434 redef fun visit_all
(v
: Visitor)
2436 v
.enter_visit
(_n_ge
)
2439 redef class ALtMethid
2440 init init_altmethid
(
2444 _n_lt
= n_lt
.as(not null)
2448 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2450 if _n_lt
== old_child
then
2451 n_lt
= new_child
.as(TLt)
2456 redef fun n_lt
=(node
)
2463 redef fun visit_all
(v
: Visitor)
2465 v
.enter_visit
(_n_lt
)
2468 redef class AGtMethid
2469 init init_agtmethid
(
2473 _n_gt
= n_gt
.as(not null)
2477 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2479 if _n_gt
== old_child
then
2480 n_gt
= new_child
.as(TGt)
2485 redef fun n_gt
=(node
)
2492 redef fun visit_all
(v
: Visitor)
2494 v
.enter_visit
(_n_gt
)
2497 redef class ALlMethid
2498 init init_allmethid
(
2502 _n_ll
= n_ll
.as(not null)
2506 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2508 if _n_ll
== old_child
then
2509 n_ll
= new_child
.as(TLl)
2514 redef fun n_ll
=(node
)
2521 redef fun visit_all
(v
: Visitor)
2523 v
.enter_visit
(_n_ll
)
2526 redef class AGgMethid
2527 init init_aggmethid
(
2531 _n_gg
= n_gg
.as(not null)
2535 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2537 if _n_gg
== old_child
then
2538 n_gg
= new_child
.as(TGg)
2543 redef fun n_gg
=(node
)
2550 redef fun visit_all
(v
: Visitor)
2552 v
.enter_visit
(_n_gg
)
2555 redef class ABraMethid
2556 init init_abramethid
(
2557 n_obra
: nullable TObra,
2558 n_cbra
: nullable TCbra
2561 _n_obra
= n_obra
.as(not null)
2562 n_obra
.parent
= self
2563 _n_cbra
= n_cbra
.as(not null)
2564 n_cbra
.parent
= self
2567 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2569 if _n_obra
== old_child
then
2570 n_obra
= new_child
.as(TObra)
2573 if _n_cbra
== old_child
then
2574 n_cbra
= new_child
.as(TCbra)
2579 redef fun n_obra
=(node
)
2584 redef fun n_cbra
=(node
)
2591 redef fun visit_all
(v
: Visitor)
2593 v
.enter_visit
(_n_obra
)
2594 v
.enter_visit
(_n_cbra
)
2597 redef class AStarshipMethid
2598 init init_astarshipmethid
(
2599 n_starship
: nullable TStarship
2602 _n_starship
= n_starship
.as(not null)
2603 n_starship
.parent
= self
2606 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2608 if _n_starship
== old_child
then
2609 n_starship
= new_child
.as(TStarship)
2614 redef fun n_starship
=(node
)
2621 redef fun visit_all
(v
: Visitor)
2623 v
.enter_visit
(_n_starship
)
2626 redef class AAssignMethid
2627 init init_aassignmethid
(
2629 n_assign
: nullable TAssign
2632 _n_id
= n_id
.as(not null)
2634 _n_assign
= n_assign
.as(not null)
2635 n_assign
.parent
= self
2638 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2640 if _n_id
== old_child
then
2641 n_id
= new_child
.as(TId)
2644 if _n_assign
== old_child
then
2645 n_assign
= new_child
.as(TAssign)
2650 redef fun n_id
=(node
)
2655 redef fun n_assign
=(node
)
2662 redef fun visit_all
(v
: Visitor)
2664 v
.enter_visit
(_n_id
)
2665 v
.enter_visit
(_n_assign
)
2668 redef class ABraassignMethid
2669 init init_abraassignmethid
(
2670 n_obra
: nullable TObra,
2671 n_cbra
: nullable TCbra,
2672 n_assign
: nullable TAssign
2675 _n_obra
= n_obra
.as(not null)
2676 n_obra
.parent
= self
2677 _n_cbra
= n_cbra
.as(not null)
2678 n_cbra
.parent
= self
2679 _n_assign
= n_assign
.as(not null)
2680 n_assign
.parent
= self
2683 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2685 if _n_obra
== old_child
then
2686 n_obra
= new_child
.as(TObra)
2689 if _n_cbra
== old_child
then
2690 n_cbra
= new_child
.as(TCbra)
2693 if _n_assign
== old_child
then
2694 n_assign
= new_child
.as(TAssign)
2699 redef fun n_obra
=(node
)
2704 redef fun n_cbra
=(node
)
2709 redef fun n_assign
=(node
)
2716 redef fun visit_all
(v
: Visitor)
2718 v
.enter_visit
(_n_obra
)
2719 v
.enter_visit
(_n_cbra
)
2720 v
.enter_visit
(_n_assign
)
2723 redef class ASignature
2724 init init_asignature
(
2725 n_opar
: nullable TOpar,
2726 n_params
: Collection[Object], # Should be Collection[AParam]
2727 n_cpar
: nullable TCpar,
2728 n_type
: nullable AType
2732 if n_opar
!= null then n_opar
.parent
= self
2733 self.n_params
.unsafe_add_all
(n_params
)
2735 if n_cpar
!= null then n_cpar
.parent
= self
2737 if n_type
!= null then n_type
.parent
= self
2740 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2742 if _n_opar
== old_child
then
2743 n_opar
= new_child
.as(nullable TOpar)
2746 if n_params
.replace_child
(old_child
, new_child
) then return
2747 if _n_cpar
== old_child
then
2748 n_cpar
= new_child
.as(nullable TCpar)
2751 if _n_type
== old_child
then
2752 n_type
= new_child
.as(nullable AType)
2757 redef fun n_opar
=(node
)
2760 if node
!= null then node
.parent
= self
2762 redef fun n_cpar
=(node
)
2765 if node
!= null then node
.parent
= self
2767 redef fun n_type
=(node
)
2770 if node
!= null then node
.parent
= self
2774 redef fun visit_all
(v
: Visitor)
2776 v
.enter_visit
(_n_opar
)
2777 n_params
.visit_all
(v
)
2778 v
.enter_visit
(_n_cpar
)
2779 v
.enter_visit
(_n_type
)
2785 n_type
: nullable AType,
2786 n_dotdotdot
: nullable TDotdotdot,
2787 n_annotations
: nullable AAnnotations
2790 _n_id
= n_id
.as(not null)
2793 if n_type
!= null then n_type
.parent
= self
2794 _n_dotdotdot
= n_dotdotdot
2795 if n_dotdotdot
!= null then n_dotdotdot
.parent
= self
2796 _n_annotations
= n_annotations
2797 if n_annotations
!= null then n_annotations
.parent
= self
2800 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2802 if _n_id
== old_child
then
2803 n_id
= new_child
.as(TId)
2806 if _n_type
== old_child
then
2807 n_type
= new_child
.as(nullable AType)
2810 if _n_dotdotdot
== old_child
then
2811 n_dotdotdot
= new_child
.as(nullable TDotdotdot)
2814 if _n_annotations
== old_child
then
2815 n_annotations
= new_child
.as(nullable AAnnotations)
2820 redef fun n_id
=(node
)
2825 redef fun n_type
=(node
)
2828 if node
!= null then node
.parent
= self
2830 redef fun n_dotdotdot
=(node
)
2833 if node
!= null then node
.parent
= self
2835 redef fun n_annotations
=(node
)
2837 _n_annotations
= node
2838 if node
!= null then node
.parent
= self
2842 redef fun visit_all
(v
: Visitor)
2844 v
.enter_visit
(_n_id
)
2845 v
.enter_visit
(_n_type
)
2846 v
.enter_visit
(_n_dotdotdot
)
2847 v
.enter_visit
(_n_annotations
)
2852 n_kwnullable
: nullable TKwnullable,
2853 n_id
: nullable TClassid,
2854 n_types
: Collection[Object], # Should be Collection[AType]
2855 n_annotations
: nullable AAnnotations
2858 _n_kwnullable
= n_kwnullable
2859 if n_kwnullable
!= null then n_kwnullable
.parent
= self
2860 _n_id
= n_id
.as(not null)
2862 self.n_types
.unsafe_add_all
(n_types
)
2863 _n_annotations
= n_annotations
2864 if n_annotations
!= null then n_annotations
.parent
= self
2867 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2869 if _n_kwnullable
== old_child
then
2870 n_kwnullable
= new_child
.as(nullable TKwnullable)
2873 if _n_id
== old_child
then
2874 n_id
= new_child
.as(TClassid)
2877 if n_types
.replace_child
(old_child
, new_child
) then return
2878 if _n_annotations
== old_child
then
2879 n_annotations
= new_child
.as(nullable AAnnotations)
2884 redef fun n_kwnullable
=(node
)
2886 _n_kwnullable
= node
2887 if node
!= null then node
.parent
= self
2889 redef fun n_id
=(node
)
2894 redef fun n_annotations
=(node
)
2896 _n_annotations
= node
2897 if node
!= null then node
.parent
= self
2901 redef fun visit_all
(v
: Visitor)
2903 v
.enter_visit
(_n_kwnullable
)
2904 v
.enter_visit
(_n_id
)
2905 n_types
.visit_all
(v
)
2906 v
.enter_visit
(_n_annotations
)
2911 n_kwlabel
: nullable TKwlabel,
2915 _n_kwlabel
= n_kwlabel
.as(not null)
2916 n_kwlabel
.parent
= self
2918 if n_id
!= null then n_id
.parent
= self
2921 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2923 if _n_kwlabel
== old_child
then
2924 n_kwlabel
= new_child
.as(TKwlabel)
2927 if _n_id
== old_child
then
2928 n_id
= new_child
.as(nullable TId)
2933 redef fun n_kwlabel
=(node
)
2938 redef fun n_id
=(node
)
2941 if node
!= null then node
.parent
= self
2945 redef fun visit_all
(v
: Visitor)
2947 v
.enter_visit
(_n_kwlabel
)
2948 v
.enter_visit
(_n_id
)
2951 redef class ABlockExpr
2952 init init_ablockexpr
(
2953 n_expr
: Collection[Object], # Should be Collection[AExpr]
2954 n_kwend
: nullable TKwend
2957 self.n_expr
.unsafe_add_all
(n_expr
)
2959 if n_kwend
!= null then n_kwend
.parent
= self
2962 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2964 if n_expr
.replace_child
(old_child
, new_child
) then return
2965 if _n_kwend
== old_child
then
2966 n_kwend
= new_child
.as(nullable TKwend)
2971 redef fun n_kwend
=(node
)
2974 if node
!= null then node
.parent
= self
2978 redef fun visit_all
(v
: Visitor)
2981 v
.enter_visit
(_n_kwend
)
2984 redef class AVardeclExpr
2985 init init_avardeclexpr
(
2986 n_kwvar
: nullable TKwvar,
2988 n_type
: nullable AType,
2989 n_assign
: nullable TAssign,
2990 n_expr
: nullable AExpr,
2991 n_annotations
: nullable AAnnotations
2994 _n_kwvar
= n_kwvar
.as(not null)
2995 n_kwvar
.parent
= self
2996 _n_id
= n_id
.as(not null)
2999 if n_type
!= null then n_type
.parent
= self
3000 _n_assign
= n_assign
3001 if n_assign
!= null then n_assign
.parent
= self
3003 if n_expr
!= null then n_expr
.parent
= self
3004 _n_annotations
= n_annotations
3005 if n_annotations
!= null then n_annotations
.parent
= self
3008 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3010 if _n_kwvar
== old_child
then
3011 n_kwvar
= new_child
.as(TKwvar)
3014 if _n_id
== old_child
then
3015 n_id
= new_child
.as(TId)
3018 if _n_type
== old_child
then
3019 n_type
= new_child
.as(nullable AType)
3022 if _n_assign
== old_child
then
3023 n_assign
= new_child
.as(nullable TAssign)
3026 if _n_expr
== old_child
then
3027 n_expr
= new_child
.as(nullable AExpr)
3030 if _n_annotations
== old_child
then
3031 n_annotations
= new_child
.as(nullable AAnnotations)
3036 redef fun n_kwvar
=(node
)
3041 redef fun n_id
=(node
)
3046 redef fun n_type
=(node
)
3049 if node
!= null then node
.parent
= self
3051 redef fun n_assign
=(node
)
3054 if node
!= null then node
.parent
= self
3056 redef fun n_expr
=(node
)
3059 if node
!= null then node
.parent
= self
3061 redef fun n_annotations
=(node
)
3063 _n_annotations
= node
3064 if node
!= null then node
.parent
= self
3068 redef fun visit_all
(v
: Visitor)
3070 v
.enter_visit
(_n_kwvar
)
3071 v
.enter_visit
(_n_id
)
3072 v
.enter_visit
(_n_type
)
3073 v
.enter_visit
(_n_assign
)
3074 v
.enter_visit
(_n_expr
)
3075 v
.enter_visit
(_n_annotations
)
3078 redef class AReturnExpr
3079 init init_areturnexpr
(
3080 n_kwreturn
: nullable TKwreturn,
3081 n_expr
: nullable AExpr
3084 _n_kwreturn
= n_kwreturn
3085 if n_kwreturn
!= null then n_kwreturn
.parent
= self
3087 if n_expr
!= null then n_expr
.parent
= self
3090 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3092 if _n_kwreturn
== old_child
then
3093 n_kwreturn
= new_child
.as(nullable TKwreturn)
3096 if _n_expr
== old_child
then
3097 n_expr
= new_child
.as(nullable AExpr)
3102 redef fun n_kwreturn
=(node
)
3105 if node
!= null then node
.parent
= self
3107 redef fun n_expr
=(node
)
3110 if node
!= null then node
.parent
= self
3114 redef fun visit_all
(v
: Visitor)
3116 v
.enter_visit
(_n_kwreturn
)
3117 v
.enter_visit
(_n_expr
)
3120 redef class ABreakExpr
3121 init init_abreakexpr
(
3122 n_kwbreak
: nullable TKwbreak,
3123 n_label
: nullable ALabel
3126 _n_kwbreak
= n_kwbreak
.as(not null)
3127 n_kwbreak
.parent
= self
3129 if n_label
!= null then n_label
.parent
= self
3132 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3134 if _n_kwbreak
== old_child
then
3135 n_kwbreak
= new_child
.as(TKwbreak)
3138 if _n_label
== old_child
then
3139 n_label
= new_child
.as(nullable ALabel)
3144 redef fun n_kwbreak
=(node
)
3149 redef fun n_label
=(node
)
3152 if node
!= null then node
.parent
= self
3156 redef fun visit_all
(v
: Visitor)
3158 v
.enter_visit
(_n_kwbreak
)
3159 v
.enter_visit
(_n_label
)
3162 redef class AAbortExpr
3163 init init_aabortexpr
(
3164 n_kwabort
: nullable TKwabort
3167 _n_kwabort
= n_kwabort
.as(not null)
3168 n_kwabort
.parent
= self
3171 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3173 if _n_kwabort
== old_child
then
3174 n_kwabort
= new_child
.as(TKwabort)
3179 redef fun n_kwabort
=(node
)
3186 redef fun visit_all
(v
: Visitor)
3188 v
.enter_visit
(_n_kwabort
)
3191 redef class AContinueExpr
3192 init init_acontinueexpr
(
3193 n_kwcontinue
: nullable TKwcontinue,
3194 n_label
: nullable ALabel
3197 _n_kwcontinue
= n_kwcontinue
3198 if n_kwcontinue
!= null then n_kwcontinue
.parent
= self
3200 if n_label
!= null then n_label
.parent
= self
3203 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3205 if _n_kwcontinue
== old_child
then
3206 n_kwcontinue
= new_child
.as(nullable TKwcontinue)
3209 if _n_label
== old_child
then
3210 n_label
= new_child
.as(nullable ALabel)
3215 redef fun n_kwcontinue
=(node
)
3217 _n_kwcontinue
= node
3218 if node
!= null then node
.parent
= self
3220 redef fun n_label
=(node
)
3223 if node
!= null then node
.parent
= self
3227 redef fun visit_all
(v
: Visitor)
3229 v
.enter_visit
(_n_kwcontinue
)
3230 v
.enter_visit
(_n_label
)
3235 n_kwdo
: nullable TKwdo,
3236 n_block
: nullable AExpr,
3237 n_label
: nullable ALabel
3240 _n_kwdo
= n_kwdo
.as(not null)
3241 n_kwdo
.parent
= self
3243 if n_block
!= null then n_block
.parent
= self
3245 if n_label
!= null then n_label
.parent
= self
3248 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3250 if _n_kwdo
== old_child
then
3251 n_kwdo
= new_child
.as(TKwdo)
3254 if _n_block
== old_child
then
3255 n_block
= new_child
.as(nullable AExpr)
3258 if _n_label
== old_child
then
3259 n_label
= new_child
.as(nullable ALabel)
3264 redef fun n_kwdo
=(node
)
3269 redef fun n_block
=(node
)
3272 if node
!= null then node
.parent
= self
3274 redef fun n_label
=(node
)
3277 if node
!= null then node
.parent
= self
3281 redef fun visit_all
(v
: Visitor)
3283 v
.enter_visit
(_n_kwdo
)
3284 v
.enter_visit
(_n_block
)
3285 v
.enter_visit
(_n_label
)
3290 n_kwif
: nullable TKwif,
3291 n_expr
: nullable AExpr,
3292 n_then
: nullable AExpr,
3293 n_else
: nullable AExpr
3296 _n_kwif
= n_kwif
.as(not null)
3297 n_kwif
.parent
= self
3298 _n_expr
= n_expr
.as(not null)
3299 n_expr
.parent
= self
3301 if n_then
!= null then n_then
.parent
= self
3303 if n_else
!= null then n_else
.parent
= self
3306 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3308 if _n_kwif
== old_child
then
3309 n_kwif
= new_child
.as(TKwif)
3312 if _n_expr
== old_child
then
3313 n_expr
= new_child
.as(AExpr)
3316 if _n_then
== old_child
then
3317 n_then
= new_child
.as(nullable AExpr)
3320 if _n_else
== old_child
then
3321 n_else
= new_child
.as(nullable AExpr)
3326 redef fun n_kwif
=(node
)
3331 redef fun n_expr
=(node
)
3336 redef fun n_then
=(node
)
3339 if node
!= null then node
.parent
= self
3341 redef fun n_else
=(node
)
3344 if node
!= null then node
.parent
= self
3348 redef fun visit_all
(v
: Visitor)
3350 v
.enter_visit
(_n_kwif
)
3351 v
.enter_visit
(_n_expr
)
3352 v
.enter_visit
(_n_then
)
3353 v
.enter_visit
(_n_else
)
3356 redef class AIfexprExpr
3357 init init_aifexprexpr
(
3358 n_kwif
: nullable TKwif,
3359 n_expr
: nullable AExpr,
3360 n_kwthen
: nullable TKwthen,
3361 n_then
: nullable AExpr,
3362 n_kwelse
: nullable TKwelse,
3363 n_else
: nullable AExpr
3366 _n_kwif
= n_kwif
.as(not null)
3367 n_kwif
.parent
= self
3368 _n_expr
= n_expr
.as(not null)
3369 n_expr
.parent
= self
3370 _n_kwthen
= n_kwthen
.as(not null)
3371 n_kwthen
.parent
= self
3372 _n_then
= n_then
.as(not null)
3373 n_then
.parent
= self
3374 _n_kwelse
= n_kwelse
.as(not null)
3375 n_kwelse
.parent
= self
3376 _n_else
= n_else
.as(not null)
3377 n_else
.parent
= self
3380 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3382 if _n_kwif
== old_child
then
3383 n_kwif
= new_child
.as(TKwif)
3386 if _n_expr
== old_child
then
3387 n_expr
= new_child
.as(AExpr)
3390 if _n_kwthen
== old_child
then
3391 n_kwthen
= new_child
.as(TKwthen)
3394 if _n_then
== old_child
then
3395 n_then
= new_child
.as(AExpr)
3398 if _n_kwelse
== old_child
then
3399 n_kwelse
= new_child
.as(TKwelse)
3402 if _n_else
== old_child
then
3403 n_else
= new_child
.as(AExpr)
3408 redef fun n_kwif
=(node
)
3413 redef fun n_expr
=(node
)
3418 redef fun n_kwthen
=(node
)
3423 redef fun n_then
=(node
)
3428 redef fun n_kwelse
=(node
)
3433 redef fun n_else
=(node
)
3440 redef fun visit_all
(v
: Visitor)
3442 v
.enter_visit
(_n_kwif
)
3443 v
.enter_visit
(_n_expr
)
3444 v
.enter_visit
(_n_kwthen
)
3445 v
.enter_visit
(_n_then
)
3446 v
.enter_visit
(_n_kwelse
)
3447 v
.enter_visit
(_n_else
)
3450 redef class AWhileExpr
3451 init init_awhileexpr
(
3452 n_kwwhile
: nullable TKwwhile,
3453 n_expr
: nullable AExpr,
3454 n_kwdo
: nullable TKwdo,
3455 n_block
: nullable AExpr,
3456 n_label
: nullable ALabel
3459 _n_kwwhile
= n_kwwhile
.as(not null)
3460 n_kwwhile
.parent
= self
3461 _n_expr
= n_expr
.as(not null)
3462 n_expr
.parent
= self
3463 _n_kwdo
= n_kwdo
.as(not null)
3464 n_kwdo
.parent
= self
3466 if n_block
!= null then n_block
.parent
= self
3468 if n_label
!= null then n_label
.parent
= self
3471 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3473 if _n_kwwhile
== old_child
then
3474 n_kwwhile
= new_child
.as(TKwwhile)
3477 if _n_expr
== old_child
then
3478 n_expr
= new_child
.as(AExpr)
3481 if _n_kwdo
== old_child
then
3482 n_kwdo
= new_child
.as(TKwdo)
3485 if _n_block
== old_child
then
3486 n_block
= new_child
.as(nullable AExpr)
3489 if _n_label
== old_child
then
3490 n_label
= new_child
.as(nullable ALabel)
3495 redef fun n_kwwhile
=(node
)
3500 redef fun n_expr
=(node
)
3505 redef fun n_kwdo
=(node
)
3510 redef fun n_block
=(node
)
3513 if node
!= null then node
.parent
= self
3515 redef fun n_label
=(node
)
3518 if node
!= null then node
.parent
= self
3522 redef fun visit_all
(v
: Visitor)
3524 v
.enter_visit
(_n_kwwhile
)
3525 v
.enter_visit
(_n_expr
)
3526 v
.enter_visit
(_n_kwdo
)
3527 v
.enter_visit
(_n_block
)
3528 v
.enter_visit
(_n_label
)
3531 redef class ALoopExpr
3532 init init_aloopexpr
(
3533 n_kwloop
: nullable TKwloop,
3534 n_block
: nullable AExpr,
3535 n_label
: nullable ALabel
3538 _n_kwloop
= n_kwloop
.as(not null)
3539 n_kwloop
.parent
= self
3541 if n_block
!= null then n_block
.parent
= self
3543 if n_label
!= null then n_label
.parent
= self
3546 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3548 if _n_kwloop
== old_child
then
3549 n_kwloop
= new_child
.as(TKwloop)
3552 if _n_block
== old_child
then
3553 n_block
= new_child
.as(nullable AExpr)
3556 if _n_label
== old_child
then
3557 n_label
= new_child
.as(nullable ALabel)
3562 redef fun n_kwloop
=(node
)
3567 redef fun n_block
=(node
)
3570 if node
!= null then node
.parent
= self
3572 redef fun n_label
=(node
)
3575 if node
!= null then node
.parent
= self
3579 redef fun visit_all
(v
: Visitor)
3581 v
.enter_visit
(_n_kwloop
)
3582 v
.enter_visit
(_n_block
)
3583 v
.enter_visit
(_n_label
)
3586 redef class AForExpr
3587 init init_aforexpr
(
3588 n_kwfor
: nullable TKwfor,
3589 n_ids
: Collection[Object], # Should be Collection[TId]
3590 n_expr
: nullable AExpr,
3591 n_kwdo
: nullable TKwdo,
3592 n_block
: nullable AExpr,
3593 n_label
: nullable ALabel
3596 _n_kwfor
= n_kwfor
.as(not null)
3597 n_kwfor
.parent
= self
3598 self.n_ids
.unsafe_add_all
(n_ids
)
3599 _n_expr
= n_expr
.as(not null)
3600 n_expr
.parent
= self
3601 _n_kwdo
= n_kwdo
.as(not null)
3602 n_kwdo
.parent
= self
3604 if n_block
!= null then n_block
.parent
= self
3606 if n_label
!= null then n_label
.parent
= self
3609 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3611 if _n_kwfor
== old_child
then
3612 n_kwfor
= new_child
.as(TKwfor)
3615 if n_ids
.replace_child
(old_child
, new_child
) then return
3616 if _n_expr
== old_child
then
3617 n_expr
= new_child
.as(AExpr)
3620 if _n_kwdo
== old_child
then
3621 n_kwdo
= new_child
.as(TKwdo)
3624 if _n_block
== old_child
then
3625 n_block
= new_child
.as(nullable AExpr)
3628 if _n_label
== old_child
then
3629 n_label
= new_child
.as(nullable ALabel)
3634 redef fun n_kwfor
=(node
)
3639 redef fun n_expr
=(node
)
3644 redef fun n_kwdo
=(node
)
3649 redef fun n_block
=(node
)
3652 if node
!= null then node
.parent
= self
3654 redef fun n_label
=(node
)
3657 if node
!= null then node
.parent
= self
3661 redef fun visit_all
(v
: Visitor)
3663 v
.enter_visit
(_n_kwfor
)
3665 v
.enter_visit
(_n_expr
)
3666 v
.enter_visit
(_n_kwdo
)
3667 v
.enter_visit
(_n_block
)
3668 v
.enter_visit
(_n_label
)
3671 redef class AAssertExpr
3672 init init_aassertexpr
(
3673 n_kwassert
: nullable TKwassert,
3675 n_expr
: nullable AExpr,
3676 n_else
: nullable AExpr
3679 _n_kwassert
= n_kwassert
.as(not null)
3680 n_kwassert
.parent
= self
3682 if n_id
!= null then n_id
.parent
= self
3683 _n_expr
= n_expr
.as(not null)
3684 n_expr
.parent
= self
3686 if n_else
!= null then n_else
.parent
= self
3689 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3691 if _n_kwassert
== old_child
then
3692 n_kwassert
= new_child
.as(TKwassert)
3695 if _n_id
== old_child
then
3696 n_id
= new_child
.as(nullable TId)
3699 if _n_expr
== old_child
then
3700 n_expr
= new_child
.as(AExpr)
3703 if _n_else
== old_child
then
3704 n_else
= new_child
.as(nullable AExpr)
3709 redef fun n_kwassert
=(node
)
3714 redef fun n_id
=(node
)
3717 if node
!= null then node
.parent
= self
3719 redef fun n_expr
=(node
)
3724 redef fun n_else
=(node
)
3727 if node
!= null then node
.parent
= self
3731 redef fun visit_all
(v
: Visitor)
3733 v
.enter_visit
(_n_kwassert
)
3734 v
.enter_visit
(_n_id
)
3735 v
.enter_visit
(_n_expr
)
3736 v
.enter_visit
(_n_else
)
3739 redef class AOnceExpr
3740 init init_aonceexpr
(
3741 n_kwonce
: nullable TKwonce,
3742 n_expr
: nullable AExpr
3745 _n_kwonce
= n_kwonce
.as(not null)
3746 n_kwonce
.parent
= self
3747 _n_expr
= n_expr
.as(not null)
3748 n_expr
.parent
= self
3751 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3753 if _n_kwonce
== old_child
then
3754 n_kwonce
= new_child
.as(TKwonce)
3757 if _n_expr
== old_child
then
3758 n_expr
= new_child
.as(AExpr)
3763 redef fun n_kwonce
=(node
)
3768 redef fun n_expr
=(node
)
3775 redef fun visit_all
(v
: Visitor)
3777 v
.enter_visit
(_n_kwonce
)
3778 v
.enter_visit
(_n_expr
)
3781 redef class ASendExpr
3782 init init_asendexpr
(
3783 n_expr
: nullable AExpr
3786 _n_expr
= n_expr
.as(not null)
3787 n_expr
.parent
= self
3790 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3792 if _n_expr
== old_child
then
3793 n_expr
= new_child
.as(AExpr)
3798 redef fun n_expr
=(node
)
3805 redef fun visit_all
(v
: Visitor)
3807 v
.enter_visit
(_n_expr
)
3810 redef class ABinopExpr
3811 init init_abinopexpr
(
3812 n_expr
: nullable AExpr,
3813 n_expr2
: nullable AExpr
3816 _n_expr
= n_expr
.as(not null)
3817 n_expr
.parent
= self
3818 _n_expr2
= n_expr2
.as(not null)
3819 n_expr2
.parent
= self
3822 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3824 if _n_expr
== old_child
then
3825 n_expr
= new_child
.as(AExpr)
3828 if _n_expr2
== old_child
then
3829 n_expr2
= new_child
.as(AExpr)
3834 redef fun n_expr
=(node
)
3839 redef fun n_expr2
=(node
)
3846 redef fun visit_all
(v
: Visitor)
3848 v
.enter_visit
(_n_expr
)
3849 v
.enter_visit
(_n_expr2
)
3854 n_expr
: nullable AExpr,
3855 n_expr2
: nullable AExpr
3858 _n_expr
= n_expr
.as(not null)
3859 n_expr
.parent
= self
3860 _n_expr2
= n_expr2
.as(not null)
3861 n_expr2
.parent
= self
3864 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3866 if _n_expr
== old_child
then
3867 n_expr
= new_child
.as(AExpr)
3870 if _n_expr2
== old_child
then
3871 n_expr2
= new_child
.as(AExpr)
3876 redef fun n_expr
=(node
)
3881 redef fun n_expr2
=(node
)
3888 redef fun visit_all
(v
: Visitor)
3890 v
.enter_visit
(_n_expr
)
3891 v
.enter_visit
(_n_expr2
)
3894 redef class AAndExpr
3895 init init_aandexpr
(
3896 n_expr
: nullable AExpr,
3897 n_expr2
: nullable AExpr
3900 _n_expr
= n_expr
.as(not null)
3901 n_expr
.parent
= self
3902 _n_expr2
= n_expr2
.as(not null)
3903 n_expr2
.parent
= self
3906 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3908 if _n_expr
== old_child
then
3909 n_expr
= new_child
.as(AExpr)
3912 if _n_expr2
== old_child
then
3913 n_expr2
= new_child
.as(AExpr)
3918 redef fun n_expr
=(node
)
3923 redef fun n_expr2
=(node
)
3930 redef fun visit_all
(v
: Visitor)
3932 v
.enter_visit
(_n_expr
)
3933 v
.enter_visit
(_n_expr2
)
3936 redef class AOrElseExpr
3937 init init_aorelseexpr
(
3938 n_expr
: nullable AExpr,
3939 n_expr2
: nullable AExpr
3942 _n_expr
= n_expr
.as(not null)
3943 n_expr
.parent
= self
3944 _n_expr2
= n_expr2
.as(not null)
3945 n_expr2
.parent
= self
3948 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3950 if _n_expr
== old_child
then
3951 n_expr
= new_child
.as(AExpr)
3954 if _n_expr2
== old_child
then
3955 n_expr2
= new_child
.as(AExpr)
3960 redef fun n_expr
=(node
)
3965 redef fun n_expr2
=(node
)
3972 redef fun visit_all
(v
: Visitor)
3974 v
.enter_visit
(_n_expr
)
3975 v
.enter_visit
(_n_expr2
)
3978 redef class AImpliesExpr
3979 init init_aimpliesexpr
(
3980 n_expr
: nullable AExpr,
3981 n_expr2
: nullable AExpr
3984 _n_expr
= n_expr
.as(not null)
3985 n_expr
.parent
= self
3986 _n_expr2
= n_expr2
.as(not null)
3987 n_expr2
.parent
= self
3990 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3992 if _n_expr
== old_child
then
3993 n_expr
= new_child
.as(AExpr)
3996 if _n_expr2
== old_child
then
3997 n_expr2
= new_child
.as(AExpr)
4002 redef fun n_expr
=(node
)
4007 redef fun n_expr2
=(node
)
4014 redef fun visit_all
(v
: Visitor)
4016 v
.enter_visit
(_n_expr
)
4017 v
.enter_visit
(_n_expr2
)
4020 redef class ANotExpr
4021 init init_anotexpr
(
4022 n_kwnot
: nullable TKwnot,
4023 n_expr
: nullable AExpr
4026 _n_kwnot
= n_kwnot
.as(not null)
4027 n_kwnot
.parent
= self
4028 _n_expr
= n_expr
.as(not null)
4029 n_expr
.parent
= self
4032 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4034 if _n_kwnot
== old_child
then
4035 n_kwnot
= new_child
.as(TKwnot)
4038 if _n_expr
== old_child
then
4039 n_expr
= new_child
.as(AExpr)
4044 redef fun n_kwnot
=(node
)
4049 redef fun n_expr
=(node
)
4056 redef fun visit_all
(v
: Visitor)
4058 v
.enter_visit
(_n_kwnot
)
4059 v
.enter_visit
(_n_expr
)
4064 n_expr
: nullable AExpr,
4065 n_expr2
: nullable AExpr
4068 _n_expr
= n_expr
.as(not null)
4069 n_expr
.parent
= self
4070 _n_expr2
= n_expr2
.as(not null)
4071 n_expr2
.parent
= self
4074 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4076 if _n_expr
== old_child
then
4077 n_expr
= new_child
.as(AExpr)
4080 if _n_expr2
== old_child
then
4081 n_expr2
= new_child
.as(AExpr)
4086 redef fun n_expr
=(node
)
4091 redef fun n_expr2
=(node
)
4098 redef fun visit_all
(v
: Visitor)
4100 v
.enter_visit
(_n_expr
)
4101 v
.enter_visit
(_n_expr2
)
4106 n_expr
: nullable AExpr,
4107 n_expr2
: nullable AExpr
4110 _n_expr
= n_expr
.as(not null)
4111 n_expr
.parent
= self
4112 _n_expr2
= n_expr2
.as(not null)
4113 n_expr2
.parent
= self
4116 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4118 if _n_expr
== old_child
then
4119 n_expr
= new_child
.as(AExpr)
4122 if _n_expr2
== old_child
then
4123 n_expr2
= new_child
.as(AExpr)
4128 redef fun n_expr
=(node
)
4133 redef fun n_expr2
=(node
)
4140 redef fun visit_all
(v
: Visitor)
4142 v
.enter_visit
(_n_expr
)
4143 v
.enter_visit
(_n_expr2
)
4148 n_expr
: nullable AExpr,
4149 n_expr2
: nullable AExpr
4152 _n_expr
= n_expr
.as(not null)
4153 n_expr
.parent
= self
4154 _n_expr2
= n_expr2
.as(not null)
4155 n_expr2
.parent
= self
4158 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4160 if _n_expr
== old_child
then
4161 n_expr
= new_child
.as(AExpr)
4164 if _n_expr2
== old_child
then
4165 n_expr2
= new_child
.as(AExpr)
4170 redef fun n_expr
=(node
)
4175 redef fun n_expr2
=(node
)
4182 redef fun visit_all
(v
: Visitor)
4184 v
.enter_visit
(_n_expr
)
4185 v
.enter_visit
(_n_expr2
)
4190 n_expr
: nullable AExpr,
4191 n_expr2
: nullable AExpr
4194 _n_expr
= n_expr
.as(not null)
4195 n_expr
.parent
= self
4196 _n_expr2
= n_expr2
.as(not null)
4197 n_expr2
.parent
= self
4200 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4202 if _n_expr
== old_child
then
4203 n_expr
= new_child
.as(AExpr)
4206 if _n_expr2
== old_child
then
4207 n_expr2
= new_child
.as(AExpr)
4212 redef fun n_expr
=(node
)
4217 redef fun n_expr2
=(node
)
4224 redef fun visit_all
(v
: Visitor)
4226 v
.enter_visit
(_n_expr
)
4227 v
.enter_visit
(_n_expr2
)
4232 n_expr
: nullable AExpr,
4233 n_expr2
: nullable AExpr
4236 _n_expr
= n_expr
.as(not null)
4237 n_expr
.parent
= self
4238 _n_expr2
= n_expr2
.as(not null)
4239 n_expr2
.parent
= self
4242 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4244 if _n_expr
== old_child
then
4245 n_expr
= new_child
.as(AExpr)
4248 if _n_expr2
== old_child
then
4249 n_expr2
= new_child
.as(AExpr)
4254 redef fun n_expr
=(node
)
4259 redef fun n_expr2
=(node
)
4266 redef fun visit_all
(v
: Visitor)
4268 v
.enter_visit
(_n_expr
)
4269 v
.enter_visit
(_n_expr2
)
4274 n_expr
: nullable AExpr,
4275 n_expr2
: nullable AExpr
4278 _n_expr
= n_expr
.as(not null)
4279 n_expr
.parent
= self
4280 _n_expr2
= n_expr2
.as(not null)
4281 n_expr2
.parent
= self
4284 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4286 if _n_expr
== old_child
then
4287 n_expr
= new_child
.as(AExpr)
4290 if _n_expr2
== old_child
then
4291 n_expr2
= new_child
.as(AExpr)
4296 redef fun n_expr
=(node
)
4301 redef fun n_expr2
=(node
)
4308 redef fun visit_all
(v
: Visitor)
4310 v
.enter_visit
(_n_expr
)
4311 v
.enter_visit
(_n_expr2
)
4316 n_expr
: nullable AExpr,
4317 n_expr2
: nullable AExpr
4320 _n_expr
= n_expr
.as(not null)
4321 n_expr
.parent
= self
4322 _n_expr2
= n_expr2
.as(not null)
4323 n_expr2
.parent
= self
4326 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4328 if _n_expr
== old_child
then
4329 n_expr
= new_child
.as(AExpr)
4332 if _n_expr2
== old_child
then
4333 n_expr2
= new_child
.as(AExpr)
4338 redef fun n_expr
=(node
)
4343 redef fun n_expr2
=(node
)
4350 redef fun visit_all
(v
: Visitor)
4352 v
.enter_visit
(_n_expr
)
4353 v
.enter_visit
(_n_expr2
)
4358 n_expr
: nullable AExpr,
4359 n_expr2
: nullable AExpr
4362 _n_expr
= n_expr
.as(not null)
4363 n_expr
.parent
= self
4364 _n_expr2
= n_expr2
.as(not null)
4365 n_expr2
.parent
= self
4368 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4370 if _n_expr
== old_child
then
4371 n_expr
= new_child
.as(AExpr)
4374 if _n_expr2
== old_child
then
4375 n_expr2
= new_child
.as(AExpr)
4380 redef fun n_expr
=(node
)
4385 redef fun n_expr2
=(node
)
4392 redef fun visit_all
(v
: Visitor)
4394 v
.enter_visit
(_n_expr
)
4395 v
.enter_visit
(_n_expr2
)
4398 redef class AIsaExpr
4399 init init_aisaexpr
(
4400 n_expr
: nullable AExpr,
4401 n_type
: nullable AType
4404 _n_expr
= n_expr
.as(not null)
4405 n_expr
.parent
= self
4406 _n_type
= n_type
.as(not null)
4407 n_type
.parent
= self
4410 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4412 if _n_expr
== old_child
then
4413 n_expr
= new_child
.as(AExpr)
4416 if _n_type
== old_child
then
4417 n_type
= new_child
.as(AType)
4422 redef fun n_expr
=(node
)
4427 redef fun n_type
=(node
)
4434 redef fun visit_all
(v
: Visitor)
4436 v
.enter_visit
(_n_expr
)
4437 v
.enter_visit
(_n_type
)
4440 redef class APlusExpr
4441 init init_aplusexpr
(
4442 n_expr
: nullable AExpr,
4443 n_expr2
: nullable AExpr
4446 _n_expr
= n_expr
.as(not null)
4447 n_expr
.parent
= self
4448 _n_expr2
= n_expr2
.as(not null)
4449 n_expr2
.parent
= self
4452 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4454 if _n_expr
== old_child
then
4455 n_expr
= new_child
.as(AExpr)
4458 if _n_expr2
== old_child
then
4459 n_expr2
= new_child
.as(AExpr)
4464 redef fun n_expr
=(node
)
4469 redef fun n_expr2
=(node
)
4476 redef fun visit_all
(v
: Visitor)
4478 v
.enter_visit
(_n_expr
)
4479 v
.enter_visit
(_n_expr2
)
4482 redef class AMinusExpr
4483 init init_aminusexpr
(
4484 n_expr
: nullable AExpr,
4485 n_expr2
: nullable AExpr
4488 _n_expr
= n_expr
.as(not null)
4489 n_expr
.parent
= self
4490 _n_expr2
= n_expr2
.as(not null)
4491 n_expr2
.parent
= self
4494 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4496 if _n_expr
== old_child
then
4497 n_expr
= new_child
.as(AExpr)
4500 if _n_expr2
== old_child
then
4501 n_expr2
= new_child
.as(AExpr)
4506 redef fun n_expr
=(node
)
4511 redef fun n_expr2
=(node
)
4518 redef fun visit_all
(v
: Visitor)
4520 v
.enter_visit
(_n_expr
)
4521 v
.enter_visit
(_n_expr2
)
4524 redef class AStarshipExpr
4525 init init_astarshipexpr
(
4526 n_expr
: nullable AExpr,
4527 n_expr2
: nullable AExpr
4530 _n_expr
= n_expr
.as(not null)
4531 n_expr
.parent
= self
4532 _n_expr2
= n_expr2
.as(not null)
4533 n_expr2
.parent
= self
4536 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4538 if _n_expr
== old_child
then
4539 n_expr
= new_child
.as(AExpr)
4542 if _n_expr2
== old_child
then
4543 n_expr2
= new_child
.as(AExpr)
4548 redef fun n_expr
=(node
)
4553 redef fun n_expr2
=(node
)
4560 redef fun visit_all
(v
: Visitor)
4562 v
.enter_visit
(_n_expr
)
4563 v
.enter_visit
(_n_expr2
)
4566 redef class AStarExpr
4567 init init_astarexpr
(
4568 n_expr
: nullable AExpr,
4569 n_expr2
: nullable AExpr
4572 _n_expr
= n_expr
.as(not null)
4573 n_expr
.parent
= self
4574 _n_expr2
= n_expr2
.as(not null)
4575 n_expr2
.parent
= self
4578 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4580 if _n_expr
== old_child
then
4581 n_expr
= new_child
.as(AExpr)
4584 if _n_expr2
== old_child
then
4585 n_expr2
= new_child
.as(AExpr)
4590 redef fun n_expr
=(node
)
4595 redef fun n_expr2
=(node
)
4602 redef fun visit_all
(v
: Visitor)
4604 v
.enter_visit
(_n_expr
)
4605 v
.enter_visit
(_n_expr2
)
4608 redef class ASlashExpr
4609 init init_aslashexpr
(
4610 n_expr
: nullable AExpr,
4611 n_expr2
: nullable AExpr
4614 _n_expr
= n_expr
.as(not null)
4615 n_expr
.parent
= self
4616 _n_expr2
= n_expr2
.as(not null)
4617 n_expr2
.parent
= self
4620 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4622 if _n_expr
== old_child
then
4623 n_expr
= new_child
.as(AExpr)
4626 if _n_expr2
== old_child
then
4627 n_expr2
= new_child
.as(AExpr)
4632 redef fun n_expr
=(node
)
4637 redef fun n_expr2
=(node
)
4644 redef fun visit_all
(v
: Visitor)
4646 v
.enter_visit
(_n_expr
)
4647 v
.enter_visit
(_n_expr2
)
4650 redef class APercentExpr
4651 init init_apercentexpr
(
4652 n_expr
: nullable AExpr,
4653 n_expr2
: nullable AExpr
4656 _n_expr
= n_expr
.as(not null)
4657 n_expr
.parent
= self
4658 _n_expr2
= n_expr2
.as(not null)
4659 n_expr2
.parent
= self
4662 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4664 if _n_expr
== old_child
then
4665 n_expr
= new_child
.as(AExpr)
4668 if _n_expr2
== old_child
then
4669 n_expr2
= new_child
.as(AExpr)
4674 redef fun n_expr
=(node
)
4679 redef fun n_expr2
=(node
)
4686 redef fun visit_all
(v
: Visitor)
4688 v
.enter_visit
(_n_expr
)
4689 v
.enter_visit
(_n_expr2
)
4692 redef class AUminusExpr
4693 init init_auminusexpr
(
4694 n_minus
: nullable TMinus,
4695 n_expr
: nullable AExpr
4698 _n_minus
= n_minus
.as(not null)
4699 n_minus
.parent
= self
4700 _n_expr
= n_expr
.as(not null)
4701 n_expr
.parent
= self
4704 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4706 if _n_minus
== old_child
then
4707 n_minus
= new_child
.as(TMinus)
4710 if _n_expr
== old_child
then
4711 n_expr
= new_child
.as(AExpr)
4716 redef fun n_minus
=(node
)
4721 redef fun n_expr
=(node
)
4728 redef fun visit_all
(v
: Visitor)
4730 v
.enter_visit
(_n_minus
)
4731 v
.enter_visit
(_n_expr
)
4734 redef class ANewExpr
4735 init init_anewexpr
(
4736 n_kwnew
: nullable TKwnew,
4737 n_type
: nullable AType,
4739 n_args
: nullable AExprs
4742 _n_kwnew
= n_kwnew
.as(not null)
4743 n_kwnew
.parent
= self
4744 _n_type
= n_type
.as(not null)
4745 n_type
.parent
= self
4747 if n_id
!= null then n_id
.parent
= self
4748 _n_args
= n_args
.as(not null)
4749 n_args
.parent
= self
4752 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4754 if _n_kwnew
== old_child
then
4755 n_kwnew
= new_child
.as(TKwnew)
4758 if _n_type
== old_child
then
4759 n_type
= new_child
.as(AType)
4762 if _n_id
== old_child
then
4763 n_id
= new_child
.as(nullable TId)
4766 if _n_args
== old_child
then
4767 n_args
= new_child
.as(AExprs)
4772 redef fun n_kwnew
=(node
)
4777 redef fun n_type
=(node
)
4782 redef fun n_id
=(node
)
4785 if node
!= null then node
.parent
= self
4787 redef fun n_args
=(node
)
4794 redef fun visit_all
(v
: Visitor)
4796 v
.enter_visit
(_n_kwnew
)
4797 v
.enter_visit
(_n_type
)
4798 v
.enter_visit
(_n_id
)
4799 v
.enter_visit
(_n_args
)
4802 redef class AAttrExpr
4803 init init_aattrexpr
(
4804 n_expr
: nullable AExpr,
4805 n_id
: nullable TAttrid
4808 _n_expr
= n_expr
.as(not null)
4809 n_expr
.parent
= self
4810 _n_id
= n_id
.as(not null)
4814 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4816 if _n_expr
== old_child
then
4817 n_expr
= new_child
.as(AExpr)
4820 if _n_id
== old_child
then
4821 n_id
= new_child
.as(TAttrid)
4826 redef fun n_expr
=(node
)
4831 redef fun n_id
=(node
)
4838 redef fun visit_all
(v
: Visitor)
4840 v
.enter_visit
(_n_expr
)
4841 v
.enter_visit
(_n_id
)
4844 redef class AAttrAssignExpr
4845 init init_aattrassignexpr
(
4846 n_expr
: nullable AExpr,
4847 n_id
: nullable TAttrid,
4848 n_assign
: nullable TAssign,
4849 n_value
: nullable AExpr
4852 _n_expr
= n_expr
.as(not null)
4853 n_expr
.parent
= self
4854 _n_id
= n_id
.as(not null)
4856 _n_assign
= n_assign
.as(not null)
4857 n_assign
.parent
= self
4858 _n_value
= n_value
.as(not null)
4859 n_value
.parent
= self
4862 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4864 if _n_expr
== old_child
then
4865 n_expr
= new_child
.as(AExpr)
4868 if _n_id
== old_child
then
4869 n_id
= new_child
.as(TAttrid)
4872 if _n_assign
== old_child
then
4873 n_assign
= new_child
.as(TAssign)
4876 if _n_value
== old_child
then
4877 n_value
= new_child
.as(AExpr)
4882 redef fun n_expr
=(node
)
4887 redef fun n_id
=(node
)
4892 redef fun n_assign
=(node
)
4897 redef fun n_value
=(node
)
4904 redef fun visit_all
(v
: Visitor)
4906 v
.enter_visit
(_n_expr
)
4907 v
.enter_visit
(_n_id
)
4908 v
.enter_visit
(_n_assign
)
4909 v
.enter_visit
(_n_value
)
4912 redef class AAttrReassignExpr
4913 init init_aattrreassignexpr
(
4914 n_expr
: nullable AExpr,
4915 n_id
: nullable TAttrid,
4916 n_assign_op
: nullable AAssignOp,
4917 n_value
: nullable AExpr
4920 _n_expr
= n_expr
.as(not null)
4921 n_expr
.parent
= self
4922 _n_id
= n_id
.as(not null)
4924 _n_assign_op
= n_assign_op
.as(not null)
4925 n_assign_op
.parent
= self
4926 _n_value
= n_value
.as(not null)
4927 n_value
.parent
= self
4930 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4932 if _n_expr
== old_child
then
4933 n_expr
= new_child
.as(AExpr)
4936 if _n_id
== old_child
then
4937 n_id
= new_child
.as(TAttrid)
4940 if _n_assign_op
== old_child
then
4941 n_assign_op
= new_child
.as(AAssignOp)
4944 if _n_value
== old_child
then
4945 n_value
= new_child
.as(AExpr)
4950 redef fun n_expr
=(node
)
4955 redef fun n_id
=(node
)
4960 redef fun n_assign_op
=(node
)
4965 redef fun n_value
=(node
)
4972 redef fun visit_all
(v
: Visitor)
4974 v
.enter_visit
(_n_expr
)
4975 v
.enter_visit
(_n_id
)
4976 v
.enter_visit
(_n_assign_op
)
4977 v
.enter_visit
(_n_value
)
4980 redef class ACallExpr
4981 init init_acallexpr
(
4982 n_expr
: nullable AExpr,
4984 n_args
: nullable AExprs
4987 _n_expr
= n_expr
.as(not null)
4988 n_expr
.parent
= self
4989 _n_id
= n_id
.as(not null)
4991 _n_args
= n_args
.as(not null)
4992 n_args
.parent
= self
4995 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4997 if _n_expr
== old_child
then
4998 n_expr
= new_child
.as(AExpr)
5001 if _n_id
== old_child
then
5002 n_id
= new_child
.as(TId)
5005 if _n_args
== old_child
then
5006 n_args
= new_child
.as(AExprs)
5011 redef fun n_expr
=(node
)
5016 redef fun n_id
=(node
)
5021 redef fun n_args
=(node
)
5028 redef fun visit_all
(v
: Visitor)
5030 v
.enter_visit
(_n_expr
)
5031 v
.enter_visit
(_n_id
)
5032 v
.enter_visit
(_n_args
)
5035 redef class ACallAssignExpr
5036 init init_acallassignexpr
(
5037 n_expr
: nullable AExpr,
5039 n_args
: nullable AExprs,
5040 n_assign
: nullable TAssign,
5041 n_value
: nullable AExpr
5044 _n_expr
= n_expr
.as(not null)
5045 n_expr
.parent
= self
5046 _n_id
= n_id
.as(not null)
5048 _n_args
= n_args
.as(not null)
5049 n_args
.parent
= self
5050 _n_assign
= n_assign
.as(not null)
5051 n_assign
.parent
= self
5052 _n_value
= n_value
.as(not null)
5053 n_value
.parent
= self
5056 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5058 if _n_expr
== old_child
then
5059 n_expr
= new_child
.as(AExpr)
5062 if _n_id
== old_child
then
5063 n_id
= new_child
.as(TId)
5066 if _n_args
== old_child
then
5067 n_args
= new_child
.as(AExprs)
5070 if _n_assign
== old_child
then
5071 n_assign
= new_child
.as(TAssign)
5074 if _n_value
== old_child
then
5075 n_value
= new_child
.as(AExpr)
5080 redef fun n_expr
=(node
)
5085 redef fun n_id
=(node
)
5090 redef fun n_args
=(node
)
5095 redef fun n_assign
=(node
)
5100 redef fun n_value
=(node
)
5107 redef fun visit_all
(v
: Visitor)
5109 v
.enter_visit
(_n_expr
)
5110 v
.enter_visit
(_n_id
)
5111 v
.enter_visit
(_n_args
)
5112 v
.enter_visit
(_n_assign
)
5113 v
.enter_visit
(_n_value
)
5116 redef class ACallReassignExpr
5117 init init_acallreassignexpr
(
5118 n_expr
: nullable AExpr,
5120 n_args
: nullable AExprs,
5121 n_assign_op
: nullable AAssignOp,
5122 n_value
: nullable AExpr
5125 _n_expr
= n_expr
.as(not null)
5126 n_expr
.parent
= self
5127 _n_id
= n_id
.as(not null)
5129 _n_args
= n_args
.as(not null)
5130 n_args
.parent
= self
5131 _n_assign_op
= n_assign_op
.as(not null)
5132 n_assign_op
.parent
= self
5133 _n_value
= n_value
.as(not null)
5134 n_value
.parent
= self
5137 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5139 if _n_expr
== old_child
then
5140 n_expr
= new_child
.as(AExpr)
5143 if _n_id
== old_child
then
5144 n_id
= new_child
.as(TId)
5147 if _n_args
== old_child
then
5148 n_args
= new_child
.as(AExprs)
5151 if _n_assign_op
== old_child
then
5152 n_assign_op
= new_child
.as(AAssignOp)
5155 if _n_value
== old_child
then
5156 n_value
= new_child
.as(AExpr)
5161 redef fun n_expr
=(node
)
5166 redef fun n_id
=(node
)
5171 redef fun n_args
=(node
)
5176 redef fun n_assign_op
=(node
)
5181 redef fun n_value
=(node
)
5188 redef fun visit_all
(v
: Visitor)
5190 v
.enter_visit
(_n_expr
)
5191 v
.enter_visit
(_n_id
)
5192 v
.enter_visit
(_n_args
)
5193 v
.enter_visit
(_n_assign_op
)
5194 v
.enter_visit
(_n_value
)
5197 redef class ASuperExpr
5198 init init_asuperexpr
(
5199 n_qualified
: nullable AQualified,
5200 n_kwsuper
: nullable TKwsuper,
5201 n_args
: nullable AExprs
5204 _n_qualified
= n_qualified
5205 if n_qualified
!= null then n_qualified
.parent
= self
5206 _n_kwsuper
= n_kwsuper
.as(not null)
5207 n_kwsuper
.parent
= self
5208 _n_args
= n_args
.as(not null)
5209 n_args
.parent
= self
5212 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5214 if _n_qualified
== old_child
then
5215 n_qualified
= new_child
.as(nullable AQualified)
5218 if _n_kwsuper
== old_child
then
5219 n_kwsuper
= new_child
.as(TKwsuper)
5222 if _n_args
== old_child
then
5223 n_args
= new_child
.as(AExprs)
5228 redef fun n_qualified
=(node
)
5231 if node
!= null then node
.parent
= self
5233 redef fun n_kwsuper
=(node
)
5238 redef fun n_args
=(node
)
5245 redef fun visit_all
(v
: Visitor)
5247 v
.enter_visit
(_n_qualified
)
5248 v
.enter_visit
(_n_kwsuper
)
5249 v
.enter_visit
(_n_args
)
5252 redef class AInitExpr
5253 init init_ainitexpr
(
5254 n_expr
: nullable AExpr,
5255 n_kwinit
: nullable TKwinit,
5256 n_args
: nullable AExprs
5259 _n_expr
= n_expr
.as(not null)
5260 n_expr
.parent
= self
5261 _n_kwinit
= n_kwinit
.as(not null)
5262 n_kwinit
.parent
= self
5263 _n_args
= n_args
.as(not null)
5264 n_args
.parent
= self
5267 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5269 if _n_expr
== old_child
then
5270 n_expr
= new_child
.as(AExpr)
5273 if _n_kwinit
== old_child
then
5274 n_kwinit
= new_child
.as(TKwinit)
5277 if _n_args
== old_child
then
5278 n_args
= new_child
.as(AExprs)
5283 redef fun n_expr
=(node
)
5288 redef fun n_kwinit
=(node
)
5293 redef fun n_args
=(node
)
5300 redef fun visit_all
(v
: Visitor)
5302 v
.enter_visit
(_n_expr
)
5303 v
.enter_visit
(_n_kwinit
)
5304 v
.enter_visit
(_n_args
)
5307 redef class ABraExpr
5308 init init_abraexpr
(
5309 n_expr
: nullable AExpr,
5310 n_args
: nullable AExprs
5313 _n_expr
= n_expr
.as(not null)
5314 n_expr
.parent
= self
5315 _n_args
= n_args
.as(not null)
5316 n_args
.parent
= self
5319 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5321 if _n_expr
== old_child
then
5322 n_expr
= new_child
.as(AExpr)
5325 if _n_args
== old_child
then
5326 n_args
= new_child
.as(AExprs)
5331 redef fun n_expr
=(node
)
5336 redef fun n_args
=(node
)
5343 redef fun visit_all
(v
: Visitor)
5345 v
.enter_visit
(_n_expr
)
5346 v
.enter_visit
(_n_args
)
5349 redef class ABraAssignExpr
5350 init init_abraassignexpr
(
5351 n_expr
: nullable AExpr,
5352 n_args
: nullable AExprs,
5353 n_assign
: nullable TAssign,
5354 n_value
: nullable AExpr
5357 _n_expr
= n_expr
.as(not null)
5358 n_expr
.parent
= self
5359 _n_args
= n_args
.as(not null)
5360 n_args
.parent
= self
5361 _n_assign
= n_assign
.as(not null)
5362 n_assign
.parent
= self
5363 _n_value
= n_value
.as(not null)
5364 n_value
.parent
= self
5367 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5369 if _n_expr
== old_child
then
5370 n_expr
= new_child
.as(AExpr)
5373 if _n_args
== old_child
then
5374 n_args
= new_child
.as(AExprs)
5377 if _n_assign
== old_child
then
5378 n_assign
= new_child
.as(TAssign)
5381 if _n_value
== old_child
then
5382 n_value
= new_child
.as(AExpr)
5387 redef fun n_expr
=(node
)
5392 redef fun n_args
=(node
)
5397 redef fun n_assign
=(node
)
5402 redef fun n_value
=(node
)
5409 redef fun visit_all
(v
: Visitor)
5411 v
.enter_visit
(_n_expr
)
5412 v
.enter_visit
(_n_args
)
5413 v
.enter_visit
(_n_assign
)
5414 v
.enter_visit
(_n_value
)
5417 redef class ABraReassignExpr
5418 init init_abrareassignexpr
(
5419 n_expr
: nullable AExpr,
5420 n_args
: nullable AExprs,
5421 n_assign_op
: nullable AAssignOp,
5422 n_value
: nullable AExpr
5425 _n_expr
= n_expr
.as(not null)
5426 n_expr
.parent
= self
5427 _n_args
= n_args
.as(not null)
5428 n_args
.parent
= self
5429 _n_assign_op
= n_assign_op
.as(not null)
5430 n_assign_op
.parent
= self
5431 _n_value
= n_value
.as(not null)
5432 n_value
.parent
= self
5435 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5437 if _n_expr
== old_child
then
5438 n_expr
= new_child
.as(AExpr)
5441 if _n_args
== old_child
then
5442 n_args
= new_child
.as(AExprs)
5445 if _n_assign_op
== old_child
then
5446 n_assign_op
= new_child
.as(AAssignOp)
5449 if _n_value
== old_child
then
5450 n_value
= new_child
.as(AExpr)
5455 redef fun n_expr
=(node
)
5460 redef fun n_args
=(node
)
5465 redef fun n_assign_op
=(node
)
5470 redef fun n_value
=(node
)
5477 redef fun visit_all
(v
: Visitor)
5479 v
.enter_visit
(_n_expr
)
5480 v
.enter_visit
(_n_args
)
5481 v
.enter_visit
(_n_assign_op
)
5482 v
.enter_visit
(_n_value
)
5485 redef class AVarExpr
5486 init init_avarexpr
(
5490 _n_id
= n_id
.as(not null)
5494 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5496 if _n_id
== old_child
then
5497 n_id
= new_child
.as(TId)
5502 redef fun n_id
=(node
)
5509 redef fun visit_all
(v
: Visitor)
5511 v
.enter_visit
(_n_id
)
5514 redef class AVarAssignExpr
5515 init init_avarassignexpr
(
5517 n_assign
: nullable TAssign,
5518 n_value
: nullable AExpr
5521 _n_id
= n_id
.as(not null)
5523 _n_assign
= n_assign
.as(not null)
5524 n_assign
.parent
= self
5525 _n_value
= n_value
.as(not null)
5526 n_value
.parent
= self
5529 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5531 if _n_id
== old_child
then
5532 n_id
= new_child
.as(TId)
5535 if _n_assign
== old_child
then
5536 n_assign
= new_child
.as(TAssign)
5539 if _n_value
== old_child
then
5540 n_value
= new_child
.as(AExpr)
5545 redef fun n_id
=(node
)
5550 redef fun n_assign
=(node
)
5555 redef fun n_value
=(node
)
5562 redef fun visit_all
(v
: Visitor)
5564 v
.enter_visit
(_n_id
)
5565 v
.enter_visit
(_n_assign
)
5566 v
.enter_visit
(_n_value
)
5569 redef class AVarReassignExpr
5570 init init_avarreassignexpr
(
5572 n_assign_op
: nullable AAssignOp,
5573 n_value
: nullable AExpr
5576 _n_id
= n_id
.as(not null)
5578 _n_assign_op
= n_assign_op
.as(not null)
5579 n_assign_op
.parent
= self
5580 _n_value
= n_value
.as(not null)
5581 n_value
.parent
= self
5584 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5586 if _n_id
== old_child
then
5587 n_id
= new_child
.as(TId)
5590 if _n_assign_op
== old_child
then
5591 n_assign_op
= new_child
.as(AAssignOp)
5594 if _n_value
== old_child
then
5595 n_value
= new_child
.as(AExpr)
5600 redef fun n_id
=(node
)
5605 redef fun n_assign_op
=(node
)
5610 redef fun n_value
=(node
)
5617 redef fun visit_all
(v
: Visitor)
5619 v
.enter_visit
(_n_id
)
5620 v
.enter_visit
(_n_assign_op
)
5621 v
.enter_visit
(_n_value
)
5624 redef class ARangeExpr
5625 init init_arangeexpr
(
5626 n_expr
: nullable AExpr,
5627 n_expr2
: nullable AExpr,
5628 n_annotations
: nullable AAnnotations
5631 _n_expr
= n_expr
.as(not null)
5632 n_expr
.parent
= self
5633 _n_expr2
= n_expr2
.as(not null)
5634 n_expr2
.parent
= self
5635 _n_annotations
= n_annotations
5636 if n_annotations
!= null then n_annotations
.parent
= self
5639 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5641 if _n_expr
== old_child
then
5642 n_expr
= new_child
.as(AExpr)
5645 if _n_expr2
== old_child
then
5646 n_expr2
= new_child
.as(AExpr)
5649 if _n_annotations
== old_child
then
5650 n_annotations
= new_child
.as(nullable AAnnotations)
5655 redef fun n_expr
=(node
)
5660 redef fun n_expr2
=(node
)
5665 redef fun n_annotations
=(node
)
5667 _n_annotations
= node
5668 if node
!= null then node
.parent
= self
5672 redef fun visit_all
(v
: Visitor)
5674 v
.enter_visit
(_n_expr
)
5675 v
.enter_visit
(_n_expr2
)
5676 v
.enter_visit
(_n_annotations
)
5679 redef class ACrangeExpr
5680 init init_acrangeexpr
(
5681 n_obra
: nullable TObra,
5682 n_expr
: nullable AExpr,
5683 n_expr2
: nullable AExpr,
5684 n_cbra
: nullable TCbra,
5685 n_annotations
: nullable AAnnotations
5688 _n_obra
= n_obra
.as(not null)
5689 n_obra
.parent
= self
5690 _n_expr
= n_expr
.as(not null)
5691 n_expr
.parent
= self
5692 _n_expr2
= n_expr2
.as(not null)
5693 n_expr2
.parent
= self
5694 _n_cbra
= n_cbra
.as(not null)
5695 n_cbra
.parent
= self
5696 _n_annotations
= n_annotations
5697 if n_annotations
!= null then n_annotations
.parent
= self
5700 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5702 if _n_obra
== old_child
then
5703 n_obra
= new_child
.as(TObra)
5706 if _n_expr
== old_child
then
5707 n_expr
= new_child
.as(AExpr)
5710 if _n_expr2
== old_child
then
5711 n_expr2
= new_child
.as(AExpr)
5714 if _n_cbra
== old_child
then
5715 n_cbra
= new_child
.as(TCbra)
5718 if _n_annotations
== old_child
then
5719 n_annotations
= new_child
.as(nullable AAnnotations)
5724 redef fun n_obra
=(node
)
5729 redef fun n_expr
=(node
)
5734 redef fun n_expr2
=(node
)
5739 redef fun n_cbra
=(node
)
5744 redef fun n_annotations
=(node
)
5746 _n_annotations
= node
5747 if node
!= null then node
.parent
= self
5751 redef fun visit_all
(v
: Visitor)
5753 v
.enter_visit
(_n_obra
)
5754 v
.enter_visit
(_n_expr
)
5755 v
.enter_visit
(_n_expr2
)
5756 v
.enter_visit
(_n_cbra
)
5757 v
.enter_visit
(_n_annotations
)
5760 redef class AOrangeExpr
5761 init init_aorangeexpr
(
5762 n_obra
: nullable TObra,
5763 n_expr
: nullable AExpr,
5764 n_expr2
: nullable AExpr,
5765 n_cbra
: nullable TObra,
5766 n_annotations
: nullable AAnnotations
5769 _n_obra
= n_obra
.as(not null)
5770 n_obra
.parent
= self
5771 _n_expr
= n_expr
.as(not null)
5772 n_expr
.parent
= self
5773 _n_expr2
= n_expr2
.as(not null)
5774 n_expr2
.parent
= self
5775 _n_cbra
= n_cbra
.as(not null)
5776 n_cbra
.parent
= self
5777 _n_annotations
= n_annotations
5778 if n_annotations
!= null then n_annotations
.parent
= self
5781 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5783 if _n_obra
== old_child
then
5784 n_obra
= new_child
.as(TObra)
5787 if _n_expr
== old_child
then
5788 n_expr
= new_child
.as(AExpr)
5791 if _n_expr2
== old_child
then
5792 n_expr2
= new_child
.as(AExpr)
5795 if _n_cbra
== old_child
then
5796 n_cbra
= new_child
.as(TObra)
5799 if _n_annotations
== old_child
then
5800 n_annotations
= new_child
.as(nullable AAnnotations)
5805 redef fun n_obra
=(node
)
5810 redef fun n_expr
=(node
)
5815 redef fun n_expr2
=(node
)
5820 redef fun n_cbra
=(node
)
5825 redef fun n_annotations
=(node
)
5827 _n_annotations
= node
5828 if node
!= null then node
.parent
= self
5832 redef fun visit_all
(v
: Visitor)
5834 v
.enter_visit
(_n_obra
)
5835 v
.enter_visit
(_n_expr
)
5836 v
.enter_visit
(_n_expr2
)
5837 v
.enter_visit
(_n_cbra
)
5838 v
.enter_visit
(_n_annotations
)
5841 redef class AArrayExpr
5842 init init_aarrayexpr
(
5843 n_exprs
: nullable AExprs,
5844 n_annotations
: nullable AAnnotations
5847 _n_exprs
= n_exprs
.as(not null)
5848 n_exprs
.parent
= self
5849 _n_annotations
= n_annotations
5850 if n_annotations
!= null then n_annotations
.parent
= self
5853 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5855 if _n_exprs
== old_child
then
5856 n_exprs
= new_child
.as(AExprs)
5859 if _n_annotations
== old_child
then
5860 n_annotations
= new_child
.as(nullable AAnnotations)
5865 redef fun n_exprs
=(node
)
5870 redef fun n_annotations
=(node
)
5872 _n_annotations
= node
5873 if node
!= null then node
.parent
= self
5877 redef fun visit_all
(v
: Visitor)
5879 v
.enter_visit
(_n_exprs
)
5880 v
.enter_visit
(_n_annotations
)
5883 redef class ASelfExpr
5884 init init_aselfexpr
(
5885 n_kwself
: nullable TKwself,
5886 n_annotations
: nullable AAnnotations
5889 _n_kwself
= n_kwself
.as(not null)
5890 n_kwself
.parent
= self
5891 _n_annotations
= n_annotations
5892 if n_annotations
!= null then n_annotations
.parent
= self
5895 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5897 if _n_kwself
== old_child
then
5898 n_kwself
= new_child
.as(TKwself)
5901 if _n_annotations
== old_child
then
5902 n_annotations
= new_child
.as(nullable AAnnotations)
5907 redef fun n_kwself
=(node
)
5912 redef fun n_annotations
=(node
)
5914 _n_annotations
= node
5915 if node
!= null then node
.parent
= self
5919 redef fun visit_all
(v
: Visitor)
5921 v
.enter_visit
(_n_kwself
)
5922 v
.enter_visit
(_n_annotations
)
5925 redef class AImplicitSelfExpr
5926 init init_aimplicitselfexpr
5930 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5936 redef fun visit_all
(v
: Visitor)
5940 redef class ATrueExpr
5941 init init_atrueexpr
(
5942 n_kwtrue
: nullable TKwtrue,
5943 n_annotations
: nullable AAnnotations
5946 _n_kwtrue
= n_kwtrue
.as(not null)
5947 n_kwtrue
.parent
= self
5948 _n_annotations
= n_annotations
5949 if n_annotations
!= null then n_annotations
.parent
= self
5952 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5954 if _n_kwtrue
== old_child
then
5955 n_kwtrue
= new_child
.as(TKwtrue)
5958 if _n_annotations
== old_child
then
5959 n_annotations
= new_child
.as(nullable AAnnotations)
5964 redef fun n_kwtrue
=(node
)
5969 redef fun n_annotations
=(node
)
5971 _n_annotations
= node
5972 if node
!= null then node
.parent
= self
5976 redef fun visit_all
(v
: Visitor)
5978 v
.enter_visit
(_n_kwtrue
)
5979 v
.enter_visit
(_n_annotations
)
5982 redef class AFalseExpr
5983 init init_afalseexpr
(
5984 n_kwfalse
: nullable TKwfalse,
5985 n_annotations
: nullable AAnnotations
5988 _n_kwfalse
= n_kwfalse
.as(not null)
5989 n_kwfalse
.parent
= self
5990 _n_annotations
= n_annotations
5991 if n_annotations
!= null then n_annotations
.parent
= self
5994 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5996 if _n_kwfalse
== old_child
then
5997 n_kwfalse
= new_child
.as(TKwfalse)
6000 if _n_annotations
== old_child
then
6001 n_annotations
= new_child
.as(nullable AAnnotations)
6006 redef fun n_kwfalse
=(node
)
6011 redef fun n_annotations
=(node
)
6013 _n_annotations
= node
6014 if node
!= null then node
.parent
= self
6018 redef fun visit_all
(v
: Visitor)
6020 v
.enter_visit
(_n_kwfalse
)
6021 v
.enter_visit
(_n_annotations
)
6024 redef class ANullExpr
6025 init init_anullexpr
(
6026 n_kwnull
: nullable TKwnull,
6027 n_annotations
: nullable AAnnotations
6030 _n_kwnull
= n_kwnull
.as(not null)
6031 n_kwnull
.parent
= self
6032 _n_annotations
= n_annotations
6033 if n_annotations
!= null then n_annotations
.parent
= self
6036 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6038 if _n_kwnull
== old_child
then
6039 n_kwnull
= new_child
.as(TKwnull)
6042 if _n_annotations
== old_child
then
6043 n_annotations
= new_child
.as(nullable AAnnotations)
6048 redef fun n_kwnull
=(node
)
6053 redef fun n_annotations
=(node
)
6055 _n_annotations
= node
6056 if node
!= null then node
.parent
= self
6060 redef fun visit_all
(v
: Visitor)
6062 v
.enter_visit
(_n_kwnull
)
6063 v
.enter_visit
(_n_annotations
)
6066 redef class ADecIntExpr
6067 init init_adecintexpr
(
6068 n_number
: nullable TNumber,
6069 n_annotations
: nullable AAnnotations
6072 _n_number
= n_number
.as(not null)
6073 n_number
.parent
= self
6074 _n_annotations
= n_annotations
6075 if n_annotations
!= null then n_annotations
.parent
= self
6078 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6080 if _n_number
== old_child
then
6081 n_number
= new_child
.as(TNumber)
6084 if _n_annotations
== old_child
then
6085 n_annotations
= new_child
.as(nullable AAnnotations)
6090 redef fun n_number
=(node
)
6095 redef fun n_annotations
=(node
)
6097 _n_annotations
= node
6098 if node
!= null then node
.parent
= self
6102 redef fun visit_all
(v
: Visitor)
6104 v
.enter_visit
(_n_number
)
6105 v
.enter_visit
(_n_annotations
)
6108 redef class AHexIntExpr
6109 init init_ahexintexpr
(
6110 n_hex_number
: nullable THexNumber,
6111 n_annotations
: nullable AAnnotations
6114 _n_hex_number
= n_hex_number
.as(not null)
6115 n_hex_number
.parent
= self
6116 _n_annotations
= n_annotations
6117 if n_annotations
!= null then n_annotations
.parent
= self
6120 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6122 if _n_hex_number
== old_child
then
6123 n_hex_number
= new_child
.as(THexNumber)
6126 if _n_annotations
== old_child
then
6127 n_annotations
= new_child
.as(nullable AAnnotations)
6132 redef fun n_hex_number
=(node
)
6134 _n_hex_number
= node
6137 redef fun n_annotations
=(node
)
6139 _n_annotations
= node
6140 if node
!= null then node
.parent
= self
6144 redef fun visit_all
(v
: Visitor)
6146 v
.enter_visit
(_n_hex_number
)
6147 v
.enter_visit
(_n_annotations
)
6150 redef class AFloatExpr
6151 init init_afloatexpr
(
6152 n_float
: nullable TFloat,
6153 n_annotations
: nullable AAnnotations
6156 _n_float
= n_float
.as(not null)
6157 n_float
.parent
= self
6158 _n_annotations
= n_annotations
6159 if n_annotations
!= null then n_annotations
.parent
= self
6162 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6164 if _n_float
== old_child
then
6165 n_float
= new_child
.as(TFloat)
6168 if _n_annotations
== old_child
then
6169 n_annotations
= new_child
.as(nullable AAnnotations)
6174 redef fun n_float
=(node
)
6179 redef fun n_annotations
=(node
)
6181 _n_annotations
= node
6182 if node
!= null then node
.parent
= self
6186 redef fun visit_all
(v
: Visitor)
6188 v
.enter_visit
(_n_float
)
6189 v
.enter_visit
(_n_annotations
)
6192 redef class ACharExpr
6193 init init_acharexpr
(
6194 n_char
: nullable TChar,
6195 n_annotations
: nullable AAnnotations
6198 _n_char
= n_char
.as(not null)
6199 n_char
.parent
= self
6200 _n_annotations
= n_annotations
6201 if n_annotations
!= null then n_annotations
.parent
= self
6204 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6206 if _n_char
== old_child
then
6207 n_char
= new_child
.as(TChar)
6210 if _n_annotations
== old_child
then
6211 n_annotations
= new_child
.as(nullable AAnnotations)
6216 redef fun n_char
=(node
)
6221 redef fun n_annotations
=(node
)
6223 _n_annotations
= node
6224 if node
!= null then node
.parent
= self
6228 redef fun visit_all
(v
: Visitor)
6230 v
.enter_visit
(_n_char
)
6231 v
.enter_visit
(_n_annotations
)
6234 redef class AStringExpr
6235 init init_astringexpr
(
6236 n_string
: nullable TString,
6237 n_annotations
: nullable AAnnotations
6240 _n_string
= n_string
.as(not null)
6241 n_string
.parent
= self
6242 _n_annotations
= n_annotations
6243 if n_annotations
!= null then n_annotations
.parent
= self
6246 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6248 if _n_string
== old_child
then
6249 n_string
= new_child
.as(TString)
6252 if _n_annotations
== old_child
then
6253 n_annotations
= new_child
.as(nullable AAnnotations)
6258 redef fun n_string
=(node
)
6263 redef fun n_annotations
=(node
)
6265 _n_annotations
= node
6266 if node
!= null then node
.parent
= self
6270 redef fun visit_all
(v
: Visitor)
6272 v
.enter_visit
(_n_string
)
6273 v
.enter_visit
(_n_annotations
)
6276 redef class AStartStringExpr
6277 init init_astartstringexpr
(
6278 n_string
: nullable TStartString
6281 _n_string
= n_string
.as(not null)
6282 n_string
.parent
= self
6285 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6287 if _n_string
== old_child
then
6288 n_string
= new_child
.as(TStartString)
6293 redef fun n_string
=(node
)
6300 redef fun visit_all
(v
: Visitor)
6302 v
.enter_visit
(_n_string
)
6305 redef class AMidStringExpr
6306 init init_amidstringexpr
(
6307 n_string
: nullable TMidString
6310 _n_string
= n_string
.as(not null)
6311 n_string
.parent
= self
6314 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6316 if _n_string
== old_child
then
6317 n_string
= new_child
.as(TMidString)
6322 redef fun n_string
=(node
)
6329 redef fun visit_all
(v
: Visitor)
6331 v
.enter_visit
(_n_string
)
6334 redef class AEndStringExpr
6335 init init_aendstringexpr
(
6336 n_string
: nullable TEndString
6339 _n_string
= n_string
.as(not null)
6340 n_string
.parent
= self
6343 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6345 if _n_string
== old_child
then
6346 n_string
= new_child
.as(TEndString)
6351 redef fun n_string
=(node
)
6358 redef fun visit_all
(v
: Visitor)
6360 v
.enter_visit
(_n_string
)
6363 redef class ASuperstringExpr
6364 init init_asuperstringexpr
(
6365 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6366 n_annotations
: nullable AAnnotations
6369 self.n_exprs
.unsafe_add_all
(n_exprs
)
6370 _n_annotations
= n_annotations
6371 if n_annotations
!= null then n_annotations
.parent
= self
6374 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6376 if n_exprs
.replace_child
(old_child
, new_child
) then return
6377 if _n_annotations
== old_child
then
6378 n_annotations
= new_child
.as(nullable AAnnotations)
6383 redef fun n_annotations
=(node
)
6385 _n_annotations
= node
6386 if node
!= null then node
.parent
= self
6390 redef fun visit_all
(v
: Visitor)
6392 n_exprs
.visit_all
(v
)
6393 v
.enter_visit
(_n_annotations
)
6396 redef class AParExpr
6397 init init_aparexpr
(
6398 n_opar
: nullable TOpar,
6399 n_expr
: nullable AExpr,
6400 n_cpar
: nullable TCpar,
6401 n_annotations
: nullable AAnnotations
6404 _n_opar
= n_opar
.as(not null)
6405 n_opar
.parent
= self
6406 _n_expr
= n_expr
.as(not null)
6407 n_expr
.parent
= self
6408 _n_cpar
= n_cpar
.as(not null)
6409 n_cpar
.parent
= self
6410 _n_annotations
= n_annotations
6411 if n_annotations
!= null then n_annotations
.parent
= self
6414 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6416 if _n_opar
== old_child
then
6417 n_opar
= new_child
.as(TOpar)
6420 if _n_expr
== old_child
then
6421 n_expr
= new_child
.as(AExpr)
6424 if _n_cpar
== old_child
then
6425 n_cpar
= new_child
.as(TCpar)
6428 if _n_annotations
== old_child
then
6429 n_annotations
= new_child
.as(nullable AAnnotations)
6434 redef fun n_opar
=(node
)
6439 redef fun n_expr
=(node
)
6444 redef fun n_cpar
=(node
)
6449 redef fun n_annotations
=(node
)
6451 _n_annotations
= node
6452 if node
!= null then node
.parent
= self
6456 redef fun visit_all
(v
: Visitor)
6458 v
.enter_visit
(_n_opar
)
6459 v
.enter_visit
(_n_expr
)
6460 v
.enter_visit
(_n_cpar
)
6461 v
.enter_visit
(_n_annotations
)
6464 redef class AAsCastExpr
6465 init init_aascastexpr
(
6466 n_expr
: nullable AExpr,
6467 n_kwas
: nullable TKwas,
6468 n_opar
: nullable TOpar,
6469 n_type
: nullable AType,
6470 n_cpar
: nullable TCpar
6473 _n_expr
= n_expr
.as(not null)
6474 n_expr
.parent
= self
6475 _n_kwas
= n_kwas
.as(not null)
6476 n_kwas
.parent
= self
6478 if n_opar
!= null then n_opar
.parent
= self
6479 _n_type
= n_type
.as(not null)
6480 n_type
.parent
= self
6482 if n_cpar
!= null then n_cpar
.parent
= self
6485 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6487 if _n_expr
== old_child
then
6488 n_expr
= new_child
.as(AExpr)
6491 if _n_kwas
== old_child
then
6492 n_kwas
= new_child
.as(TKwas)
6495 if _n_opar
== old_child
then
6496 n_opar
= new_child
.as(nullable TOpar)
6499 if _n_type
== old_child
then
6500 n_type
= new_child
.as(AType)
6503 if _n_cpar
== old_child
then
6504 n_cpar
= new_child
.as(nullable TCpar)
6509 redef fun n_expr
=(node
)
6514 redef fun n_kwas
=(node
)
6519 redef fun n_opar
=(node
)
6522 if node
!= null then node
.parent
= self
6524 redef fun n_type
=(node
)
6529 redef fun n_cpar
=(node
)
6532 if node
!= null then node
.parent
= self
6536 redef fun visit_all
(v
: Visitor)
6538 v
.enter_visit
(_n_expr
)
6539 v
.enter_visit
(_n_kwas
)
6540 v
.enter_visit
(_n_opar
)
6541 v
.enter_visit
(_n_type
)
6542 v
.enter_visit
(_n_cpar
)
6545 redef class AAsNotnullExpr
6546 init init_aasnotnullexpr
(
6547 n_expr
: nullable AExpr,
6548 n_kwas
: nullable TKwas,
6549 n_opar
: nullable TOpar,
6550 n_kwnot
: nullable TKwnot,
6551 n_kwnull
: nullable TKwnull,
6552 n_cpar
: nullable TCpar
6555 _n_expr
= n_expr
.as(not null)
6556 n_expr
.parent
= self
6557 _n_kwas
= n_kwas
.as(not null)
6558 n_kwas
.parent
= self
6560 if n_opar
!= null then n_opar
.parent
= self
6561 _n_kwnot
= n_kwnot
.as(not null)
6562 n_kwnot
.parent
= self
6563 _n_kwnull
= n_kwnull
.as(not null)
6564 n_kwnull
.parent
= self
6566 if n_cpar
!= null then n_cpar
.parent
= self
6569 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6571 if _n_expr
== old_child
then
6572 n_expr
= new_child
.as(AExpr)
6575 if _n_kwas
== old_child
then
6576 n_kwas
= new_child
.as(TKwas)
6579 if _n_opar
== old_child
then
6580 n_opar
= new_child
.as(nullable TOpar)
6583 if _n_kwnot
== old_child
then
6584 n_kwnot
= new_child
.as(TKwnot)
6587 if _n_kwnull
== old_child
then
6588 n_kwnull
= new_child
.as(TKwnull)
6591 if _n_cpar
== old_child
then
6592 n_cpar
= new_child
.as(nullable TCpar)
6597 redef fun n_expr
=(node
)
6602 redef fun n_kwas
=(node
)
6607 redef fun n_opar
=(node
)
6610 if node
!= null then node
.parent
= self
6612 redef fun n_kwnot
=(node
)
6617 redef fun n_kwnull
=(node
)
6622 redef fun n_cpar
=(node
)
6625 if node
!= null then node
.parent
= self
6629 redef fun visit_all
(v
: Visitor)
6631 v
.enter_visit
(_n_expr
)
6632 v
.enter_visit
(_n_kwas
)
6633 v
.enter_visit
(_n_opar
)
6634 v
.enter_visit
(_n_kwnot
)
6635 v
.enter_visit
(_n_kwnull
)
6636 v
.enter_visit
(_n_cpar
)
6639 redef class AIssetAttrExpr
6640 init init_aissetattrexpr
(
6641 n_kwisset
: nullable TKwisset,
6642 n_expr
: nullable AExpr,
6643 n_id
: nullable TAttrid
6646 _n_kwisset
= n_kwisset
.as(not null)
6647 n_kwisset
.parent
= self
6648 _n_expr
= n_expr
.as(not null)
6649 n_expr
.parent
= self
6650 _n_id
= n_id
.as(not null)
6654 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6656 if _n_kwisset
== old_child
then
6657 n_kwisset
= new_child
.as(TKwisset)
6660 if _n_expr
== old_child
then
6661 n_expr
= new_child
.as(AExpr)
6664 if _n_id
== old_child
then
6665 n_id
= new_child
.as(TAttrid)
6670 redef fun n_kwisset
=(node
)
6675 redef fun n_expr
=(node
)
6680 redef fun n_id
=(node
)
6687 redef fun visit_all
(v
: Visitor)
6689 v
.enter_visit
(_n_kwisset
)
6690 v
.enter_visit
(_n_expr
)
6691 v
.enter_visit
(_n_id
)
6694 redef class ADebugTypeExpr
6695 init init_adebugtypeexpr
(
6696 n_kwdebug
: nullable TKwdebug,
6697 n_kwtype
: nullable TKwtype,
6698 n_expr
: nullable AExpr,
6699 n_type
: nullable AType
6702 _n_kwdebug
= n_kwdebug
.as(not null)
6703 n_kwdebug
.parent
= self
6704 _n_kwtype
= n_kwtype
.as(not null)
6705 n_kwtype
.parent
= self
6706 _n_expr
= n_expr
.as(not null)
6707 n_expr
.parent
= self
6708 _n_type
= n_type
.as(not null)
6709 n_type
.parent
= self
6712 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6714 if _n_kwdebug
== old_child
then
6715 n_kwdebug
= new_child
.as(TKwdebug)
6718 if _n_kwtype
== old_child
then
6719 n_kwtype
= new_child
.as(TKwtype)
6722 if _n_expr
== old_child
then
6723 n_expr
= new_child
.as(AExpr)
6726 if _n_type
== old_child
then
6727 n_type
= new_child
.as(AType)
6732 redef fun n_kwdebug
=(node
)
6737 redef fun n_kwtype
=(node
)
6742 redef fun n_expr
=(node
)
6747 redef fun n_type
=(node
)
6754 redef fun visit_all
(v
: Visitor)
6756 v
.enter_visit
(_n_kwdebug
)
6757 v
.enter_visit
(_n_kwtype
)
6758 v
.enter_visit
(_n_expr
)
6759 v
.enter_visit
(_n_type
)
6762 redef class AVarargExpr
6763 init init_avarargexpr
(
6764 n_expr
: nullable AExpr,
6765 n_dotdotdot
: nullable TDotdotdot
6768 _n_expr
= n_expr
.as(not null)
6769 n_expr
.parent
= self
6770 _n_dotdotdot
= n_dotdotdot
.as(not null)
6771 n_dotdotdot
.parent
= self
6774 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6776 if _n_expr
== old_child
then
6777 n_expr
= new_child
.as(AExpr)
6780 if _n_dotdotdot
== old_child
then
6781 n_dotdotdot
= new_child
.as(TDotdotdot)
6786 redef fun n_expr
=(node
)
6791 redef fun n_dotdotdot
=(node
)
6798 redef fun visit_all
(v
: Visitor)
6800 v
.enter_visit
(_n_expr
)
6801 v
.enter_visit
(_n_dotdotdot
)
6804 redef class AListExprs
6805 init init_alistexprs
(
6806 n_exprs
: Collection[Object] # Should be Collection[AExpr]
6809 self.n_exprs
.unsafe_add_all
(n_exprs
)
6812 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6814 if n_exprs
.replace_child
(old_child
, new_child
) then return
6819 redef fun visit_all
(v
: Visitor)
6821 n_exprs
.visit_all
(v
)
6824 redef class AParExprs
6825 init init_aparexprs
(
6826 n_opar
: nullable TOpar,
6827 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6828 n_cpar
: nullable TCpar
6831 _n_opar
= n_opar
.as(not null)
6832 n_opar
.parent
= self
6833 self.n_exprs
.unsafe_add_all
(n_exprs
)
6834 _n_cpar
= n_cpar
.as(not null)
6835 n_cpar
.parent
= self
6838 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6840 if _n_opar
== old_child
then
6841 n_opar
= new_child
.as(TOpar)
6844 if n_exprs
.replace_child
(old_child
, new_child
) then return
6845 if _n_cpar
== old_child
then
6846 n_cpar
= new_child
.as(TCpar)
6851 redef fun n_opar
=(node
)
6856 redef fun n_cpar
=(node
)
6863 redef fun visit_all
(v
: Visitor)
6865 v
.enter_visit
(_n_opar
)
6866 n_exprs
.visit_all
(v
)
6867 v
.enter_visit
(_n_cpar
)
6870 redef class ABraExprs
6871 init init_abraexprs
(
6872 n_obra
: nullable TObra,
6873 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6874 n_cbra
: nullable TCbra
6877 _n_obra
= n_obra
.as(not null)
6878 n_obra
.parent
= self
6879 self.n_exprs
.unsafe_add_all
(n_exprs
)
6880 _n_cbra
= n_cbra
.as(not null)
6881 n_cbra
.parent
= self
6884 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6886 if _n_obra
== old_child
then
6887 n_obra
= new_child
.as(TObra)
6890 if n_exprs
.replace_child
(old_child
, new_child
) then return
6891 if _n_cbra
== old_child
then
6892 n_cbra
= new_child
.as(TCbra)
6897 redef fun n_obra
=(node
)
6902 redef fun n_cbra
=(node
)
6909 redef fun visit_all
(v
: Visitor)
6911 v
.enter_visit
(_n_obra
)
6912 n_exprs
.visit_all
(v
)
6913 v
.enter_visit
(_n_cbra
)
6916 redef class APlusAssignOp
6917 init init_aplusassignop
(
6918 n_pluseq
: nullable TPluseq
6921 _n_pluseq
= n_pluseq
.as(not null)
6922 n_pluseq
.parent
= self
6925 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6927 if _n_pluseq
== old_child
then
6928 n_pluseq
= new_child
.as(TPluseq)
6933 redef fun n_pluseq
=(node
)
6940 redef fun visit_all
(v
: Visitor)
6942 v
.enter_visit
(_n_pluseq
)
6945 redef class AMinusAssignOp
6946 init init_aminusassignop
(
6947 n_minuseq
: nullable TMinuseq
6950 _n_minuseq
= n_minuseq
.as(not null)
6951 n_minuseq
.parent
= self
6954 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6956 if _n_minuseq
== old_child
then
6957 n_minuseq
= new_child
.as(TMinuseq)
6962 redef fun n_minuseq
=(node
)
6969 redef fun visit_all
(v
: Visitor)
6971 v
.enter_visit
(_n_minuseq
)
6974 redef class AModuleName
6975 init init_amodulename
(
6976 n_quad
: nullable TQuad,
6977 n_path
: Collection[Object], # Should be Collection[TId]
6982 if n_quad
!= null then n_quad
.parent
= self
6983 self.n_path
.unsafe_add_all
(n_path
)
6984 _n_id
= n_id
.as(not null)
6988 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6990 if _n_quad
== old_child
then
6991 n_quad
= new_child
.as(nullable TQuad)
6994 if n_path
.replace_child
(old_child
, new_child
) then return
6995 if _n_id
== old_child
then
6996 n_id
= new_child
.as(TId)
7001 redef fun n_quad
=(node
)
7004 if node
!= null then node
.parent
= self
7006 redef fun n_id
=(node
)
7013 redef fun visit_all
(v
: Visitor)
7015 v
.enter_visit
(_n_quad
)
7017 v
.enter_visit
(_n_id
)
7020 redef class AExternCalls
7021 init init_aexterncalls
(
7022 n_kwimport
: nullable TKwimport,
7023 n_extern_calls
: Collection[Object] # Should be Collection[AExternCall]
7026 _n_kwimport
= n_kwimport
.as(not null)
7027 n_kwimport
.parent
= self
7028 self.n_extern_calls
.unsafe_add_all
(n_extern_calls
)
7031 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7033 if _n_kwimport
== old_child
then
7034 n_kwimport
= new_child
.as(TKwimport)
7037 if n_extern_calls
.replace_child
(old_child
, new_child
) then return
7040 redef fun n_kwimport
=(node
)
7047 redef fun visit_all
(v
: Visitor)
7049 v
.enter_visit
(_n_kwimport
)
7050 n_extern_calls
.visit_all
(v
)
7053 redef class AExternCall
7054 init init_aexterncall
7058 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7064 redef fun visit_all
(v
: Visitor)
7068 redef class ASuperExternCall
7069 init init_asuperexterncall
(
7070 n_kwsuper
: nullable TKwsuper
7073 _n_kwsuper
= n_kwsuper
.as(not null)
7074 n_kwsuper
.parent
= self
7077 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7079 if _n_kwsuper
== old_child
then
7080 n_kwsuper
= new_child
.as(TKwsuper)
7085 redef fun n_kwsuper
=(node
)
7092 redef fun visit_all
(v
: Visitor)
7094 v
.enter_visit
(_n_kwsuper
)
7097 redef class ALocalPropExternCall
7098 init init_alocalpropexterncall
(
7099 n_methid
: nullable AMethid
7102 _n_methid
= n_methid
.as(not null)
7103 n_methid
.parent
= self
7106 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7108 if _n_methid
== old_child
then
7109 n_methid
= new_child
.as(AMethid)
7114 redef fun n_methid
=(node
)
7121 redef fun visit_all
(v
: Visitor)
7123 v
.enter_visit
(_n_methid
)
7126 redef class AFullPropExternCall
7127 init init_afullpropexterncall
(
7128 n_type
: nullable AType,
7129 n_dot
: nullable TDot,
7130 n_methid
: nullable AMethid
7133 _n_type
= n_type
.as(not null)
7134 n_type
.parent
= self
7136 if n_dot
!= null then n_dot
.parent
= self
7137 _n_methid
= n_methid
.as(not null)
7138 n_methid
.parent
= self
7141 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7143 if _n_type
== old_child
then
7144 n_type
= new_child
.as(AType)
7147 if _n_dot
== old_child
then
7148 n_dot
= new_child
.as(nullable TDot)
7151 if _n_methid
== old_child
then
7152 n_methid
= new_child
.as(AMethid)
7157 redef fun n_type
=(node
)
7162 redef fun n_dot
=(node
)
7165 if node
!= null then node
.parent
= self
7167 redef fun n_methid
=(node
)
7174 redef fun visit_all
(v
: Visitor)
7176 v
.enter_visit
(_n_type
)
7177 v
.enter_visit
(_n_dot
)
7178 v
.enter_visit
(_n_methid
)
7181 redef class AInitPropExternCall
7182 init init_ainitpropexterncall
(
7183 n_type
: nullable AType
7186 _n_type
= n_type
.as(not null)
7187 n_type
.parent
= self
7190 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7192 if _n_type
== old_child
then
7193 n_type
= new_child
.as(AType)
7198 redef fun n_type
=(node
)
7205 redef fun visit_all
(v
: Visitor)
7207 v
.enter_visit
(_n_type
)
7210 redef class ACastAsExternCall
7211 init init_acastasexterncall
(
7212 n_from_type
: nullable AType,
7213 n_dot
: nullable TDot,
7214 n_kwas
: nullable TKwas,
7215 n_to_type
: nullable AType
7218 _n_from_type
= n_from_type
.as(not null)
7219 n_from_type
.parent
= self
7221 if n_dot
!= null then n_dot
.parent
= self
7222 _n_kwas
= n_kwas
.as(not null)
7223 n_kwas
.parent
= self
7224 _n_to_type
= n_to_type
.as(not null)
7225 n_to_type
.parent
= self
7228 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7230 if _n_from_type
== old_child
then
7231 n_from_type
= new_child
.as(AType)
7234 if _n_dot
== old_child
then
7235 n_dot
= new_child
.as(nullable TDot)
7238 if _n_kwas
== old_child
then
7239 n_kwas
= new_child
.as(TKwas)
7242 if _n_to_type
== old_child
then
7243 n_to_type
= new_child
.as(AType)
7248 redef fun n_from_type
=(node
)
7253 redef fun n_dot
=(node
)
7256 if node
!= null then node
.parent
= self
7258 redef fun n_kwas
=(node
)
7263 redef fun n_to_type
=(node
)
7270 redef fun visit_all
(v
: Visitor)
7272 v
.enter_visit
(_n_from_type
)
7273 v
.enter_visit
(_n_dot
)
7274 v
.enter_visit
(_n_kwas
)
7275 v
.enter_visit
(_n_to_type
)
7278 redef class AAsNullableExternCall
7279 init init_aasnullableexterncall
(
7280 n_type
: nullable AType,
7281 n_kwas
: nullable TKwas,
7282 n_kwnullable
: nullable TKwnullable
7285 _n_type
= n_type
.as(not null)
7286 n_type
.parent
= self
7287 _n_kwas
= n_kwas
.as(not null)
7288 n_kwas
.parent
= self
7289 _n_kwnullable
= n_kwnullable
.as(not null)
7290 n_kwnullable
.parent
= self
7293 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7295 if _n_type
== old_child
then
7296 n_type
= new_child
.as(AType)
7299 if _n_kwas
== old_child
then
7300 n_kwas
= new_child
.as(TKwas)
7303 if _n_kwnullable
== old_child
then
7304 n_kwnullable
= new_child
.as(TKwnullable)
7309 redef fun n_type
=(node
)
7314 redef fun n_kwas
=(node
)
7319 redef fun n_kwnullable
=(node
)
7321 _n_kwnullable
= node
7326 redef fun visit_all
(v
: Visitor)
7328 v
.enter_visit
(_n_type
)
7329 v
.enter_visit
(_n_kwas
)
7330 v
.enter_visit
(_n_kwnullable
)
7333 redef class AAsNotNullableExternCall
7334 init init_aasnotnullableexterncall
(
7335 n_type
: nullable AType,
7336 n_kwas
: nullable TKwas,
7337 n_kwnot
: nullable TKwnot,
7338 n_kwnullable
: nullable TKwnullable
7341 _n_type
= n_type
.as(not null)
7342 n_type
.parent
= self
7343 _n_kwas
= n_kwas
.as(not null)
7344 n_kwas
.parent
= self
7345 _n_kwnot
= n_kwnot
.as(not null)
7346 n_kwnot
.parent
= self
7347 _n_kwnullable
= n_kwnullable
.as(not null)
7348 n_kwnullable
.parent
= self
7351 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7353 if _n_type
== old_child
then
7354 n_type
= new_child
.as(AType)
7357 if _n_kwas
== old_child
then
7358 n_kwas
= new_child
.as(TKwas)
7361 if _n_kwnot
== old_child
then
7362 n_kwnot
= new_child
.as(TKwnot)
7365 if _n_kwnullable
== old_child
then
7366 n_kwnullable
= new_child
.as(TKwnullable)
7371 redef fun n_type
=(node
)
7376 redef fun n_kwas
=(node
)
7381 redef fun n_kwnot
=(node
)
7386 redef fun n_kwnullable
=(node
)
7388 _n_kwnullable
= node
7393 redef fun visit_all
(v
: Visitor)
7395 v
.enter_visit
(_n_type
)
7396 v
.enter_visit
(_n_kwas
)
7397 v
.enter_visit
(_n_kwnot
)
7398 v
.enter_visit
(_n_kwnullable
)
7401 redef class AInLanguage
7402 init init_ainlanguage
(
7403 n_kwin
: nullable TKwin,
7404 n_string
: nullable TString
7407 _n_kwin
= n_kwin
.as(not null)
7408 n_kwin
.parent
= self
7409 _n_string
= n_string
.as(not null)
7410 n_string
.parent
= self
7413 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7415 if _n_kwin
== old_child
then
7416 n_kwin
= new_child
.as(TKwin)
7419 if _n_string
== old_child
then
7420 n_string
= new_child
.as(TString)
7425 redef fun n_kwin
=(node
)
7430 redef fun n_string
=(node
)
7437 redef fun visit_all
(v
: Visitor)
7439 v
.enter_visit
(_n_kwin
)
7440 v
.enter_visit
(_n_string
)
7443 redef class AExternCodeBlock
7444 init init_aexterncodeblock
(
7445 n_in_language
: nullable AInLanguage,
7446 n_extern_code_segment
: nullable TExternCodeSegment
7449 _n_in_language
= n_in_language
7450 if n_in_language
!= null then n_in_language
.parent
= self
7451 _n_extern_code_segment
= n_extern_code_segment
.as(not null)
7452 n_extern_code_segment
.parent
= self
7455 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7457 if _n_in_language
== old_child
then
7458 n_in_language
= new_child
.as(nullable AInLanguage)
7461 if _n_extern_code_segment
== old_child
then
7462 n_extern_code_segment
= new_child
.as(TExternCodeSegment)
7467 redef fun n_in_language
=(node
)
7469 _n_in_language
= node
7470 if node
!= null then node
.parent
= self
7472 redef fun n_extern_code_segment
=(node
)
7474 _n_extern_code_segment
= node
7479 redef fun visit_all
(v
: Visitor)
7481 v
.enter_visit
(_n_in_language
)
7482 v
.enter_visit
(_n_extern_code_segment
)
7485 redef class AQualified
7486 init init_aqualified
(
7487 n_id
: Collection[Object], # Should be Collection[TId]
7488 n_classid
: nullable TClassid
7491 self.n_id
.unsafe_add_all
(n_id
)
7492 _n_classid
= n_classid
7493 if n_classid
!= null then n_classid
.parent
= self
7496 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7498 if n_id
.replace_child
(old_child
, new_child
) then return
7499 if _n_classid
== old_child
then
7500 n_classid
= new_child
.as(nullable TClassid)
7505 redef fun n_classid
=(node
)
7508 if node
!= null then node
.parent
= self
7512 redef fun visit_all
(v
: Visitor)
7515 v
.enter_visit
(_n_classid
)
7520 n_comment
: Collection[Object] # Should be Collection[TComment]
7523 self.n_comment
.unsafe_add_all
(n_comment
)
7526 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7528 if n_comment
.replace_child
(old_child
, new_child
) then return
7533 redef fun visit_all
(v
: Visitor)
7535 n_comment
.visit_all
(v
)
7538 redef class AAnnotations
7539 init init_aannotations
(
7541 n_opar
: nullable TOpar,
7542 n_items
: Collection[Object], # Should be Collection[AAnnotation]
7543 n_cpar
: nullable TCpar
7547 if n_at
!= null then n_at
.parent
= self
7549 if n_opar
!= null then n_opar
.parent
= self
7550 self.n_items
.unsafe_add_all
(n_items
)
7552 if n_cpar
!= null then n_cpar
.parent
= self
7555 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7557 if _n_at
== old_child
then
7558 n_at
= new_child
.as(nullable TAt)
7561 if _n_opar
== old_child
then
7562 n_opar
= new_child
.as(nullable TOpar)
7565 if n_items
.replace_child
(old_child
, new_child
) then return
7566 if _n_cpar
== old_child
then
7567 n_cpar
= new_child
.as(nullable TCpar)
7572 redef fun n_at
=(node
)
7575 if node
!= null then node
.parent
= self
7577 redef fun n_opar
=(node
)
7580 if node
!= null then node
.parent
= self
7582 redef fun n_cpar
=(node
)
7585 if node
!= null then node
.parent
= self
7589 redef fun visit_all
(v
: Visitor)
7591 v
.enter_visit
(_n_at
)
7592 v
.enter_visit
(_n_opar
)
7593 n_items
.visit_all
(v
)
7594 v
.enter_visit
(_n_cpar
)
7597 redef class AAnnotation
7598 init init_aannotation
(
7599 n_doc
: nullable ADoc,
7600 n_kwredef
: nullable TKwredef,
7601 n_visibility
: nullable AVisibility,
7602 n_atid
: nullable AAtid,
7603 n_opar
: nullable TOpar,
7604 n_args
: Collection[Object], # Should be Collection[AAtArg]
7605 n_cpar
: nullable TCpar,
7606 n_annotations
: nullable AAnnotations
7610 if n_doc
!= null then n_doc
.parent
= self
7611 _n_kwredef
= n_kwredef
7612 if n_kwredef
!= null then n_kwredef
.parent
= self
7613 _n_visibility
= n_visibility
7614 if n_visibility
!= null then n_visibility
.parent
= self
7615 _n_atid
= n_atid
.as(not null)
7616 n_atid
.parent
= self
7618 if n_opar
!= null then n_opar
.parent
= self
7619 self.n_args
.unsafe_add_all
(n_args
)
7621 if n_cpar
!= null then n_cpar
.parent
= self
7622 _n_annotations
= n_annotations
7623 if n_annotations
!= null then n_annotations
.parent
= self
7626 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7628 if _n_doc
== old_child
then
7629 n_doc
= new_child
.as(nullable ADoc)
7632 if _n_kwredef
== old_child
then
7633 n_kwredef
= new_child
.as(nullable TKwredef)
7636 if _n_visibility
== old_child
then
7637 n_visibility
= new_child
.as(nullable AVisibility)
7640 if _n_atid
== old_child
then
7641 n_atid
= new_child
.as(AAtid)
7644 if _n_opar
== old_child
then
7645 n_opar
= new_child
.as(nullable TOpar)
7648 if n_args
.replace_child
(old_child
, new_child
) then return
7649 if _n_cpar
== old_child
then
7650 n_cpar
= new_child
.as(nullable TCpar)
7653 if _n_annotations
== old_child
then
7654 n_annotations
= new_child
.as(nullable AAnnotations)
7659 redef fun n_doc
=(node
)
7662 if node
!= null then node
.parent
= self
7664 redef fun n_kwredef
=(node
)
7667 if node
!= null then node
.parent
= self
7669 redef fun n_visibility
=(node
)
7671 _n_visibility
= node
7672 if node
!= null then node
.parent
= self
7674 redef fun n_atid
=(node
)
7679 redef fun n_opar
=(node
)
7682 if node
!= null then node
.parent
= self
7684 redef fun n_cpar
=(node
)
7687 if node
!= null then node
.parent
= self
7689 redef fun n_annotations
=(node
)
7691 _n_annotations
= node
7692 if node
!= null then node
.parent
= self
7696 redef fun visit_all
(v
: Visitor)
7698 v
.enter_visit
(_n_doc
)
7699 v
.enter_visit
(_n_kwredef
)
7700 v
.enter_visit
(_n_visibility
)
7701 v
.enter_visit
(_n_atid
)
7702 v
.enter_visit
(_n_opar
)
7704 v
.enter_visit
(_n_cpar
)
7705 v
.enter_visit
(_n_annotations
)
7708 redef class ATypeAtArg
7709 init init_atypeatarg
(
7710 n_type
: nullable AType
7713 _n_type
= n_type
.as(not null)
7714 n_type
.parent
= self
7717 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7719 if _n_type
== old_child
then
7720 n_type
= new_child
.as(AType)
7725 redef fun n_type
=(node
)
7732 redef fun visit_all
(v
: Visitor)
7734 v
.enter_visit
(_n_type
)
7737 redef class AExprAtArg
7738 init init_aexpratarg
(
7739 n_expr
: nullable AExpr
7742 _n_expr
= n_expr
.as(not null)
7743 n_expr
.parent
= self
7746 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7748 if _n_expr
== old_child
then
7749 n_expr
= new_child
.as(AExpr)
7754 redef fun n_expr
=(node
)
7761 redef fun visit_all
(v
: Visitor)
7763 v
.enter_visit
(_n_expr
)
7766 redef class AAtAtArg
7767 init init_aatatarg
(
7768 n_annotations
: nullable AAnnotations
7771 _n_annotations
= n_annotations
.as(not null)
7772 n_annotations
.parent
= self
7775 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7777 if _n_annotations
== old_child
then
7778 n_annotations
= new_child
.as(AAnnotations)
7783 redef fun n_annotations
=(node
)
7785 _n_annotations
= node
7790 redef fun visit_all
(v
: Visitor)
7792 v
.enter_visit
(_n_annotations
)
7800 _n_id
= n_id
.as(not null)
7804 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7806 if _n_id
== old_child
then
7807 n_id
= new_child
.as(TId)
7812 redef fun n_id
=(node
)
7819 redef fun visit_all
(v
: Visitor)
7821 v
.enter_visit
(_n_id
)
7824 redef class AKwexternAtid
7825 init init_akwexternatid
(
7826 n_id
: nullable TKwextern
7829 _n_id
= n_id
.as(not null)
7833 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7835 if _n_id
== old_child
then
7836 n_id
= new_child
.as(TKwextern)
7841 redef fun n_id
=(node
)
7848 redef fun visit_all
(v
: Visitor)
7850 v
.enter_visit
(_n_id
)
7853 redef class AKwinternAtid
7854 init init_akwinternatid
(
7855 n_id
: nullable TKwintern
7858 _n_id
= n_id
.as(not null)
7862 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7864 if _n_id
== old_child
then
7865 n_id
= new_child
.as(TKwintern)
7870 redef fun n_id
=(node
)
7877 redef fun visit_all
(v
: Visitor)
7879 v
.enter_visit
(_n_id
)
7882 redef class AKwreadableAtid
7883 init init_akwreadableatid
(
7884 n_id
: nullable TKwreadable
7887 _n_id
= n_id
.as(not null)
7891 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7893 if _n_id
== old_child
then
7894 n_id
= new_child
.as(TKwreadable)
7899 redef fun n_id
=(node
)
7906 redef fun visit_all
(v
: Visitor)
7908 v
.enter_visit
(_n_id
)
7911 redef class AKwwritableAtid
7912 init init_akwwritableatid
(
7913 n_id
: nullable TKwwritable
7916 _n_id
= n_id
.as(not null)
7920 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7922 if _n_id
== old_child
then
7923 n_id
= new_child
.as(TKwwritable)
7928 redef fun n_id
=(node
)
7935 redef fun visit_all
(v
: Visitor)
7937 v
.enter_visit
(_n_id
)
7940 redef class AKwimportAtid
7941 init init_akwimportatid
(
7942 n_id
: nullable TKwimport
7945 _n_id
= n_id
.as(not null)
7949 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7951 if _n_id
== old_child
then
7952 n_id
= new_child
.as(TKwimport)
7957 redef fun n_id
=(node
)
7964 redef fun visit_all
(v
: Visitor)
7966 v
.enter_visit
(_n_id
)
7971 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7973 if _n_base
== old_child
then
7974 if new_child
== null then
7976 new_child
.parent
= self
7977 assert new_child
isa AModule
7980 old_child
.parent
= null
7985 redef fun visit_all
(v
: Visitor)
7987 if _n_base
!= null then
7988 v
.enter_visit
(_n_base
.as(not null))
7990 v
.enter_visit
(_n_eof
)