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_kwmodule
: nullable TKwmodule,
54 n_name
: nullable AModuleName,
55 n_annotations
: nullable AAnnotations
59 if n_doc
!= null then n_doc
.parent
= self
60 _n_kwmodule
= n_kwmodule
.as(not null)
61 n_kwmodule
.parent
= self
62 _n_name
= n_name
.as(not null)
64 _n_annotations
= n_annotations
65 if n_annotations
!= null then n_annotations
.parent
= self
68 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
70 if _n_doc
== old_child
then
71 n_doc
= new_child
.as(nullable ADoc)
74 if _n_kwmodule
== old_child
then
75 n_kwmodule
= new_child
.as(TKwmodule)
78 if _n_name
== old_child
then
79 n_name
= new_child
.as(AModuleName)
82 if _n_annotations
== old_child
then
83 n_annotations
= new_child
.as(nullable AAnnotations)
88 redef fun n_doc
=(node
)
91 if node
!= null then node
.parent
= self
93 redef fun n_kwmodule
=(node
)
98 redef fun n_name
=(node
)
103 redef fun n_annotations
=(node
)
105 _n_annotations
= node
106 if node
!= null then node
.parent
= self
110 redef fun visit_all
(v
: Visitor)
112 v
.enter_visit
(_n_doc
)
113 v
.enter_visit
(_n_kwmodule
)
114 v
.enter_visit
(_n_name
)
115 v
.enter_visit
(_n_annotations
)
118 redef class AStdImport
119 init init_astdimport
(
120 n_visibility
: nullable AVisibility,
121 n_kwimport
: nullable TKwimport,
122 n_name
: nullable AModuleName,
123 n_annotations
: nullable AAnnotations
126 _n_visibility
= n_visibility
.as(not null)
127 n_visibility
.parent
= self
128 _n_kwimport
= n_kwimport
.as(not null)
129 n_kwimport
.parent
= self
130 _n_name
= n_name
.as(not null)
132 _n_annotations
= n_annotations
133 if n_annotations
!= null then n_annotations
.parent
= self
136 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
138 if _n_visibility
== old_child
then
139 n_visibility
= new_child
.as(AVisibility)
142 if _n_kwimport
== old_child
then
143 n_kwimport
= new_child
.as(TKwimport)
146 if _n_name
== old_child
then
147 n_name
= new_child
.as(AModuleName)
150 if _n_annotations
== old_child
then
151 n_annotations
= new_child
.as(nullable AAnnotations)
156 redef fun n_visibility
=(node
)
161 redef fun n_kwimport
=(node
)
166 redef fun n_name
=(node
)
171 redef fun n_annotations
=(node
)
173 _n_annotations
= node
174 if node
!= null then node
.parent
= self
178 redef fun visit_all
(v
: Visitor)
180 v
.enter_visit
(_n_visibility
)
181 v
.enter_visit
(_n_kwimport
)
182 v
.enter_visit
(_n_name
)
183 v
.enter_visit
(_n_annotations
)
186 redef class ANoImport
187 init init_anoimport
(
188 n_visibility
: nullable AVisibility,
189 n_kwimport
: nullable TKwimport,
190 n_kwend
: nullable TKwend
193 _n_visibility
= n_visibility
.as(not null)
194 n_visibility
.parent
= self
195 _n_kwimport
= n_kwimport
.as(not null)
196 n_kwimport
.parent
= self
197 _n_kwend
= n_kwend
.as(not null)
198 n_kwend
.parent
= self
201 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
203 if _n_visibility
== old_child
then
204 n_visibility
= new_child
.as(AVisibility)
207 if _n_kwimport
== old_child
then
208 n_kwimport
= new_child
.as(TKwimport)
211 if _n_kwend
== old_child
then
212 n_kwend
= new_child
.as(TKwend)
217 redef fun n_visibility
=(node
)
222 redef fun n_kwimport
=(node
)
227 redef fun n_kwend
=(node
)
234 redef fun visit_all
(v
: Visitor)
236 v
.enter_visit
(_n_visibility
)
237 v
.enter_visit
(_n_kwimport
)
238 v
.enter_visit
(_n_kwend
)
241 redef class APublicVisibility
242 init init_apublicvisibility
246 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
252 redef fun visit_all
(v
: Visitor)
256 redef class APrivateVisibility
257 init init_aprivatevisibility
(
258 n_kwprivate
: nullable TKwprivate
261 _n_kwprivate
= n_kwprivate
.as(not null)
262 n_kwprivate
.parent
= self
265 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
267 if _n_kwprivate
== old_child
then
268 n_kwprivate
= new_child
.as(TKwprivate)
273 redef fun n_kwprivate
=(node
)
280 redef fun visit_all
(v
: Visitor)
282 v
.enter_visit
(_n_kwprivate
)
285 redef class AProtectedVisibility
286 init init_aprotectedvisibility
(
287 n_kwprotected
: nullable TKwprotected
290 _n_kwprotected
= n_kwprotected
.as(not null)
291 n_kwprotected
.parent
= self
294 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
296 if _n_kwprotected
== old_child
then
297 n_kwprotected
= new_child
.as(TKwprotected)
302 redef fun n_kwprotected
=(node
)
304 _n_kwprotected
= node
309 redef fun visit_all
(v
: Visitor)
311 v
.enter_visit
(_n_kwprotected
)
314 redef class AIntrudeVisibility
315 init init_aintrudevisibility
(
316 n_kwintrude
: nullable TKwintrude
319 _n_kwintrude
= n_kwintrude
.as(not null)
320 n_kwintrude
.parent
= self
323 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
325 if _n_kwintrude
== old_child
then
326 n_kwintrude
= new_child
.as(TKwintrude)
331 redef fun n_kwintrude
=(node
)
338 redef fun visit_all
(v
: Visitor)
340 v
.enter_visit
(_n_kwintrude
)
343 redef class AStdClassdef
344 init init_astdclassdef
(
345 n_doc
: nullable ADoc,
346 n_kwredef
: nullable TKwredef,
347 n_visibility
: nullable AVisibility,
348 n_classkind
: nullable AClasskind,
349 n_id
: nullable TClassid,
350 n_formaldefs
: Collection[Object], # Should be Collection[AFormaldef]
351 n_annotations
: nullable AAnnotations,
352 n_extern_code_block
: nullable AExternCodeBlock,
353 n_superclasses
: Collection[Object], # Should be Collection[ASuperclass]
354 n_propdefs
: Collection[Object], # Should be Collection[APropdef]
355 n_kwend
: nullable TKwend
359 if n_doc
!= null then n_doc
.parent
= self
360 _n_kwredef
= n_kwredef
361 if n_kwredef
!= null then n_kwredef
.parent
= self
362 _n_visibility
= n_visibility
.as(not null)
363 n_visibility
.parent
= self
364 _n_classkind
= n_classkind
.as(not null)
365 n_classkind
.parent
= self
367 if n_id
!= null then n_id
.parent
= self
368 self.n_formaldefs
.unsafe_add_all
(n_formaldefs
)
369 _n_annotations
= n_annotations
370 if n_annotations
!= null then n_annotations
.parent
= self
371 _n_extern_code_block
= n_extern_code_block
372 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
373 self.n_superclasses
.unsafe_add_all
(n_superclasses
)
374 self.n_propdefs
.unsafe_add_all
(n_propdefs
)
375 _n_kwend
= n_kwend
.as(not null)
376 n_kwend
.parent
= self
379 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
381 if _n_doc
== old_child
then
382 n_doc
= new_child
.as(nullable ADoc)
385 if _n_kwredef
== old_child
then
386 n_kwredef
= new_child
.as(nullable TKwredef)
389 if _n_visibility
== old_child
then
390 n_visibility
= new_child
.as(AVisibility)
393 if _n_classkind
== old_child
then
394 n_classkind
= new_child
.as(AClasskind)
397 if _n_id
== old_child
then
398 n_id
= new_child
.as(nullable TClassid)
401 if n_formaldefs
.replace_child
(old_child
, new_child
) then return
402 if _n_annotations
== old_child
then
403 n_annotations
= new_child
.as(nullable AAnnotations)
406 if _n_extern_code_block
== old_child
then
407 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
410 if n_superclasses
.replace_child
(old_child
, new_child
) then return
411 if n_propdefs
.replace_child
(old_child
, new_child
) then return
412 if _n_kwend
== old_child
then
413 n_kwend
= new_child
.as(TKwend)
418 redef fun n_doc
=(node
)
421 if node
!= null then node
.parent
= self
423 redef fun n_kwredef
=(node
)
426 if node
!= null then node
.parent
= self
428 redef fun n_visibility
=(node
)
433 redef fun n_classkind
=(node
)
438 redef fun n_id
=(node
)
441 if node
!= null then node
.parent
= self
443 redef fun n_annotations
=(node
)
445 _n_annotations
= node
446 if node
!= null then node
.parent
= self
448 redef fun n_extern_code_block
=(node
)
450 _n_extern_code_block
= node
451 if node
!= null then node
.parent
= self
453 redef fun n_kwend
=(node
)
460 redef fun visit_all
(v
: Visitor)
462 v
.enter_visit
(_n_doc
)
463 v
.enter_visit
(_n_kwredef
)
464 v
.enter_visit
(_n_visibility
)
465 v
.enter_visit
(_n_classkind
)
467 n_formaldefs
.visit_all
(v
)
468 v
.enter_visit
(_n_annotations
)
469 v
.enter_visit
(_n_extern_code_block
)
470 n_superclasses
.visit_all
(v
)
471 n_propdefs
.visit_all
(v
)
472 v
.enter_visit
(_n_kwend
)
475 redef class ATopClassdef
476 init init_atopclassdef
(
477 n_propdefs
: Collection[Object] # Should be Collection[APropdef]
480 self.n_propdefs
.unsafe_add_all
(n_propdefs
)
483 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
485 if n_propdefs
.replace_child
(old_child
, new_child
) then return
490 redef fun visit_all
(v
: Visitor)
492 n_propdefs
.visit_all
(v
)
495 redef class AMainClassdef
496 init init_amainclassdef
(
497 n_propdefs
: Collection[Object] # Should be Collection[APropdef]
500 self.n_propdefs
.unsafe_add_all
(n_propdefs
)
503 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
505 if n_propdefs
.replace_child
(old_child
, new_child
) then return
510 redef fun visit_all
(v
: Visitor)
512 n_propdefs
.visit_all
(v
)
515 redef class AConcreteClasskind
516 init init_aconcreteclasskind
(
517 n_kwclass
: nullable TKwclass
520 _n_kwclass
= n_kwclass
.as(not null)
521 n_kwclass
.parent
= self
524 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
526 if _n_kwclass
== old_child
then
527 n_kwclass
= new_child
.as(TKwclass)
532 redef fun n_kwclass
=(node
)
539 redef fun visit_all
(v
: Visitor)
541 v
.enter_visit
(_n_kwclass
)
544 redef class AAbstractClasskind
545 init init_aabstractclasskind
(
546 n_kwabstract
: nullable TKwabstract,
547 n_kwclass
: nullable TKwclass
550 _n_kwabstract
= n_kwabstract
.as(not null)
551 n_kwabstract
.parent
= self
552 _n_kwclass
= n_kwclass
.as(not null)
553 n_kwclass
.parent
= self
556 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
558 if _n_kwabstract
== old_child
then
559 n_kwabstract
= new_child
.as(TKwabstract)
562 if _n_kwclass
== old_child
then
563 n_kwclass
= new_child
.as(TKwclass)
568 redef fun n_kwabstract
=(node
)
573 redef fun n_kwclass
=(node
)
580 redef fun visit_all
(v
: Visitor)
582 v
.enter_visit
(_n_kwabstract
)
583 v
.enter_visit
(_n_kwclass
)
586 redef class AInterfaceClasskind
587 init init_ainterfaceclasskind
(
588 n_kwinterface
: nullable TKwinterface
591 _n_kwinterface
= n_kwinterface
.as(not null)
592 n_kwinterface
.parent
= self
595 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
597 if _n_kwinterface
== old_child
then
598 n_kwinterface
= new_child
.as(TKwinterface)
603 redef fun n_kwinterface
=(node
)
605 _n_kwinterface
= node
610 redef fun visit_all
(v
: Visitor)
612 v
.enter_visit
(_n_kwinterface
)
615 redef class AEnumClasskind
616 init init_aenumclasskind
(
617 n_kwenum
: nullable TKwenum
620 _n_kwenum
= n_kwenum
.as(not null)
621 n_kwenum
.parent
= self
624 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
626 if _n_kwenum
== old_child
then
627 n_kwenum
= new_child
.as(TKwenum)
632 redef fun n_kwenum
=(node
)
639 redef fun visit_all
(v
: Visitor)
641 v
.enter_visit
(_n_kwenum
)
644 redef class AExternClasskind
645 init init_aexternclasskind
(
646 n_kwextern
: nullable TKwextern,
647 n_kwclass
: nullable TKwclass
650 _n_kwextern
= n_kwextern
.as(not null)
651 n_kwextern
.parent
= self
652 _n_kwclass
= n_kwclass
653 if n_kwclass
!= null then n_kwclass
.parent
= self
656 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
658 if _n_kwextern
== old_child
then
659 n_kwextern
= new_child
.as(TKwextern)
662 if _n_kwclass
== old_child
then
663 n_kwclass
= new_child
.as(nullable TKwclass)
668 redef fun n_kwextern
=(node
)
673 redef fun n_kwclass
=(node
)
676 if node
!= null then node
.parent
= self
680 redef fun visit_all
(v
: Visitor)
682 v
.enter_visit
(_n_kwextern
)
683 v
.enter_visit
(_n_kwclass
)
686 redef class AFormaldef
687 init init_aformaldef
(
688 n_id
: nullable TClassid,
689 n_type
: nullable AType,
690 n_annotations
: nullable AAnnotations
693 _n_id
= n_id
.as(not null)
696 if n_type
!= null then n_type
.parent
= self
697 _n_annotations
= n_annotations
698 if n_annotations
!= null then n_annotations
.parent
= self
701 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
703 if _n_id
== old_child
then
704 n_id
= new_child
.as(TClassid)
707 if _n_type
== old_child
then
708 n_type
= new_child
.as(nullable AType)
711 if _n_annotations
== old_child
then
712 n_annotations
= new_child
.as(nullable AAnnotations)
717 redef fun n_id
=(node
)
722 redef fun n_type
=(node
)
725 if node
!= null then node
.parent
= self
727 redef fun n_annotations
=(node
)
729 _n_annotations
= node
730 if node
!= null then node
.parent
= self
734 redef fun visit_all
(v
: Visitor)
737 v
.enter_visit
(_n_type
)
738 v
.enter_visit
(_n_annotations
)
741 redef class ASuperclass
742 init init_asuperclass
(
743 n_kwsuper
: nullable TKwsuper,
744 n_type
: nullable AType,
745 n_annotations
: nullable AAnnotations
748 _n_kwsuper
= n_kwsuper
.as(not null)
749 n_kwsuper
.parent
= self
750 _n_type
= n_type
.as(not null)
752 _n_annotations
= n_annotations
753 if n_annotations
!= null then n_annotations
.parent
= self
756 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
758 if _n_kwsuper
== old_child
then
759 n_kwsuper
= new_child
.as(TKwsuper)
762 if _n_type
== old_child
then
763 n_type
= new_child
.as(AType)
766 if _n_annotations
== old_child
then
767 n_annotations
= new_child
.as(nullable AAnnotations)
772 redef fun n_kwsuper
=(node
)
777 redef fun n_type
=(node
)
782 redef fun n_annotations
=(node
)
784 _n_annotations
= node
785 if node
!= null then node
.parent
= self
789 redef fun visit_all
(v
: Visitor)
791 v
.enter_visit
(_n_kwsuper
)
792 v
.enter_visit
(_n_type
)
793 v
.enter_visit
(_n_annotations
)
796 redef class AAttrPropdef
797 init init_aattrpropdef
(
798 n_doc
: nullable ADoc,
799 n_readable
: nullable AAble,
800 n_writable
: nullable AAble,
801 n_kwredef
: nullable TKwredef,
802 n_visibility
: nullable AVisibility,
803 n_kwvar
: nullable TKwvar,
804 n_id
: nullable TAttrid,
806 n_type
: nullable AType,
807 n_annotations
: nullable AAnnotations,
808 n_expr
: nullable AExpr
812 if n_doc
!= null then n_doc
.parent
= self
813 _n_readable
= n_readable
814 if n_readable
!= null then n_readable
.parent
= self
815 _n_writable
= n_writable
816 if n_writable
!= null then n_writable
.parent
= self
817 _n_kwredef
= n_kwredef
818 if n_kwredef
!= null then n_kwredef
.parent
= self
819 _n_visibility
= n_visibility
.as(not null)
820 n_visibility
.parent
= self
821 _n_kwvar
= n_kwvar
.as(not null)
822 n_kwvar
.parent
= self
824 if n_id
!= null then n_id
.parent
= self
826 if n_id2
!= null then n_id2
.parent
= self
828 if n_type
!= null then n_type
.parent
= self
829 _n_annotations
= n_annotations
830 if n_annotations
!= null then n_annotations
.parent
= self
832 if n_expr
!= null then n_expr
.parent
= self
835 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
837 if _n_doc
== old_child
then
838 n_doc
= new_child
.as(nullable ADoc)
841 if _n_readable
== old_child
then
842 n_readable
= new_child
.as(nullable AAble)
845 if _n_writable
== old_child
then
846 n_writable
= new_child
.as(nullable AAble)
849 if _n_kwredef
== old_child
then
850 n_kwredef
= new_child
.as(nullable TKwredef)
853 if _n_visibility
== old_child
then
854 n_visibility
= new_child
.as(AVisibility)
857 if _n_kwvar
== old_child
then
858 n_kwvar
= new_child
.as(TKwvar)
861 if _n_id
== old_child
then
862 n_id
= new_child
.as(nullable TAttrid)
865 if _n_id2
== old_child
then
866 n_id2
= new_child
.as(nullable TId)
869 if _n_type
== old_child
then
870 n_type
= new_child
.as(nullable AType)
873 if _n_annotations
== old_child
then
874 n_annotations
= new_child
.as(nullable AAnnotations)
877 if _n_expr
== old_child
then
878 n_expr
= new_child
.as(nullable AExpr)
883 redef fun n_doc
=(node
)
886 if node
!= null then node
.parent
= self
888 redef fun n_readable
=(node
)
891 if node
!= null then node
.parent
= self
893 redef fun n_writable
=(node
)
896 if node
!= null then node
.parent
= self
898 redef fun n_kwredef
=(node
)
901 if node
!= null then node
.parent
= self
903 redef fun n_visibility
=(node
)
908 redef fun n_kwvar
=(node
)
913 redef fun n_id
=(node
)
916 if node
!= null then node
.parent
= self
918 redef fun n_id2
=(node
)
921 if node
!= null then node
.parent
= self
923 redef fun n_type
=(node
)
926 if node
!= null then node
.parent
= self
928 redef fun n_annotations
=(node
)
930 _n_annotations
= node
931 if node
!= null then node
.parent
= self
933 redef fun n_expr
=(node
)
936 if node
!= null then node
.parent
= self
940 redef fun visit_all
(v
: Visitor)
942 v
.enter_visit
(_n_doc
)
943 v
.enter_visit
(_n_readable
)
944 v
.enter_visit
(_n_writable
)
945 v
.enter_visit
(_n_kwredef
)
946 v
.enter_visit
(_n_visibility
)
947 v
.enter_visit
(_n_kwvar
)
949 v
.enter_visit
(_n_id2
)
950 v
.enter_visit
(_n_type
)
951 v
.enter_visit
(_n_annotations
)
952 v
.enter_visit
(_n_expr
)
955 redef class AMethPropdef
956 init init_amethpropdef
(
957 n_doc
: nullable ADoc,
958 n_kwredef
: nullable TKwredef,
959 n_visibility
: nullable AVisibility,
960 n_methid
: nullable AMethid,
961 n_signature
: nullable ASignature
965 if n_doc
!= null then n_doc
.parent
= self
966 _n_kwredef
= n_kwredef
967 if n_kwredef
!= null then n_kwredef
.parent
= self
968 _n_visibility
= n_visibility
.as(not null)
969 n_visibility
.parent
= self
970 _n_methid
= n_methid
.as(not null)
971 n_methid
.parent
= self
972 _n_signature
= n_signature
.as(not null)
973 n_signature
.parent
= self
976 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
978 if _n_doc
== old_child
then
979 n_doc
= new_child
.as(nullable ADoc)
982 if _n_kwredef
== old_child
then
983 n_kwredef
= new_child
.as(nullable TKwredef)
986 if _n_visibility
== old_child
then
987 n_visibility
= new_child
.as(AVisibility)
990 if _n_methid
== old_child
then
991 n_methid
= new_child
.as(AMethid)
994 if _n_signature
== old_child
then
995 n_signature
= new_child
.as(ASignature)
1000 redef fun n_doc
=(node
)
1003 if node
!= null then node
.parent
= self
1005 redef fun n_kwredef
=(node
)
1008 if node
!= null then node
.parent
= self
1010 redef fun n_visibility
=(node
)
1012 _n_visibility
= node
1015 redef fun n_methid
=(node
)
1020 redef fun n_signature
=(node
)
1027 redef fun visit_all
(v
: Visitor)
1029 v
.enter_visit
(_n_doc
)
1030 v
.enter_visit
(_n_kwredef
)
1031 v
.enter_visit
(_n_visibility
)
1032 v
.enter_visit
(_n_methid
)
1033 v
.enter_visit
(_n_signature
)
1036 redef class ADeferredMethPropdef
1037 init init_adeferredmethpropdef
(
1038 n_doc
: nullable ADoc,
1039 n_kwredef
: nullable TKwredef,
1040 n_visibility
: nullable AVisibility,
1041 n_kwmeth
: nullable TKwmeth,
1042 n_methid
: nullable AMethid,
1043 n_signature
: nullable ASignature,
1044 n_annotations
: nullable AAnnotations
1048 if n_doc
!= null then n_doc
.parent
= self
1049 _n_kwredef
= n_kwredef
1050 if n_kwredef
!= null then n_kwredef
.parent
= self
1051 _n_visibility
= n_visibility
.as(not null)
1052 n_visibility
.parent
= self
1053 _n_kwmeth
= n_kwmeth
.as(not null)
1054 n_kwmeth
.parent
= self
1055 _n_methid
= n_methid
.as(not null)
1056 n_methid
.parent
= self
1057 _n_signature
= n_signature
.as(not null)
1058 n_signature
.parent
= self
1059 _n_annotations
= n_annotations
1060 if n_annotations
!= null then n_annotations
.parent
= self
1063 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1065 if _n_doc
== old_child
then
1066 n_doc
= new_child
.as(nullable ADoc)
1069 if _n_kwredef
== old_child
then
1070 n_kwredef
= new_child
.as(nullable TKwredef)
1073 if _n_visibility
== old_child
then
1074 n_visibility
= new_child
.as(AVisibility)
1077 if _n_kwmeth
== old_child
then
1078 n_kwmeth
= new_child
.as(TKwmeth)
1081 if _n_methid
== old_child
then
1082 n_methid
= new_child
.as(AMethid)
1085 if _n_signature
== old_child
then
1086 n_signature
= new_child
.as(ASignature)
1089 if _n_annotations
== old_child
then
1090 n_annotations
= new_child
.as(nullable AAnnotations)
1095 redef fun n_doc
=(node
)
1098 if node
!= null then node
.parent
= self
1100 redef fun n_kwredef
=(node
)
1103 if node
!= null then node
.parent
= self
1105 redef fun n_visibility
=(node
)
1107 _n_visibility
= node
1110 redef fun n_kwmeth
=(node
)
1115 redef fun n_methid
=(node
)
1120 redef fun n_signature
=(node
)
1125 redef fun n_annotations
=(node
)
1127 _n_annotations
= node
1128 if node
!= null then node
.parent
= self
1132 redef fun visit_all
(v
: Visitor)
1134 v
.enter_visit
(_n_doc
)
1135 v
.enter_visit
(_n_kwredef
)
1136 v
.enter_visit
(_n_visibility
)
1137 v
.enter_visit
(_n_kwmeth
)
1138 v
.enter_visit
(_n_methid
)
1139 v
.enter_visit
(_n_signature
)
1140 v
.enter_visit
(_n_annotations
)
1143 redef class AInternMethPropdef
1144 init init_ainternmethpropdef
(
1145 n_doc
: nullable ADoc,
1146 n_kwredef
: nullable TKwredef,
1147 n_visibility
: nullable AVisibility,
1148 n_kwmeth
: nullable TKwmeth,
1149 n_methid
: nullable AMethid,
1150 n_signature
: nullable ASignature
1154 if n_doc
!= null then n_doc
.parent
= self
1155 _n_kwredef
= n_kwredef
1156 if n_kwredef
!= null then n_kwredef
.parent
= self
1157 _n_visibility
= n_visibility
.as(not null)
1158 n_visibility
.parent
= self
1159 _n_kwmeth
= n_kwmeth
.as(not null)
1160 n_kwmeth
.parent
= self
1161 _n_methid
= n_methid
.as(not null)
1162 n_methid
.parent
= self
1163 _n_signature
= n_signature
.as(not null)
1164 n_signature
.parent
= self
1167 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1169 if _n_doc
== old_child
then
1170 n_doc
= new_child
.as(nullable ADoc)
1173 if _n_kwredef
== old_child
then
1174 n_kwredef
= new_child
.as(nullable TKwredef)
1177 if _n_visibility
== old_child
then
1178 n_visibility
= new_child
.as(AVisibility)
1181 if _n_kwmeth
== old_child
then
1182 n_kwmeth
= new_child
.as(TKwmeth)
1185 if _n_methid
== old_child
then
1186 n_methid
= new_child
.as(AMethid)
1189 if _n_signature
== old_child
then
1190 n_signature
= new_child
.as(ASignature)
1195 redef fun n_doc
=(node
)
1198 if node
!= null then node
.parent
= self
1200 redef fun n_kwredef
=(node
)
1203 if node
!= null then node
.parent
= self
1205 redef fun n_visibility
=(node
)
1207 _n_visibility
= node
1210 redef fun n_kwmeth
=(node
)
1215 redef fun n_methid
=(node
)
1220 redef fun n_signature
=(node
)
1227 redef fun visit_all
(v
: Visitor)
1229 v
.enter_visit
(_n_doc
)
1230 v
.enter_visit
(_n_kwredef
)
1231 v
.enter_visit
(_n_visibility
)
1232 v
.enter_visit
(_n_kwmeth
)
1233 v
.enter_visit
(_n_methid
)
1234 v
.enter_visit
(_n_signature
)
1237 redef class AInternNewPropdef
1238 init init_ainternnewpropdef
(
1239 n_doc
: nullable ADoc,
1240 n_kwredef
: nullable TKwredef,
1241 n_visibility
: nullable AVisibility,
1242 n_kwnew
: nullable TKwnew,
1243 n_methid
: nullable AMethid,
1244 n_signature
: nullable ASignature
1248 if n_doc
!= null then n_doc
.parent
= self
1249 _n_kwredef
= n_kwredef
1250 if n_kwredef
!= null then n_kwredef
.parent
= self
1251 _n_visibility
= n_visibility
.as(not null)
1252 n_visibility
.parent
= self
1253 _n_kwnew
= n_kwnew
.as(not null)
1254 n_kwnew
.parent
= self
1255 _n_methid
= n_methid
1256 if n_methid
!= null then n_methid
.parent
= self
1257 _n_signature
= n_signature
.as(not null)
1258 n_signature
.parent
= self
1261 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1263 if _n_doc
== old_child
then
1264 n_doc
= new_child
.as(nullable ADoc)
1267 if _n_kwredef
== old_child
then
1268 n_kwredef
= new_child
.as(nullable TKwredef)
1271 if _n_visibility
== old_child
then
1272 n_visibility
= new_child
.as(AVisibility)
1275 if _n_kwnew
== old_child
then
1276 n_kwnew
= new_child
.as(TKwnew)
1279 if _n_methid
== old_child
then
1280 n_methid
= new_child
.as(nullable AMethid)
1283 if _n_signature
== old_child
then
1284 n_signature
= new_child
.as(ASignature)
1289 redef fun n_doc
=(node
)
1292 if node
!= null then node
.parent
= self
1294 redef fun n_kwredef
=(node
)
1297 if node
!= null then node
.parent
= self
1299 redef fun n_visibility
=(node
)
1301 _n_visibility
= node
1304 redef fun n_kwnew
=(node
)
1309 redef fun n_methid
=(node
)
1312 if node
!= null then node
.parent
= self
1314 redef fun n_signature
=(node
)
1321 redef fun visit_all
(v
: Visitor)
1323 v
.enter_visit
(_n_doc
)
1324 v
.enter_visit
(_n_kwredef
)
1325 v
.enter_visit
(_n_visibility
)
1326 v
.enter_visit
(_n_kwnew
)
1327 v
.enter_visit
(_n_methid
)
1328 v
.enter_visit
(_n_signature
)
1331 redef class AExternMethPropdef
1332 init init_aexternmethpropdef
(
1333 n_doc
: nullable ADoc,
1334 n_kwredef
: nullable TKwredef,
1335 n_visibility
: nullable AVisibility,
1336 n_kwmeth
: nullable TKwmeth,
1337 n_methid
: nullable AMethid,
1338 n_signature
: nullable ASignature,
1339 n_extern
: nullable TString,
1340 n_extern_calls
: nullable AExternCalls,
1341 n_extern_code_block
: nullable AExternCodeBlock
1345 if n_doc
!= null then n_doc
.parent
= self
1346 _n_kwredef
= n_kwredef
1347 if n_kwredef
!= null then n_kwredef
.parent
= self
1348 _n_visibility
= n_visibility
.as(not null)
1349 n_visibility
.parent
= self
1350 _n_kwmeth
= n_kwmeth
.as(not null)
1351 n_kwmeth
.parent
= self
1352 _n_methid
= n_methid
.as(not null)
1353 n_methid
.parent
= self
1354 _n_signature
= n_signature
.as(not null)
1355 n_signature
.parent
= self
1356 _n_extern
= n_extern
1357 if n_extern
!= null then n_extern
.parent
= self
1358 _n_extern_calls
= n_extern_calls
1359 if n_extern_calls
!= null then n_extern_calls
.parent
= self
1360 _n_extern_code_block
= n_extern_code_block
1361 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
1364 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1366 if _n_doc
== old_child
then
1367 n_doc
= new_child
.as(nullable ADoc)
1370 if _n_kwredef
== old_child
then
1371 n_kwredef
= new_child
.as(nullable TKwredef)
1374 if _n_visibility
== old_child
then
1375 n_visibility
= new_child
.as(AVisibility)
1378 if _n_kwmeth
== old_child
then
1379 n_kwmeth
= new_child
.as(TKwmeth)
1382 if _n_methid
== old_child
then
1383 n_methid
= new_child
.as(AMethid)
1386 if _n_signature
== old_child
then
1387 n_signature
= new_child
.as(ASignature)
1390 if _n_extern
== old_child
then
1391 n_extern
= new_child
.as(nullable TString)
1394 if _n_extern_calls
== old_child
then
1395 n_extern_calls
= new_child
.as(nullable AExternCalls)
1398 if _n_extern_code_block
== old_child
then
1399 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
1404 redef fun n_doc
=(node
)
1407 if node
!= null then node
.parent
= self
1409 redef fun n_kwredef
=(node
)
1412 if node
!= null then node
.parent
= self
1414 redef fun n_visibility
=(node
)
1416 _n_visibility
= node
1419 redef fun n_kwmeth
=(node
)
1424 redef fun n_methid
=(node
)
1429 redef fun n_signature
=(node
)
1434 redef fun n_extern
=(node
)
1437 if node
!= null then node
.parent
= self
1439 redef fun n_extern_calls
=(node
)
1441 _n_extern_calls
= node
1442 if node
!= null then node
.parent
= self
1444 redef fun n_extern_code_block
=(node
)
1446 _n_extern_code_block
= node
1447 if node
!= null then node
.parent
= self
1451 redef fun visit_all
(v
: Visitor)
1453 v
.enter_visit
(_n_doc
)
1454 v
.enter_visit
(_n_kwredef
)
1455 v
.enter_visit
(_n_visibility
)
1456 v
.enter_visit
(_n_kwmeth
)
1457 v
.enter_visit
(_n_methid
)
1458 v
.enter_visit
(_n_signature
)
1459 v
.enter_visit
(_n_extern
)
1460 v
.enter_visit
(_n_extern_calls
)
1461 v
.enter_visit
(_n_extern_code_block
)
1464 redef class AConcreteMethPropdef
1465 init init_aconcretemethpropdef
(
1466 n_doc
: nullable ADoc,
1467 n_kwredef
: nullable TKwredef,
1468 n_visibility
: nullable AVisibility,
1469 n_kwmeth
: nullable TKwmeth,
1470 n_methid
: nullable AMethid,
1471 n_signature
: nullable ASignature,
1472 n_annotations
: nullable AAnnotations,
1473 n_block
: nullable AExpr
1477 if n_doc
!= null then n_doc
.parent
= self
1478 _n_kwredef
= n_kwredef
1479 if n_kwredef
!= null then n_kwredef
.parent
= self
1480 _n_visibility
= n_visibility
.as(not null)
1481 n_visibility
.parent
= self
1482 _n_kwmeth
= n_kwmeth
.as(not null)
1483 n_kwmeth
.parent
= self
1484 _n_methid
= n_methid
.as(not null)
1485 n_methid
.parent
= self
1486 _n_signature
= n_signature
.as(not null)
1487 n_signature
.parent
= self
1488 _n_annotations
= n_annotations
1489 if n_annotations
!= null then n_annotations
.parent
= self
1491 if n_block
!= null then n_block
.parent
= self
1494 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1496 if _n_doc
== old_child
then
1497 n_doc
= new_child
.as(nullable ADoc)
1500 if _n_kwredef
== old_child
then
1501 n_kwredef
= new_child
.as(nullable TKwredef)
1504 if _n_visibility
== old_child
then
1505 n_visibility
= new_child
.as(AVisibility)
1508 if _n_kwmeth
== old_child
then
1509 n_kwmeth
= new_child
.as(TKwmeth)
1512 if _n_methid
== old_child
then
1513 n_methid
= new_child
.as(AMethid)
1516 if _n_signature
== old_child
then
1517 n_signature
= new_child
.as(ASignature)
1520 if _n_annotations
== old_child
then
1521 n_annotations
= new_child
.as(nullable AAnnotations)
1524 if _n_block
== old_child
then
1525 n_block
= new_child
.as(nullable AExpr)
1530 redef fun n_doc
=(node
)
1533 if node
!= null then node
.parent
= self
1535 redef fun n_kwredef
=(node
)
1538 if node
!= null then node
.parent
= self
1540 redef fun n_visibility
=(node
)
1542 _n_visibility
= node
1545 redef fun n_kwmeth
=(node
)
1550 redef fun n_methid
=(node
)
1555 redef fun n_signature
=(node
)
1560 redef fun n_annotations
=(node
)
1562 _n_annotations
= node
1563 if node
!= null then node
.parent
= self
1565 redef fun n_block
=(node
)
1568 if node
!= null then node
.parent
= self
1572 redef fun visit_all
(v
: Visitor)
1574 v
.enter_visit
(_n_doc
)
1575 v
.enter_visit
(_n_kwredef
)
1576 v
.enter_visit
(_n_visibility
)
1577 v
.enter_visit
(_n_kwmeth
)
1578 v
.enter_visit
(_n_methid
)
1579 v
.enter_visit
(_n_signature
)
1580 v
.enter_visit
(_n_annotations
)
1581 v
.enter_visit
(_n_block
)
1584 redef class AConcreteInitPropdef
1585 init init_aconcreteinitpropdef
(
1586 n_doc
: nullable ADoc,
1587 n_kwredef
: nullable TKwredef,
1588 n_visibility
: nullable AVisibility,
1589 n_kwinit
: nullable TKwinit,
1590 n_methid
: nullable AMethid,
1591 n_signature
: nullable ASignature,
1592 n_annotations
: nullable AAnnotations,
1593 n_block
: nullable AExpr
1597 if n_doc
!= null then n_doc
.parent
= self
1598 _n_kwredef
= n_kwredef
1599 if n_kwredef
!= null then n_kwredef
.parent
= self
1600 _n_visibility
= n_visibility
.as(not null)
1601 n_visibility
.parent
= self
1602 _n_kwinit
= n_kwinit
.as(not null)
1603 n_kwinit
.parent
= self
1604 _n_methid
= n_methid
1605 if n_methid
!= null then n_methid
.parent
= self
1606 _n_signature
= n_signature
.as(not null)
1607 n_signature
.parent
= self
1608 _n_annotations
= n_annotations
1609 if n_annotations
!= null then n_annotations
.parent
= self
1611 if n_block
!= null then n_block
.parent
= self
1614 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1616 if _n_doc
== old_child
then
1617 n_doc
= new_child
.as(nullable ADoc)
1620 if _n_kwredef
== old_child
then
1621 n_kwredef
= new_child
.as(nullable TKwredef)
1624 if _n_visibility
== old_child
then
1625 n_visibility
= new_child
.as(AVisibility)
1628 if _n_kwinit
== old_child
then
1629 n_kwinit
= new_child
.as(TKwinit)
1632 if _n_methid
== old_child
then
1633 n_methid
= new_child
.as(nullable AMethid)
1636 if _n_signature
== old_child
then
1637 n_signature
= new_child
.as(ASignature)
1640 if _n_annotations
== old_child
then
1641 n_annotations
= new_child
.as(nullable AAnnotations)
1644 if _n_block
== old_child
then
1645 n_block
= new_child
.as(nullable AExpr)
1650 redef fun n_doc
=(node
)
1653 if node
!= null then node
.parent
= self
1655 redef fun n_kwredef
=(node
)
1658 if node
!= null then node
.parent
= self
1660 redef fun n_visibility
=(node
)
1662 _n_visibility
= node
1665 redef fun n_kwinit
=(node
)
1670 redef fun n_methid
=(node
)
1673 if node
!= null then node
.parent
= self
1675 redef fun n_signature
=(node
)
1680 redef fun n_annotations
=(node
)
1682 _n_annotations
= node
1683 if node
!= null then node
.parent
= self
1685 redef fun n_block
=(node
)
1688 if node
!= null then node
.parent
= self
1692 redef fun visit_all
(v
: Visitor)
1694 v
.enter_visit
(_n_doc
)
1695 v
.enter_visit
(_n_kwredef
)
1696 v
.enter_visit
(_n_visibility
)
1697 v
.enter_visit
(_n_kwinit
)
1698 v
.enter_visit
(_n_methid
)
1699 v
.enter_visit
(_n_signature
)
1700 v
.enter_visit
(_n_annotations
)
1701 v
.enter_visit
(_n_block
)
1704 redef class AExternInitPropdef
1705 init init_aexterninitpropdef
(
1706 n_doc
: nullable ADoc,
1707 n_kwredef
: nullable TKwredef,
1708 n_visibility
: nullable AVisibility,
1709 n_kwnew
: nullable TKwnew,
1710 n_methid
: nullable AMethid,
1711 n_signature
: nullable ASignature,
1712 n_extern
: nullable TString,
1713 n_extern_calls
: nullable AExternCalls,
1714 n_extern_code_block
: nullable AExternCodeBlock
1718 if n_doc
!= null then n_doc
.parent
= self
1719 _n_kwredef
= n_kwredef
1720 if n_kwredef
!= null then n_kwredef
.parent
= self
1721 _n_visibility
= n_visibility
.as(not null)
1722 n_visibility
.parent
= self
1723 _n_kwnew
= n_kwnew
.as(not null)
1724 n_kwnew
.parent
= self
1725 _n_methid
= n_methid
1726 if n_methid
!= null then n_methid
.parent
= self
1727 _n_signature
= n_signature
.as(not null)
1728 n_signature
.parent
= self
1729 _n_extern
= n_extern
1730 if n_extern
!= null then n_extern
.parent
= self
1731 _n_extern_calls
= n_extern_calls
1732 if n_extern_calls
!= null then n_extern_calls
.parent
= self
1733 _n_extern_code_block
= n_extern_code_block
1734 if n_extern_code_block
!= null then n_extern_code_block
.parent
= self
1737 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1739 if _n_doc
== old_child
then
1740 n_doc
= new_child
.as(nullable ADoc)
1743 if _n_kwredef
== old_child
then
1744 n_kwredef
= new_child
.as(nullable TKwredef)
1747 if _n_visibility
== old_child
then
1748 n_visibility
= new_child
.as(AVisibility)
1751 if _n_kwnew
== old_child
then
1752 n_kwnew
= new_child
.as(TKwnew)
1755 if _n_methid
== old_child
then
1756 n_methid
= new_child
.as(nullable AMethid)
1759 if _n_signature
== old_child
then
1760 n_signature
= new_child
.as(ASignature)
1763 if _n_extern
== old_child
then
1764 n_extern
= new_child
.as(nullable TString)
1767 if _n_extern_calls
== old_child
then
1768 n_extern_calls
= new_child
.as(nullable AExternCalls)
1771 if _n_extern_code_block
== old_child
then
1772 n_extern_code_block
= new_child
.as(nullable AExternCodeBlock)
1777 redef fun n_doc
=(node
)
1780 if node
!= null then node
.parent
= self
1782 redef fun n_kwredef
=(node
)
1785 if node
!= null then node
.parent
= self
1787 redef fun n_visibility
=(node
)
1789 _n_visibility
= node
1792 redef fun n_kwnew
=(node
)
1797 redef fun n_methid
=(node
)
1800 if node
!= null then node
.parent
= self
1802 redef fun n_signature
=(node
)
1807 redef fun n_extern
=(node
)
1810 if node
!= null then node
.parent
= self
1812 redef fun n_extern_calls
=(node
)
1814 _n_extern_calls
= node
1815 if node
!= null then node
.parent
= self
1817 redef fun n_extern_code_block
=(node
)
1819 _n_extern_code_block
= node
1820 if node
!= null then node
.parent
= self
1824 redef fun visit_all
(v
: Visitor)
1826 v
.enter_visit
(_n_doc
)
1827 v
.enter_visit
(_n_kwredef
)
1828 v
.enter_visit
(_n_visibility
)
1829 v
.enter_visit
(_n_kwnew
)
1830 v
.enter_visit
(_n_methid
)
1831 v
.enter_visit
(_n_signature
)
1832 v
.enter_visit
(_n_extern
)
1833 v
.enter_visit
(_n_extern_calls
)
1834 v
.enter_visit
(_n_extern_code_block
)
1837 redef class AMainMethPropdef
1838 init init_amainmethpropdef
(
1839 n_kwredef
: nullable TKwredef,
1840 n_block
: nullable AExpr
1843 _n_kwredef
= n_kwredef
1844 if n_kwredef
!= null then n_kwredef
.parent
= self
1846 if n_block
!= null then n_block
.parent
= self
1849 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1851 if _n_kwredef
== old_child
then
1852 n_kwredef
= new_child
.as(nullable TKwredef)
1855 if _n_block
== old_child
then
1856 n_block
= new_child
.as(nullable AExpr)
1861 redef fun n_kwredef
=(node
)
1864 if node
!= null then node
.parent
= self
1866 redef fun n_block
=(node
)
1869 if node
!= null then node
.parent
= self
1873 redef fun visit_all
(v
: Visitor)
1875 v
.enter_visit
(_n_kwredef
)
1876 v
.enter_visit
(_n_block
)
1879 redef class ATypePropdef
1880 init init_atypepropdef
(
1881 n_doc
: nullable ADoc,
1882 n_kwredef
: nullable TKwredef,
1883 n_visibility
: nullable AVisibility,
1884 n_kwtype
: nullable TKwtype,
1885 n_id
: nullable TClassid,
1886 n_type
: nullable AType,
1887 n_annotations
: nullable AAnnotations
1891 if n_doc
!= null then n_doc
.parent
= self
1892 _n_kwredef
= n_kwredef
1893 if n_kwredef
!= null then n_kwredef
.parent
= self
1894 _n_visibility
= n_visibility
.as(not null)
1895 n_visibility
.parent
= self
1896 _n_kwtype
= n_kwtype
.as(not null)
1897 n_kwtype
.parent
= self
1898 _n_id
= n_id
.as(not null)
1900 _n_type
= n_type
.as(not null)
1901 n_type
.parent
= self
1902 _n_annotations
= n_annotations
1903 if n_annotations
!= null then n_annotations
.parent
= self
1906 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
1908 if _n_doc
== old_child
then
1909 n_doc
= new_child
.as(nullable ADoc)
1912 if _n_kwredef
== old_child
then
1913 n_kwredef
= new_child
.as(nullable TKwredef)
1916 if _n_visibility
== old_child
then
1917 n_visibility
= new_child
.as(AVisibility)
1920 if _n_kwtype
== old_child
then
1921 n_kwtype
= new_child
.as(TKwtype)
1924 if _n_id
== old_child
then
1925 n_id
= new_child
.as(TClassid)
1928 if _n_type
== old_child
then
1929 n_type
= new_child
.as(AType)
1932 if _n_annotations
== old_child
then
1933 n_annotations
= new_child
.as(nullable AAnnotations)
1938 redef fun n_doc
=(node
)
1941 if node
!= null then node
.parent
= self
1943 redef fun n_kwredef
=(node
)
1946 if node
!= null then node
.parent
= self
1948 redef fun n_visibility
=(node
)
1950 _n_visibility
= node
1953 redef fun n_kwtype
=(node
)
1958 redef fun n_id
=(node
)
1963 redef fun n_type
=(node
)
1968 redef fun n_annotations
=(node
)
1970 _n_annotations
= node
1971 if node
!= null then node
.parent
= self
1975 redef fun visit_all
(v
: Visitor)
1977 v
.enter_visit
(_n_doc
)
1978 v
.enter_visit
(_n_kwredef
)
1979 v
.enter_visit
(_n_visibility
)
1980 v
.enter_visit
(_n_kwtype
)
1981 v
.enter_visit
(_n_id
)
1982 v
.enter_visit
(_n_type
)
1983 v
.enter_visit
(_n_annotations
)
1986 redef class AReadAble
1987 init init_areadable
(
1988 n_kwredef
: nullable TKwredef,
1989 n_kwreadable
: nullable TKwreadable
1992 _n_kwredef
= n_kwredef
1993 if n_kwredef
!= null then n_kwredef
.parent
= self
1994 _n_kwreadable
= n_kwreadable
.as(not null)
1995 n_kwreadable
.parent
= self
1998 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2000 if _n_kwredef
== old_child
then
2001 n_kwredef
= new_child
.as(nullable TKwredef)
2004 if _n_kwreadable
== old_child
then
2005 n_kwreadable
= new_child
.as(TKwreadable)
2010 redef fun n_kwredef
=(node
)
2013 if node
!= null then node
.parent
= self
2015 redef fun n_kwreadable
=(node
)
2017 _n_kwreadable
= node
2022 redef fun visit_all
(v
: Visitor)
2024 v
.enter_visit
(_n_kwredef
)
2025 v
.enter_visit
(_n_kwreadable
)
2028 redef class AWriteAble
2029 init init_awriteable
(
2030 n_kwredef
: nullable TKwredef,
2031 n_visibility
: nullable AVisibility,
2032 n_kwwritable
: nullable TKwwritable
2035 _n_kwredef
= n_kwredef
2036 if n_kwredef
!= null then n_kwredef
.parent
= self
2037 _n_visibility
= n_visibility
2038 if n_visibility
!= null then n_visibility
.parent
= self
2039 _n_kwwritable
= n_kwwritable
.as(not null)
2040 n_kwwritable
.parent
= self
2043 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2045 if _n_kwredef
== old_child
then
2046 n_kwredef
= new_child
.as(nullable TKwredef)
2049 if _n_visibility
== old_child
then
2050 n_visibility
= new_child
.as(nullable AVisibility)
2053 if _n_kwwritable
== old_child
then
2054 n_kwwritable
= new_child
.as(TKwwritable)
2059 redef fun n_kwredef
=(node
)
2062 if node
!= null then node
.parent
= self
2064 redef fun n_visibility
=(node
)
2066 _n_visibility
= node
2067 if node
!= null then node
.parent
= self
2069 redef fun n_kwwritable
=(node
)
2071 _n_kwwritable
= node
2076 redef fun visit_all
(v
: Visitor)
2078 v
.enter_visit
(_n_kwredef
)
2079 v
.enter_visit
(_n_visibility
)
2080 v
.enter_visit
(_n_kwwritable
)
2083 redef class AIdMethid
2084 init init_aidmethid
(
2088 _n_id
= n_id
.as(not null)
2092 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2094 if _n_id
== old_child
then
2095 n_id
= new_child
.as(TId)
2100 redef fun n_id
=(node
)
2107 redef fun visit_all
(v
: Visitor)
2109 v
.enter_visit
(_n_id
)
2112 redef class APlusMethid
2113 init init_aplusmethid
(
2114 n_plus
: nullable TPlus
2117 _n_plus
= n_plus
.as(not null)
2118 n_plus
.parent
= self
2121 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2123 if _n_plus
== old_child
then
2124 n_plus
= new_child
.as(TPlus)
2129 redef fun n_plus
=(node
)
2136 redef fun visit_all
(v
: Visitor)
2138 v
.enter_visit
(_n_plus
)
2141 redef class AMinusMethid
2142 init init_aminusmethid
(
2143 n_minus
: nullable TMinus
2146 _n_minus
= n_minus
.as(not null)
2147 n_minus
.parent
= self
2150 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2152 if _n_minus
== old_child
then
2153 n_minus
= new_child
.as(TMinus)
2158 redef fun n_minus
=(node
)
2165 redef fun visit_all
(v
: Visitor)
2167 v
.enter_visit
(_n_minus
)
2170 redef class AStarMethid
2171 init init_astarmethid
(
2172 n_star
: nullable TStar
2175 _n_star
= n_star
.as(not null)
2176 n_star
.parent
= self
2179 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2181 if _n_star
== old_child
then
2182 n_star
= new_child
.as(TStar)
2187 redef fun n_star
=(node
)
2194 redef fun visit_all
(v
: Visitor)
2196 v
.enter_visit
(_n_star
)
2199 redef class ASlashMethid
2200 init init_aslashmethid
(
2201 n_slash
: nullable TSlash
2204 _n_slash
= n_slash
.as(not null)
2205 n_slash
.parent
= self
2208 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2210 if _n_slash
== old_child
then
2211 n_slash
= new_child
.as(TSlash)
2216 redef fun n_slash
=(node
)
2223 redef fun visit_all
(v
: Visitor)
2225 v
.enter_visit
(_n_slash
)
2228 redef class APercentMethid
2229 init init_apercentmethid
(
2230 n_percent
: nullable TPercent
2233 _n_percent
= n_percent
.as(not null)
2234 n_percent
.parent
= self
2237 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2239 if _n_percent
== old_child
then
2240 n_percent
= new_child
.as(TPercent)
2245 redef fun n_percent
=(node
)
2252 redef fun visit_all
(v
: Visitor)
2254 v
.enter_visit
(_n_percent
)
2257 redef class AEqMethid
2258 init init_aeqmethid
(
2262 _n_eq
= n_eq
.as(not null)
2266 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2268 if _n_eq
== old_child
then
2269 n_eq
= new_child
.as(TEq)
2274 redef fun n_eq
=(node
)
2281 redef fun visit_all
(v
: Visitor)
2283 v
.enter_visit
(_n_eq
)
2286 redef class ANeMethid
2287 init init_anemethid
(
2291 _n_ne
= n_ne
.as(not null)
2295 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2297 if _n_ne
== old_child
then
2298 n_ne
= new_child
.as(TNe)
2303 redef fun n_ne
=(node
)
2310 redef fun visit_all
(v
: Visitor)
2312 v
.enter_visit
(_n_ne
)
2315 redef class ALeMethid
2316 init init_alemethid
(
2320 _n_le
= n_le
.as(not null)
2324 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2326 if _n_le
== old_child
then
2327 n_le
= new_child
.as(TLe)
2332 redef fun n_le
=(node
)
2339 redef fun visit_all
(v
: Visitor)
2341 v
.enter_visit
(_n_le
)
2344 redef class AGeMethid
2345 init init_agemethid
(
2349 _n_ge
= n_ge
.as(not null)
2353 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2355 if _n_ge
== old_child
then
2356 n_ge
= new_child
.as(TGe)
2361 redef fun n_ge
=(node
)
2368 redef fun visit_all
(v
: Visitor)
2370 v
.enter_visit
(_n_ge
)
2373 redef class ALtMethid
2374 init init_altmethid
(
2378 _n_lt
= n_lt
.as(not null)
2382 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2384 if _n_lt
== old_child
then
2385 n_lt
= new_child
.as(TLt)
2390 redef fun n_lt
=(node
)
2397 redef fun visit_all
(v
: Visitor)
2399 v
.enter_visit
(_n_lt
)
2402 redef class AGtMethid
2403 init init_agtmethid
(
2407 _n_gt
= n_gt
.as(not null)
2411 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2413 if _n_gt
== old_child
then
2414 n_gt
= new_child
.as(TGt)
2419 redef fun n_gt
=(node
)
2426 redef fun visit_all
(v
: Visitor)
2428 v
.enter_visit
(_n_gt
)
2431 redef class ALlMethid
2432 init init_allmethid
(
2436 _n_ll
= n_ll
.as(not null)
2440 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2442 if _n_ll
== old_child
then
2443 n_ll
= new_child
.as(TLl)
2448 redef fun n_ll
=(node
)
2455 redef fun visit_all
(v
: Visitor)
2457 v
.enter_visit
(_n_ll
)
2460 redef class AGgMethid
2461 init init_aggmethid
(
2465 _n_gg
= n_gg
.as(not null)
2469 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2471 if _n_gg
== old_child
then
2472 n_gg
= new_child
.as(TGg)
2477 redef fun n_gg
=(node
)
2484 redef fun visit_all
(v
: Visitor)
2486 v
.enter_visit
(_n_gg
)
2489 redef class ABraMethid
2490 init init_abramethid
(
2491 n_obra
: nullable TObra,
2492 n_cbra
: nullable TCbra
2495 _n_obra
= n_obra
.as(not null)
2496 n_obra
.parent
= self
2497 _n_cbra
= n_cbra
.as(not null)
2498 n_cbra
.parent
= self
2501 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2503 if _n_obra
== old_child
then
2504 n_obra
= new_child
.as(TObra)
2507 if _n_cbra
== old_child
then
2508 n_cbra
= new_child
.as(TCbra)
2513 redef fun n_obra
=(node
)
2518 redef fun n_cbra
=(node
)
2525 redef fun visit_all
(v
: Visitor)
2527 v
.enter_visit
(_n_obra
)
2528 v
.enter_visit
(_n_cbra
)
2531 redef class AStarshipMethid
2532 init init_astarshipmethid
(
2533 n_starship
: nullable TStarship
2536 _n_starship
= n_starship
.as(not null)
2537 n_starship
.parent
= self
2540 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2542 if _n_starship
== old_child
then
2543 n_starship
= new_child
.as(TStarship)
2548 redef fun n_starship
=(node
)
2555 redef fun visit_all
(v
: Visitor)
2557 v
.enter_visit
(_n_starship
)
2560 redef class AAssignMethid
2561 init init_aassignmethid
(
2563 n_assign
: nullable TAssign
2566 _n_id
= n_id
.as(not null)
2568 _n_assign
= n_assign
.as(not null)
2569 n_assign
.parent
= self
2572 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2574 if _n_id
== old_child
then
2575 n_id
= new_child
.as(TId)
2578 if _n_assign
== old_child
then
2579 n_assign
= new_child
.as(TAssign)
2584 redef fun n_id
=(node
)
2589 redef fun n_assign
=(node
)
2596 redef fun visit_all
(v
: Visitor)
2598 v
.enter_visit
(_n_id
)
2599 v
.enter_visit
(_n_assign
)
2602 redef class ABraassignMethid
2603 init init_abraassignmethid
(
2604 n_obra
: nullable TObra,
2605 n_cbra
: nullable TCbra,
2606 n_assign
: nullable TAssign
2609 _n_obra
= n_obra
.as(not null)
2610 n_obra
.parent
= self
2611 _n_cbra
= n_cbra
.as(not null)
2612 n_cbra
.parent
= self
2613 _n_assign
= n_assign
.as(not null)
2614 n_assign
.parent
= self
2617 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2619 if _n_obra
== old_child
then
2620 n_obra
= new_child
.as(TObra)
2623 if _n_cbra
== old_child
then
2624 n_cbra
= new_child
.as(TCbra)
2627 if _n_assign
== old_child
then
2628 n_assign
= new_child
.as(TAssign)
2633 redef fun n_obra
=(node
)
2638 redef fun n_cbra
=(node
)
2643 redef fun n_assign
=(node
)
2650 redef fun visit_all
(v
: Visitor)
2652 v
.enter_visit
(_n_obra
)
2653 v
.enter_visit
(_n_cbra
)
2654 v
.enter_visit
(_n_assign
)
2657 redef class ASignature
2658 init init_asignature
(
2659 n_opar
: nullable TOpar,
2660 n_params
: Collection[Object], # Should be Collection[AParam]
2661 n_cpar
: nullable TCpar,
2662 n_type
: nullable AType
2666 if n_opar
!= null then n_opar
.parent
= self
2667 self.n_params
.unsafe_add_all
(n_params
)
2669 if n_cpar
!= null then n_cpar
.parent
= self
2671 if n_type
!= null then n_type
.parent
= self
2674 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2676 if _n_opar
== old_child
then
2677 n_opar
= new_child
.as(nullable TOpar)
2680 if n_params
.replace_child
(old_child
, new_child
) then return
2681 if _n_cpar
== old_child
then
2682 n_cpar
= new_child
.as(nullable TCpar)
2685 if _n_type
== old_child
then
2686 n_type
= new_child
.as(nullable AType)
2691 redef fun n_opar
=(node
)
2694 if node
!= null then node
.parent
= self
2696 redef fun n_cpar
=(node
)
2699 if node
!= null then node
.parent
= self
2701 redef fun n_type
=(node
)
2704 if node
!= null then node
.parent
= self
2708 redef fun visit_all
(v
: Visitor)
2710 v
.enter_visit
(_n_opar
)
2711 n_params
.visit_all
(v
)
2712 v
.enter_visit
(_n_cpar
)
2713 v
.enter_visit
(_n_type
)
2719 n_type
: nullable AType,
2720 n_dotdotdot
: nullable TDotdotdot,
2721 n_annotations
: nullable AAnnotations
2724 _n_id
= n_id
.as(not null)
2727 if n_type
!= null then n_type
.parent
= self
2728 _n_dotdotdot
= n_dotdotdot
2729 if n_dotdotdot
!= null then n_dotdotdot
.parent
= self
2730 _n_annotations
= n_annotations
2731 if n_annotations
!= null then n_annotations
.parent
= self
2734 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2736 if _n_id
== old_child
then
2737 n_id
= new_child
.as(TId)
2740 if _n_type
== old_child
then
2741 n_type
= new_child
.as(nullable AType)
2744 if _n_dotdotdot
== old_child
then
2745 n_dotdotdot
= new_child
.as(nullable TDotdotdot)
2748 if _n_annotations
== old_child
then
2749 n_annotations
= new_child
.as(nullable AAnnotations)
2754 redef fun n_id
=(node
)
2759 redef fun n_type
=(node
)
2762 if node
!= null then node
.parent
= self
2764 redef fun n_dotdotdot
=(node
)
2767 if node
!= null then node
.parent
= self
2769 redef fun n_annotations
=(node
)
2771 _n_annotations
= node
2772 if node
!= null then node
.parent
= self
2776 redef fun visit_all
(v
: Visitor)
2778 v
.enter_visit
(_n_id
)
2779 v
.enter_visit
(_n_type
)
2780 v
.enter_visit
(_n_dotdotdot
)
2781 v
.enter_visit
(_n_annotations
)
2786 n_kwnullable
: nullable TKwnullable,
2787 n_id
: nullable TClassid,
2788 n_types
: Collection[Object], # Should be Collection[AType]
2789 n_annotations
: nullable AAnnotations
2792 _n_kwnullable
= n_kwnullable
2793 if n_kwnullable
!= null then n_kwnullable
.parent
= self
2794 _n_id
= n_id
.as(not null)
2796 self.n_types
.unsafe_add_all
(n_types
)
2797 _n_annotations
= n_annotations
2798 if n_annotations
!= null then n_annotations
.parent
= self
2801 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2803 if _n_kwnullable
== old_child
then
2804 n_kwnullable
= new_child
.as(nullable TKwnullable)
2807 if _n_id
== old_child
then
2808 n_id
= new_child
.as(TClassid)
2811 if n_types
.replace_child
(old_child
, new_child
) then return
2812 if _n_annotations
== old_child
then
2813 n_annotations
= new_child
.as(nullable AAnnotations)
2818 redef fun n_kwnullable
=(node
)
2820 _n_kwnullable
= node
2821 if node
!= null then node
.parent
= self
2823 redef fun n_id
=(node
)
2828 redef fun n_annotations
=(node
)
2830 _n_annotations
= node
2831 if node
!= null then node
.parent
= self
2835 redef fun visit_all
(v
: Visitor)
2837 v
.enter_visit
(_n_kwnullable
)
2838 v
.enter_visit
(_n_id
)
2839 n_types
.visit_all
(v
)
2840 v
.enter_visit
(_n_annotations
)
2845 n_kwlabel
: nullable TKwlabel,
2849 _n_kwlabel
= n_kwlabel
.as(not null)
2850 n_kwlabel
.parent
= self
2851 _n_id
= n_id
.as(not null)
2855 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2857 if _n_kwlabel
== old_child
then
2858 n_kwlabel
= new_child
.as(TKwlabel)
2861 if _n_id
== old_child
then
2862 n_id
= new_child
.as(TId)
2867 redef fun n_kwlabel
=(node
)
2872 redef fun n_id
=(node
)
2879 redef fun visit_all
(v
: Visitor)
2881 v
.enter_visit
(_n_kwlabel
)
2882 v
.enter_visit
(_n_id
)
2885 redef class ABlockExpr
2886 init init_ablockexpr
(
2887 n_expr
: Collection[Object], # Should be Collection[AExpr]
2888 n_kwend
: nullable TKwend
2891 self.n_expr
.unsafe_add_all
(n_expr
)
2893 if n_kwend
!= null then n_kwend
.parent
= self
2896 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2898 if n_expr
.replace_child
(old_child
, new_child
) then return
2899 if _n_kwend
== old_child
then
2900 n_kwend
= new_child
.as(nullable TKwend)
2905 redef fun n_kwend
=(node
)
2908 if node
!= null then node
.parent
= self
2912 redef fun visit_all
(v
: Visitor)
2915 v
.enter_visit
(_n_kwend
)
2918 redef class AVardeclExpr
2919 init init_avardeclexpr
(
2920 n_kwvar
: nullable TKwvar,
2922 n_type
: nullable AType,
2923 n_assign
: nullable TAssign,
2924 n_expr
: nullable AExpr,
2925 n_annotations
: nullable AAnnotations
2928 _n_kwvar
= n_kwvar
.as(not null)
2929 n_kwvar
.parent
= self
2930 _n_id
= n_id
.as(not null)
2933 if n_type
!= null then n_type
.parent
= self
2934 _n_assign
= n_assign
2935 if n_assign
!= null then n_assign
.parent
= self
2937 if n_expr
!= null then n_expr
.parent
= self
2938 _n_annotations
= n_annotations
2939 if n_annotations
!= null then n_annotations
.parent
= self
2942 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
2944 if _n_kwvar
== old_child
then
2945 n_kwvar
= new_child
.as(TKwvar)
2948 if _n_id
== old_child
then
2949 n_id
= new_child
.as(TId)
2952 if _n_type
== old_child
then
2953 n_type
= new_child
.as(nullable AType)
2956 if _n_assign
== old_child
then
2957 n_assign
= new_child
.as(nullable TAssign)
2960 if _n_expr
== old_child
then
2961 n_expr
= new_child
.as(nullable AExpr)
2964 if _n_annotations
== old_child
then
2965 n_annotations
= new_child
.as(nullable AAnnotations)
2970 redef fun n_kwvar
=(node
)
2975 redef fun n_id
=(node
)
2980 redef fun n_type
=(node
)
2983 if node
!= null then node
.parent
= self
2985 redef fun n_assign
=(node
)
2988 if node
!= null then node
.parent
= self
2990 redef fun n_expr
=(node
)
2993 if node
!= null then node
.parent
= self
2995 redef fun n_annotations
=(node
)
2997 _n_annotations
= node
2998 if node
!= null then node
.parent
= self
3002 redef fun visit_all
(v
: Visitor)
3004 v
.enter_visit
(_n_kwvar
)
3005 v
.enter_visit
(_n_id
)
3006 v
.enter_visit
(_n_type
)
3007 v
.enter_visit
(_n_assign
)
3008 v
.enter_visit
(_n_expr
)
3009 v
.enter_visit
(_n_annotations
)
3012 redef class AReturnExpr
3013 init init_areturnexpr
(
3014 n_kwreturn
: nullable TKwreturn,
3015 n_expr
: nullable AExpr
3018 _n_kwreturn
= n_kwreturn
3019 if n_kwreturn
!= null then n_kwreturn
.parent
= self
3021 if n_expr
!= null then n_expr
.parent
= self
3024 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3026 if _n_kwreturn
== old_child
then
3027 n_kwreturn
= new_child
.as(nullable TKwreturn)
3030 if _n_expr
== old_child
then
3031 n_expr
= new_child
.as(nullable AExpr)
3036 redef fun n_kwreturn
=(node
)
3039 if node
!= null then node
.parent
= self
3041 redef fun n_expr
=(node
)
3044 if node
!= null then node
.parent
= self
3048 redef fun visit_all
(v
: Visitor)
3050 v
.enter_visit
(_n_kwreturn
)
3051 v
.enter_visit
(_n_expr
)
3054 redef class ABreakExpr
3055 init init_abreakexpr
(
3056 n_kwbreak
: nullable TKwbreak,
3057 n_label
: nullable ALabel,
3058 n_expr
: nullable AExpr
3061 _n_kwbreak
= n_kwbreak
.as(not null)
3062 n_kwbreak
.parent
= self
3064 if n_label
!= null then n_label
.parent
= self
3066 if n_expr
!= null then n_expr
.parent
= self
3069 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3071 if _n_kwbreak
== old_child
then
3072 n_kwbreak
= new_child
.as(TKwbreak)
3075 if _n_label
== old_child
then
3076 n_label
= new_child
.as(nullable ALabel)
3079 if _n_expr
== old_child
then
3080 n_expr
= new_child
.as(nullable AExpr)
3085 redef fun n_kwbreak
=(node
)
3090 redef fun n_label
=(node
)
3093 if node
!= null then node
.parent
= self
3095 redef fun n_expr
=(node
)
3098 if node
!= null then node
.parent
= self
3102 redef fun visit_all
(v
: Visitor)
3104 v
.enter_visit
(_n_kwbreak
)
3105 v
.enter_visit
(_n_label
)
3106 v
.enter_visit
(_n_expr
)
3109 redef class AAbortExpr
3110 init init_aabortexpr
(
3111 n_kwabort
: nullable TKwabort
3114 _n_kwabort
= n_kwabort
.as(not null)
3115 n_kwabort
.parent
= self
3118 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3120 if _n_kwabort
== old_child
then
3121 n_kwabort
= new_child
.as(TKwabort)
3126 redef fun n_kwabort
=(node
)
3133 redef fun visit_all
(v
: Visitor)
3135 v
.enter_visit
(_n_kwabort
)
3138 redef class AContinueExpr
3139 init init_acontinueexpr
(
3140 n_kwcontinue
: nullable TKwcontinue,
3141 n_label
: nullable ALabel,
3142 n_expr
: nullable AExpr
3145 _n_kwcontinue
= n_kwcontinue
3146 if n_kwcontinue
!= null then n_kwcontinue
.parent
= self
3148 if n_label
!= null then n_label
.parent
= self
3150 if n_expr
!= null then n_expr
.parent
= self
3153 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3155 if _n_kwcontinue
== old_child
then
3156 n_kwcontinue
= new_child
.as(nullable TKwcontinue)
3159 if _n_label
== old_child
then
3160 n_label
= new_child
.as(nullable ALabel)
3163 if _n_expr
== old_child
then
3164 n_expr
= new_child
.as(nullable AExpr)
3169 redef fun n_kwcontinue
=(node
)
3171 _n_kwcontinue
= node
3172 if node
!= null then node
.parent
= self
3174 redef fun n_label
=(node
)
3177 if node
!= null then node
.parent
= self
3179 redef fun n_expr
=(node
)
3182 if node
!= null then node
.parent
= self
3186 redef fun visit_all
(v
: Visitor)
3188 v
.enter_visit
(_n_kwcontinue
)
3189 v
.enter_visit
(_n_label
)
3190 v
.enter_visit
(_n_expr
)
3195 n_kwdo
: nullable TKwdo,
3196 n_block
: nullable AExpr,
3197 n_label
: nullable ALabel
3200 _n_kwdo
= n_kwdo
.as(not null)
3201 n_kwdo
.parent
= self
3203 if n_block
!= null then n_block
.parent
= self
3205 if n_label
!= null then n_label
.parent
= self
3208 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3210 if _n_kwdo
== old_child
then
3211 n_kwdo
= new_child
.as(TKwdo)
3214 if _n_block
== old_child
then
3215 n_block
= new_child
.as(nullable AExpr)
3218 if _n_label
== old_child
then
3219 n_label
= new_child
.as(nullable ALabel)
3224 redef fun n_kwdo
=(node
)
3229 redef fun n_block
=(node
)
3232 if node
!= null then node
.parent
= self
3234 redef fun n_label
=(node
)
3237 if node
!= null then node
.parent
= self
3241 redef fun visit_all
(v
: Visitor)
3243 v
.enter_visit
(_n_kwdo
)
3244 v
.enter_visit
(_n_block
)
3245 v
.enter_visit
(_n_label
)
3250 n_kwif
: nullable TKwif,
3251 n_expr
: nullable AExpr,
3252 n_then
: nullable AExpr,
3253 n_else
: nullable AExpr
3256 _n_kwif
= n_kwif
.as(not null)
3257 n_kwif
.parent
= self
3258 _n_expr
= n_expr
.as(not null)
3259 n_expr
.parent
= self
3261 if n_then
!= null then n_then
.parent
= self
3263 if n_else
!= null then n_else
.parent
= self
3266 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3268 if _n_kwif
== old_child
then
3269 n_kwif
= new_child
.as(TKwif)
3272 if _n_expr
== old_child
then
3273 n_expr
= new_child
.as(AExpr)
3276 if _n_then
== old_child
then
3277 n_then
= new_child
.as(nullable AExpr)
3280 if _n_else
== old_child
then
3281 n_else
= new_child
.as(nullable AExpr)
3286 redef fun n_kwif
=(node
)
3291 redef fun n_expr
=(node
)
3296 redef fun n_then
=(node
)
3299 if node
!= null then node
.parent
= self
3301 redef fun n_else
=(node
)
3304 if node
!= null then node
.parent
= self
3308 redef fun visit_all
(v
: Visitor)
3310 v
.enter_visit
(_n_kwif
)
3311 v
.enter_visit
(_n_expr
)
3312 v
.enter_visit
(_n_then
)
3313 v
.enter_visit
(_n_else
)
3316 redef class AIfexprExpr
3317 init init_aifexprexpr
(
3318 n_kwif
: nullable TKwif,
3319 n_expr
: nullable AExpr,
3320 n_kwthen
: nullable TKwthen,
3321 n_then
: nullable AExpr,
3322 n_kwelse
: nullable TKwelse,
3323 n_else
: nullable AExpr
3326 _n_kwif
= n_kwif
.as(not null)
3327 n_kwif
.parent
= self
3328 _n_expr
= n_expr
.as(not null)
3329 n_expr
.parent
= self
3330 _n_kwthen
= n_kwthen
.as(not null)
3331 n_kwthen
.parent
= self
3332 _n_then
= n_then
.as(not null)
3333 n_then
.parent
= self
3334 _n_kwelse
= n_kwelse
.as(not null)
3335 n_kwelse
.parent
= self
3336 _n_else
= n_else
.as(not null)
3337 n_else
.parent
= self
3340 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3342 if _n_kwif
== old_child
then
3343 n_kwif
= new_child
.as(TKwif)
3346 if _n_expr
== old_child
then
3347 n_expr
= new_child
.as(AExpr)
3350 if _n_kwthen
== old_child
then
3351 n_kwthen
= new_child
.as(TKwthen)
3354 if _n_then
== old_child
then
3355 n_then
= new_child
.as(AExpr)
3358 if _n_kwelse
== old_child
then
3359 n_kwelse
= new_child
.as(TKwelse)
3362 if _n_else
== old_child
then
3363 n_else
= new_child
.as(AExpr)
3368 redef fun n_kwif
=(node
)
3373 redef fun n_expr
=(node
)
3378 redef fun n_kwthen
=(node
)
3383 redef fun n_then
=(node
)
3388 redef fun n_kwelse
=(node
)
3393 redef fun n_else
=(node
)
3400 redef fun visit_all
(v
: Visitor)
3402 v
.enter_visit
(_n_kwif
)
3403 v
.enter_visit
(_n_expr
)
3404 v
.enter_visit
(_n_kwthen
)
3405 v
.enter_visit
(_n_then
)
3406 v
.enter_visit
(_n_kwelse
)
3407 v
.enter_visit
(_n_else
)
3410 redef class AWhileExpr
3411 init init_awhileexpr
(
3412 n_kwwhile
: nullable TKwwhile,
3413 n_expr
: nullable AExpr,
3414 n_kwdo
: nullable TKwdo,
3415 n_block
: nullable AExpr,
3416 n_label
: nullable ALabel
3419 _n_kwwhile
= n_kwwhile
.as(not null)
3420 n_kwwhile
.parent
= self
3421 _n_expr
= n_expr
.as(not null)
3422 n_expr
.parent
= self
3423 _n_kwdo
= n_kwdo
.as(not null)
3424 n_kwdo
.parent
= self
3426 if n_block
!= null then n_block
.parent
= self
3428 if n_label
!= null then n_label
.parent
= self
3431 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3433 if _n_kwwhile
== old_child
then
3434 n_kwwhile
= new_child
.as(TKwwhile)
3437 if _n_expr
== old_child
then
3438 n_expr
= new_child
.as(AExpr)
3441 if _n_kwdo
== old_child
then
3442 n_kwdo
= new_child
.as(TKwdo)
3445 if _n_block
== old_child
then
3446 n_block
= new_child
.as(nullable AExpr)
3449 if _n_label
== old_child
then
3450 n_label
= new_child
.as(nullable ALabel)
3455 redef fun n_kwwhile
=(node
)
3460 redef fun n_expr
=(node
)
3465 redef fun n_kwdo
=(node
)
3470 redef fun n_block
=(node
)
3473 if node
!= null then node
.parent
= self
3475 redef fun n_label
=(node
)
3478 if node
!= null then node
.parent
= self
3482 redef fun visit_all
(v
: Visitor)
3484 v
.enter_visit
(_n_kwwhile
)
3485 v
.enter_visit
(_n_expr
)
3486 v
.enter_visit
(_n_kwdo
)
3487 v
.enter_visit
(_n_block
)
3488 v
.enter_visit
(_n_label
)
3491 redef class ALoopExpr
3492 init init_aloopexpr
(
3493 n_kwloop
: nullable TKwloop,
3494 n_block
: nullable AExpr,
3495 n_label
: nullable ALabel
3498 _n_kwloop
= n_kwloop
.as(not null)
3499 n_kwloop
.parent
= self
3501 if n_block
!= null then n_block
.parent
= self
3503 if n_label
!= null then n_label
.parent
= self
3506 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3508 if _n_kwloop
== old_child
then
3509 n_kwloop
= new_child
.as(TKwloop)
3512 if _n_block
== old_child
then
3513 n_block
= new_child
.as(nullable AExpr)
3516 if _n_label
== old_child
then
3517 n_label
= new_child
.as(nullable ALabel)
3522 redef fun n_kwloop
=(node
)
3527 redef fun n_block
=(node
)
3530 if node
!= null then node
.parent
= self
3532 redef fun n_label
=(node
)
3535 if node
!= null then node
.parent
= self
3539 redef fun visit_all
(v
: Visitor)
3541 v
.enter_visit
(_n_kwloop
)
3542 v
.enter_visit
(_n_block
)
3543 v
.enter_visit
(_n_label
)
3546 redef class AForExpr
3547 init init_aforexpr
(
3548 n_kwfor
: nullable TKwfor,
3549 n_ids
: Collection[Object], # Should be Collection[TId]
3550 n_expr
: nullable AExpr,
3551 n_kwdo
: nullable TKwdo,
3552 n_block
: nullable AExpr,
3553 n_label
: nullable ALabel
3556 _n_kwfor
= n_kwfor
.as(not null)
3557 n_kwfor
.parent
= self
3558 self.n_ids
.unsafe_add_all
(n_ids
)
3559 _n_expr
= n_expr
.as(not null)
3560 n_expr
.parent
= self
3561 _n_kwdo
= n_kwdo
.as(not null)
3562 n_kwdo
.parent
= self
3564 if n_block
!= null then n_block
.parent
= self
3566 if n_label
!= null then n_label
.parent
= self
3569 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3571 if _n_kwfor
== old_child
then
3572 n_kwfor
= new_child
.as(TKwfor)
3575 if n_ids
.replace_child
(old_child
, new_child
) then return
3576 if _n_expr
== old_child
then
3577 n_expr
= new_child
.as(AExpr)
3580 if _n_kwdo
== old_child
then
3581 n_kwdo
= new_child
.as(TKwdo)
3584 if _n_block
== old_child
then
3585 n_block
= new_child
.as(nullable AExpr)
3588 if _n_label
== old_child
then
3589 n_label
= new_child
.as(nullable ALabel)
3594 redef fun n_kwfor
=(node
)
3599 redef fun n_expr
=(node
)
3604 redef fun n_kwdo
=(node
)
3609 redef fun n_block
=(node
)
3612 if node
!= null then node
.parent
= self
3614 redef fun n_label
=(node
)
3617 if node
!= null then node
.parent
= self
3621 redef fun visit_all
(v
: Visitor)
3623 v
.enter_visit
(_n_kwfor
)
3625 v
.enter_visit
(_n_expr
)
3626 v
.enter_visit
(_n_kwdo
)
3627 v
.enter_visit
(_n_block
)
3628 v
.enter_visit
(_n_label
)
3631 redef class AAssertExpr
3632 init init_aassertexpr
(
3633 n_kwassert
: nullable TKwassert,
3635 n_expr
: nullable AExpr,
3636 n_else
: nullable AExpr
3639 _n_kwassert
= n_kwassert
.as(not null)
3640 n_kwassert
.parent
= self
3642 if n_id
!= null then n_id
.parent
= self
3643 _n_expr
= n_expr
.as(not null)
3644 n_expr
.parent
= self
3646 if n_else
!= null then n_else
.parent
= self
3649 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3651 if _n_kwassert
== old_child
then
3652 n_kwassert
= new_child
.as(TKwassert)
3655 if _n_id
== old_child
then
3656 n_id
= new_child
.as(nullable TId)
3659 if _n_expr
== old_child
then
3660 n_expr
= new_child
.as(AExpr)
3663 if _n_else
== old_child
then
3664 n_else
= new_child
.as(nullable AExpr)
3669 redef fun n_kwassert
=(node
)
3674 redef fun n_id
=(node
)
3677 if node
!= null then node
.parent
= self
3679 redef fun n_expr
=(node
)
3684 redef fun n_else
=(node
)
3687 if node
!= null then node
.parent
= self
3691 redef fun visit_all
(v
: Visitor)
3693 v
.enter_visit
(_n_kwassert
)
3694 v
.enter_visit
(_n_id
)
3695 v
.enter_visit
(_n_expr
)
3696 v
.enter_visit
(_n_else
)
3699 redef class AOnceExpr
3700 init init_aonceexpr
(
3701 n_kwonce
: nullable TKwonce,
3702 n_expr
: nullable AExpr
3705 _n_kwonce
= n_kwonce
.as(not null)
3706 n_kwonce
.parent
= self
3707 _n_expr
= n_expr
.as(not null)
3708 n_expr
.parent
= self
3711 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3713 if _n_kwonce
== old_child
then
3714 n_kwonce
= new_child
.as(TKwonce)
3717 if _n_expr
== old_child
then
3718 n_expr
= new_child
.as(AExpr)
3723 redef fun n_kwonce
=(node
)
3728 redef fun n_expr
=(node
)
3735 redef fun visit_all
(v
: Visitor)
3737 v
.enter_visit
(_n_kwonce
)
3738 v
.enter_visit
(_n_expr
)
3741 redef class ASendExpr
3742 init init_asendexpr
(
3743 n_expr
: nullable AExpr
3746 _n_expr
= n_expr
.as(not null)
3747 n_expr
.parent
= self
3750 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3752 if _n_expr
== old_child
then
3753 n_expr
= new_child
.as(AExpr)
3758 redef fun n_expr
=(node
)
3765 redef fun visit_all
(v
: Visitor)
3767 v
.enter_visit
(_n_expr
)
3770 redef class ABinopExpr
3771 init init_abinopexpr
(
3772 n_expr
: nullable AExpr,
3773 n_expr2
: nullable AExpr
3776 _n_expr
= n_expr
.as(not null)
3777 n_expr
.parent
= self
3778 _n_expr2
= n_expr2
.as(not null)
3779 n_expr2
.parent
= self
3782 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3784 if _n_expr
== old_child
then
3785 n_expr
= new_child
.as(AExpr)
3788 if _n_expr2
== old_child
then
3789 n_expr2
= new_child
.as(AExpr)
3794 redef fun n_expr
=(node
)
3799 redef fun n_expr2
=(node
)
3806 redef fun visit_all
(v
: Visitor)
3808 v
.enter_visit
(_n_expr
)
3809 v
.enter_visit
(_n_expr2
)
3814 n_expr
: nullable AExpr,
3815 n_expr2
: nullable AExpr
3818 _n_expr
= n_expr
.as(not null)
3819 n_expr
.parent
= self
3820 _n_expr2
= n_expr2
.as(not null)
3821 n_expr2
.parent
= self
3824 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3826 if _n_expr
== old_child
then
3827 n_expr
= new_child
.as(AExpr)
3830 if _n_expr2
== old_child
then
3831 n_expr2
= new_child
.as(AExpr)
3836 redef fun n_expr
=(node
)
3841 redef fun n_expr2
=(node
)
3848 redef fun visit_all
(v
: Visitor)
3850 v
.enter_visit
(_n_expr
)
3851 v
.enter_visit
(_n_expr2
)
3854 redef class AAndExpr
3855 init init_aandexpr
(
3856 n_expr
: nullable AExpr,
3857 n_expr2
: nullable AExpr
3860 _n_expr
= n_expr
.as(not null)
3861 n_expr
.parent
= self
3862 _n_expr2
= n_expr2
.as(not null)
3863 n_expr2
.parent
= self
3866 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3868 if _n_expr
== old_child
then
3869 n_expr
= new_child
.as(AExpr)
3872 if _n_expr2
== old_child
then
3873 n_expr2
= new_child
.as(AExpr)
3878 redef fun n_expr
=(node
)
3883 redef fun n_expr2
=(node
)
3890 redef fun visit_all
(v
: Visitor)
3892 v
.enter_visit
(_n_expr
)
3893 v
.enter_visit
(_n_expr2
)
3896 redef class AOrElseExpr
3897 init init_aorelseexpr
(
3898 n_expr
: nullable AExpr,
3899 n_expr2
: nullable AExpr
3902 _n_expr
= n_expr
.as(not null)
3903 n_expr
.parent
= self
3904 _n_expr2
= n_expr2
.as(not null)
3905 n_expr2
.parent
= self
3908 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3910 if _n_expr
== old_child
then
3911 n_expr
= new_child
.as(AExpr)
3914 if _n_expr2
== old_child
then
3915 n_expr2
= new_child
.as(AExpr)
3920 redef fun n_expr
=(node
)
3925 redef fun n_expr2
=(node
)
3932 redef fun visit_all
(v
: Visitor)
3934 v
.enter_visit
(_n_expr
)
3935 v
.enter_visit
(_n_expr2
)
3938 redef class AImpliesExpr
3939 init init_aimpliesexpr
(
3940 n_expr
: nullable AExpr,
3941 n_expr2
: nullable AExpr
3944 _n_expr
= n_expr
.as(not null)
3945 n_expr
.parent
= self
3946 _n_expr2
= n_expr2
.as(not null)
3947 n_expr2
.parent
= self
3950 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3952 if _n_expr
== old_child
then
3953 n_expr
= new_child
.as(AExpr)
3956 if _n_expr2
== old_child
then
3957 n_expr2
= new_child
.as(AExpr)
3962 redef fun n_expr
=(node
)
3967 redef fun n_expr2
=(node
)
3974 redef fun visit_all
(v
: Visitor)
3976 v
.enter_visit
(_n_expr
)
3977 v
.enter_visit
(_n_expr2
)
3980 redef class ANotExpr
3981 init init_anotexpr
(
3982 n_kwnot
: nullable TKwnot,
3983 n_expr
: nullable AExpr
3986 _n_kwnot
= n_kwnot
.as(not null)
3987 n_kwnot
.parent
= self
3988 _n_expr
= n_expr
.as(not null)
3989 n_expr
.parent
= self
3992 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
3994 if _n_kwnot
== old_child
then
3995 n_kwnot
= new_child
.as(TKwnot)
3998 if _n_expr
== old_child
then
3999 n_expr
= new_child
.as(AExpr)
4004 redef fun n_kwnot
=(node
)
4009 redef fun n_expr
=(node
)
4016 redef fun visit_all
(v
: Visitor)
4018 v
.enter_visit
(_n_kwnot
)
4019 v
.enter_visit
(_n_expr
)
4024 n_expr
: nullable AExpr,
4025 n_expr2
: nullable AExpr
4028 _n_expr
= n_expr
.as(not null)
4029 n_expr
.parent
= self
4030 _n_expr2
= n_expr2
.as(not null)
4031 n_expr2
.parent
= self
4034 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4036 if _n_expr
== old_child
then
4037 n_expr
= new_child
.as(AExpr)
4040 if _n_expr2
== old_child
then
4041 n_expr2
= new_child
.as(AExpr)
4046 redef fun n_expr
=(node
)
4051 redef fun n_expr2
=(node
)
4058 redef fun visit_all
(v
: Visitor)
4060 v
.enter_visit
(_n_expr
)
4061 v
.enter_visit
(_n_expr2
)
4066 n_expr
: nullable AExpr,
4067 n_expr2
: nullable AExpr
4070 _n_expr
= n_expr
.as(not null)
4071 n_expr
.parent
= self
4072 _n_expr2
= n_expr2
.as(not null)
4073 n_expr2
.parent
= self
4076 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4078 if _n_expr
== old_child
then
4079 n_expr
= new_child
.as(AExpr)
4082 if _n_expr2
== old_child
then
4083 n_expr2
= new_child
.as(AExpr)
4088 redef fun n_expr
=(node
)
4093 redef fun n_expr2
=(node
)
4100 redef fun visit_all
(v
: Visitor)
4102 v
.enter_visit
(_n_expr
)
4103 v
.enter_visit
(_n_expr2
)
4108 n_expr
: nullable AExpr,
4109 n_expr2
: nullable AExpr
4112 _n_expr
= n_expr
.as(not null)
4113 n_expr
.parent
= self
4114 _n_expr2
= n_expr2
.as(not null)
4115 n_expr2
.parent
= self
4118 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4120 if _n_expr
== old_child
then
4121 n_expr
= new_child
.as(AExpr)
4124 if _n_expr2
== old_child
then
4125 n_expr2
= new_child
.as(AExpr)
4130 redef fun n_expr
=(node
)
4135 redef fun n_expr2
=(node
)
4142 redef fun visit_all
(v
: Visitor)
4144 v
.enter_visit
(_n_expr
)
4145 v
.enter_visit
(_n_expr2
)
4150 n_expr
: nullable AExpr,
4151 n_expr2
: nullable AExpr
4154 _n_expr
= n_expr
.as(not null)
4155 n_expr
.parent
= self
4156 _n_expr2
= n_expr2
.as(not null)
4157 n_expr2
.parent
= self
4160 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4162 if _n_expr
== old_child
then
4163 n_expr
= new_child
.as(AExpr)
4166 if _n_expr2
== old_child
then
4167 n_expr2
= new_child
.as(AExpr)
4172 redef fun n_expr
=(node
)
4177 redef fun n_expr2
=(node
)
4184 redef fun visit_all
(v
: Visitor)
4186 v
.enter_visit
(_n_expr
)
4187 v
.enter_visit
(_n_expr2
)
4192 n_expr
: nullable AExpr,
4193 n_expr2
: nullable AExpr
4196 _n_expr
= n_expr
.as(not null)
4197 n_expr
.parent
= self
4198 _n_expr2
= n_expr2
.as(not null)
4199 n_expr2
.parent
= self
4202 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4204 if _n_expr
== old_child
then
4205 n_expr
= new_child
.as(AExpr)
4208 if _n_expr2
== old_child
then
4209 n_expr2
= new_child
.as(AExpr)
4214 redef fun n_expr
=(node
)
4219 redef fun n_expr2
=(node
)
4226 redef fun visit_all
(v
: Visitor)
4228 v
.enter_visit
(_n_expr
)
4229 v
.enter_visit
(_n_expr2
)
4234 n_expr
: nullable AExpr,
4235 n_expr2
: nullable AExpr
4238 _n_expr
= n_expr
.as(not null)
4239 n_expr
.parent
= self
4240 _n_expr2
= n_expr2
.as(not null)
4241 n_expr2
.parent
= self
4244 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4246 if _n_expr
== old_child
then
4247 n_expr
= new_child
.as(AExpr)
4250 if _n_expr2
== old_child
then
4251 n_expr2
= new_child
.as(AExpr)
4256 redef fun n_expr
=(node
)
4261 redef fun n_expr2
=(node
)
4268 redef fun visit_all
(v
: Visitor)
4270 v
.enter_visit
(_n_expr
)
4271 v
.enter_visit
(_n_expr2
)
4276 n_expr
: nullable AExpr,
4277 n_expr2
: nullable AExpr
4280 _n_expr
= n_expr
.as(not null)
4281 n_expr
.parent
= self
4282 _n_expr2
= n_expr2
.as(not null)
4283 n_expr2
.parent
= self
4286 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4288 if _n_expr
== old_child
then
4289 n_expr
= new_child
.as(AExpr)
4292 if _n_expr2
== old_child
then
4293 n_expr2
= new_child
.as(AExpr)
4298 redef fun n_expr
=(node
)
4303 redef fun n_expr2
=(node
)
4310 redef fun visit_all
(v
: Visitor)
4312 v
.enter_visit
(_n_expr
)
4313 v
.enter_visit
(_n_expr2
)
4318 n_expr
: nullable AExpr,
4319 n_expr2
: nullable AExpr
4322 _n_expr
= n_expr
.as(not null)
4323 n_expr
.parent
= self
4324 _n_expr2
= n_expr2
.as(not null)
4325 n_expr2
.parent
= self
4328 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4330 if _n_expr
== old_child
then
4331 n_expr
= new_child
.as(AExpr)
4334 if _n_expr2
== old_child
then
4335 n_expr2
= new_child
.as(AExpr)
4340 redef fun n_expr
=(node
)
4345 redef fun n_expr2
=(node
)
4352 redef fun visit_all
(v
: Visitor)
4354 v
.enter_visit
(_n_expr
)
4355 v
.enter_visit
(_n_expr2
)
4358 redef class AIsaExpr
4359 init init_aisaexpr
(
4360 n_expr
: nullable AExpr,
4361 n_type
: nullable AType
4364 _n_expr
= n_expr
.as(not null)
4365 n_expr
.parent
= self
4366 _n_type
= n_type
.as(not null)
4367 n_type
.parent
= self
4370 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4372 if _n_expr
== old_child
then
4373 n_expr
= new_child
.as(AExpr)
4376 if _n_type
== old_child
then
4377 n_type
= new_child
.as(AType)
4382 redef fun n_expr
=(node
)
4387 redef fun n_type
=(node
)
4394 redef fun visit_all
(v
: Visitor)
4396 v
.enter_visit
(_n_expr
)
4397 v
.enter_visit
(_n_type
)
4400 redef class APlusExpr
4401 init init_aplusexpr
(
4402 n_expr
: nullable AExpr,
4403 n_expr2
: nullable AExpr
4406 _n_expr
= n_expr
.as(not null)
4407 n_expr
.parent
= self
4408 _n_expr2
= n_expr2
.as(not null)
4409 n_expr2
.parent
= self
4412 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4414 if _n_expr
== old_child
then
4415 n_expr
= new_child
.as(AExpr)
4418 if _n_expr2
== old_child
then
4419 n_expr2
= new_child
.as(AExpr)
4424 redef fun n_expr
=(node
)
4429 redef fun n_expr2
=(node
)
4436 redef fun visit_all
(v
: Visitor)
4438 v
.enter_visit
(_n_expr
)
4439 v
.enter_visit
(_n_expr2
)
4442 redef class AMinusExpr
4443 init init_aminusexpr
(
4444 n_expr
: nullable AExpr,
4445 n_expr2
: nullable AExpr
4448 _n_expr
= n_expr
.as(not null)
4449 n_expr
.parent
= self
4450 _n_expr2
= n_expr2
.as(not null)
4451 n_expr2
.parent
= self
4454 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4456 if _n_expr
== old_child
then
4457 n_expr
= new_child
.as(AExpr)
4460 if _n_expr2
== old_child
then
4461 n_expr2
= new_child
.as(AExpr)
4466 redef fun n_expr
=(node
)
4471 redef fun n_expr2
=(node
)
4478 redef fun visit_all
(v
: Visitor)
4480 v
.enter_visit
(_n_expr
)
4481 v
.enter_visit
(_n_expr2
)
4484 redef class AStarshipExpr
4485 init init_astarshipexpr
(
4486 n_expr
: nullable AExpr,
4487 n_expr2
: nullable AExpr
4490 _n_expr
= n_expr
.as(not null)
4491 n_expr
.parent
= self
4492 _n_expr2
= n_expr2
.as(not null)
4493 n_expr2
.parent
= self
4496 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4498 if _n_expr
== old_child
then
4499 n_expr
= new_child
.as(AExpr)
4502 if _n_expr2
== old_child
then
4503 n_expr2
= new_child
.as(AExpr)
4508 redef fun n_expr
=(node
)
4513 redef fun n_expr2
=(node
)
4520 redef fun visit_all
(v
: Visitor)
4522 v
.enter_visit
(_n_expr
)
4523 v
.enter_visit
(_n_expr2
)
4526 redef class AStarExpr
4527 init init_astarexpr
(
4528 n_expr
: nullable AExpr,
4529 n_expr2
: nullable AExpr
4532 _n_expr
= n_expr
.as(not null)
4533 n_expr
.parent
= self
4534 _n_expr2
= n_expr2
.as(not null)
4535 n_expr2
.parent
= self
4538 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4540 if _n_expr
== old_child
then
4541 n_expr
= new_child
.as(AExpr)
4544 if _n_expr2
== old_child
then
4545 n_expr2
= new_child
.as(AExpr)
4550 redef fun n_expr
=(node
)
4555 redef fun n_expr2
=(node
)
4562 redef fun visit_all
(v
: Visitor)
4564 v
.enter_visit
(_n_expr
)
4565 v
.enter_visit
(_n_expr2
)
4568 redef class ASlashExpr
4569 init init_aslashexpr
(
4570 n_expr
: nullable AExpr,
4571 n_expr2
: nullable AExpr
4574 _n_expr
= n_expr
.as(not null)
4575 n_expr
.parent
= self
4576 _n_expr2
= n_expr2
.as(not null)
4577 n_expr2
.parent
= self
4580 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4582 if _n_expr
== old_child
then
4583 n_expr
= new_child
.as(AExpr)
4586 if _n_expr2
== old_child
then
4587 n_expr2
= new_child
.as(AExpr)
4592 redef fun n_expr
=(node
)
4597 redef fun n_expr2
=(node
)
4604 redef fun visit_all
(v
: Visitor)
4606 v
.enter_visit
(_n_expr
)
4607 v
.enter_visit
(_n_expr2
)
4610 redef class APercentExpr
4611 init init_apercentexpr
(
4612 n_expr
: nullable AExpr,
4613 n_expr2
: nullable AExpr
4616 _n_expr
= n_expr
.as(not null)
4617 n_expr
.parent
= self
4618 _n_expr2
= n_expr2
.as(not null)
4619 n_expr2
.parent
= self
4622 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4624 if _n_expr
== old_child
then
4625 n_expr
= new_child
.as(AExpr)
4628 if _n_expr2
== old_child
then
4629 n_expr2
= new_child
.as(AExpr)
4634 redef fun n_expr
=(node
)
4639 redef fun n_expr2
=(node
)
4646 redef fun visit_all
(v
: Visitor)
4648 v
.enter_visit
(_n_expr
)
4649 v
.enter_visit
(_n_expr2
)
4652 redef class AUminusExpr
4653 init init_auminusexpr
(
4654 n_minus
: nullable TMinus,
4655 n_expr
: nullable AExpr
4658 _n_minus
= n_minus
.as(not null)
4659 n_minus
.parent
= self
4660 _n_expr
= n_expr
.as(not null)
4661 n_expr
.parent
= self
4664 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4666 if _n_minus
== old_child
then
4667 n_minus
= new_child
.as(TMinus)
4670 if _n_expr
== old_child
then
4671 n_expr
= new_child
.as(AExpr)
4676 redef fun n_minus
=(node
)
4681 redef fun n_expr
=(node
)
4688 redef fun visit_all
(v
: Visitor)
4690 v
.enter_visit
(_n_minus
)
4691 v
.enter_visit
(_n_expr
)
4694 redef class ANewExpr
4695 init init_anewexpr
(
4696 n_kwnew
: nullable TKwnew,
4697 n_type
: nullable AType,
4699 n_args
: nullable AExprs
4702 _n_kwnew
= n_kwnew
.as(not null)
4703 n_kwnew
.parent
= self
4704 _n_type
= n_type
.as(not null)
4705 n_type
.parent
= self
4707 if n_id
!= null then n_id
.parent
= self
4708 _n_args
= n_args
.as(not null)
4709 n_args
.parent
= self
4712 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4714 if _n_kwnew
== old_child
then
4715 n_kwnew
= new_child
.as(TKwnew)
4718 if _n_type
== old_child
then
4719 n_type
= new_child
.as(AType)
4722 if _n_id
== old_child
then
4723 n_id
= new_child
.as(nullable TId)
4726 if _n_args
== old_child
then
4727 n_args
= new_child
.as(AExprs)
4732 redef fun n_kwnew
=(node
)
4737 redef fun n_type
=(node
)
4742 redef fun n_id
=(node
)
4745 if node
!= null then node
.parent
= self
4747 redef fun n_args
=(node
)
4754 redef fun visit_all
(v
: Visitor)
4756 v
.enter_visit
(_n_kwnew
)
4757 v
.enter_visit
(_n_type
)
4758 v
.enter_visit
(_n_id
)
4759 v
.enter_visit
(_n_args
)
4762 redef class AAttrExpr
4763 init init_aattrexpr
(
4764 n_expr
: nullable AExpr,
4765 n_id
: nullable TAttrid
4768 _n_expr
= n_expr
.as(not null)
4769 n_expr
.parent
= self
4770 _n_id
= n_id
.as(not null)
4774 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4776 if _n_expr
== old_child
then
4777 n_expr
= new_child
.as(AExpr)
4780 if _n_id
== old_child
then
4781 n_id
= new_child
.as(TAttrid)
4786 redef fun n_expr
=(node
)
4791 redef fun n_id
=(node
)
4798 redef fun visit_all
(v
: Visitor)
4800 v
.enter_visit
(_n_expr
)
4801 v
.enter_visit
(_n_id
)
4804 redef class AAttrAssignExpr
4805 init init_aattrassignexpr
(
4806 n_expr
: nullable AExpr,
4807 n_id
: nullable TAttrid,
4808 n_assign
: nullable TAssign,
4809 n_value
: nullable AExpr
4812 _n_expr
= n_expr
.as(not null)
4813 n_expr
.parent
= self
4814 _n_id
= n_id
.as(not null)
4816 _n_assign
= n_assign
.as(not null)
4817 n_assign
.parent
= self
4818 _n_value
= n_value
.as(not null)
4819 n_value
.parent
= self
4822 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4824 if _n_expr
== old_child
then
4825 n_expr
= new_child
.as(AExpr)
4828 if _n_id
== old_child
then
4829 n_id
= new_child
.as(TAttrid)
4832 if _n_assign
== old_child
then
4833 n_assign
= new_child
.as(TAssign)
4836 if _n_value
== old_child
then
4837 n_value
= new_child
.as(AExpr)
4842 redef fun n_expr
=(node
)
4847 redef fun n_id
=(node
)
4852 redef fun n_assign
=(node
)
4857 redef fun n_value
=(node
)
4864 redef fun visit_all
(v
: Visitor)
4866 v
.enter_visit
(_n_expr
)
4867 v
.enter_visit
(_n_id
)
4868 v
.enter_visit
(_n_assign
)
4869 v
.enter_visit
(_n_value
)
4872 redef class AAttrReassignExpr
4873 init init_aattrreassignexpr
(
4874 n_expr
: nullable AExpr,
4875 n_id
: nullable TAttrid,
4876 n_assign_op
: nullable AAssignOp,
4877 n_value
: nullable AExpr
4880 _n_expr
= n_expr
.as(not null)
4881 n_expr
.parent
= self
4882 _n_id
= n_id
.as(not null)
4884 _n_assign_op
= n_assign_op
.as(not null)
4885 n_assign_op
.parent
= self
4886 _n_value
= n_value
.as(not null)
4887 n_value
.parent
= self
4890 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4892 if _n_expr
== old_child
then
4893 n_expr
= new_child
.as(AExpr)
4896 if _n_id
== old_child
then
4897 n_id
= new_child
.as(TAttrid)
4900 if _n_assign_op
== old_child
then
4901 n_assign_op
= new_child
.as(AAssignOp)
4904 if _n_value
== old_child
then
4905 n_value
= new_child
.as(AExpr)
4910 redef fun n_expr
=(node
)
4915 redef fun n_id
=(node
)
4920 redef fun n_assign_op
=(node
)
4925 redef fun n_value
=(node
)
4932 redef fun visit_all
(v
: Visitor)
4934 v
.enter_visit
(_n_expr
)
4935 v
.enter_visit
(_n_id
)
4936 v
.enter_visit
(_n_assign_op
)
4937 v
.enter_visit
(_n_value
)
4940 redef class ACallExpr
4941 init init_acallexpr
(
4942 n_expr
: nullable AExpr,
4944 n_args
: nullable AExprs
4947 _n_expr
= n_expr
.as(not null)
4948 n_expr
.parent
= self
4949 _n_id
= n_id
.as(not null)
4951 _n_args
= n_args
.as(not null)
4952 n_args
.parent
= self
4955 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
4957 if _n_expr
== old_child
then
4958 n_expr
= new_child
.as(AExpr)
4961 if _n_id
== old_child
then
4962 n_id
= new_child
.as(TId)
4965 if _n_args
== old_child
then
4966 n_args
= new_child
.as(AExprs)
4971 redef fun n_expr
=(node
)
4976 redef fun n_id
=(node
)
4981 redef fun n_args
=(node
)
4988 redef fun visit_all
(v
: Visitor)
4990 v
.enter_visit
(_n_expr
)
4991 v
.enter_visit
(_n_id
)
4992 v
.enter_visit
(_n_args
)
4995 redef class ACallAssignExpr
4996 init init_acallassignexpr
(
4997 n_expr
: nullable AExpr,
4999 n_args
: nullable AExprs,
5000 n_assign
: nullable TAssign,
5001 n_value
: nullable AExpr
5004 _n_expr
= n_expr
.as(not null)
5005 n_expr
.parent
= self
5006 _n_id
= n_id
.as(not null)
5008 _n_args
= n_args
.as(not null)
5009 n_args
.parent
= self
5010 _n_assign
= n_assign
.as(not null)
5011 n_assign
.parent
= self
5012 _n_value
= n_value
.as(not null)
5013 n_value
.parent
= self
5016 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5018 if _n_expr
== old_child
then
5019 n_expr
= new_child
.as(AExpr)
5022 if _n_id
== old_child
then
5023 n_id
= new_child
.as(TId)
5026 if _n_args
== old_child
then
5027 n_args
= new_child
.as(AExprs)
5030 if _n_assign
== old_child
then
5031 n_assign
= new_child
.as(TAssign)
5034 if _n_value
== old_child
then
5035 n_value
= new_child
.as(AExpr)
5040 redef fun n_expr
=(node
)
5045 redef fun n_id
=(node
)
5050 redef fun n_args
=(node
)
5055 redef fun n_assign
=(node
)
5060 redef fun n_value
=(node
)
5067 redef fun visit_all
(v
: Visitor)
5069 v
.enter_visit
(_n_expr
)
5070 v
.enter_visit
(_n_id
)
5071 v
.enter_visit
(_n_args
)
5072 v
.enter_visit
(_n_assign
)
5073 v
.enter_visit
(_n_value
)
5076 redef class ACallReassignExpr
5077 init init_acallreassignexpr
(
5078 n_expr
: nullable AExpr,
5080 n_args
: nullable AExprs,
5081 n_assign_op
: nullable AAssignOp,
5082 n_value
: nullable AExpr
5085 _n_expr
= n_expr
.as(not null)
5086 n_expr
.parent
= self
5087 _n_id
= n_id
.as(not null)
5089 _n_args
= n_args
.as(not null)
5090 n_args
.parent
= self
5091 _n_assign_op
= n_assign_op
.as(not null)
5092 n_assign_op
.parent
= self
5093 _n_value
= n_value
.as(not null)
5094 n_value
.parent
= self
5097 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5099 if _n_expr
== old_child
then
5100 n_expr
= new_child
.as(AExpr)
5103 if _n_id
== old_child
then
5104 n_id
= new_child
.as(TId)
5107 if _n_args
== old_child
then
5108 n_args
= new_child
.as(AExprs)
5111 if _n_assign_op
== old_child
then
5112 n_assign_op
= new_child
.as(AAssignOp)
5115 if _n_value
== old_child
then
5116 n_value
= new_child
.as(AExpr)
5121 redef fun n_expr
=(node
)
5126 redef fun n_id
=(node
)
5131 redef fun n_args
=(node
)
5136 redef fun n_assign_op
=(node
)
5141 redef fun n_value
=(node
)
5148 redef fun visit_all
(v
: Visitor)
5150 v
.enter_visit
(_n_expr
)
5151 v
.enter_visit
(_n_id
)
5152 v
.enter_visit
(_n_args
)
5153 v
.enter_visit
(_n_assign_op
)
5154 v
.enter_visit
(_n_value
)
5157 redef class ASuperExpr
5158 init init_asuperexpr
(
5159 n_qualified
: nullable AQualified,
5160 n_kwsuper
: nullable TKwsuper,
5161 n_args
: nullable AExprs
5164 _n_qualified
= n_qualified
5165 if n_qualified
!= null then n_qualified
.parent
= self
5166 _n_kwsuper
= n_kwsuper
.as(not null)
5167 n_kwsuper
.parent
= self
5168 _n_args
= n_args
.as(not null)
5169 n_args
.parent
= self
5172 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5174 if _n_qualified
== old_child
then
5175 n_qualified
= new_child
.as(nullable AQualified)
5178 if _n_kwsuper
== old_child
then
5179 n_kwsuper
= new_child
.as(TKwsuper)
5182 if _n_args
== old_child
then
5183 n_args
= new_child
.as(AExprs)
5188 redef fun n_qualified
=(node
)
5191 if node
!= null then node
.parent
= self
5193 redef fun n_kwsuper
=(node
)
5198 redef fun n_args
=(node
)
5205 redef fun visit_all
(v
: Visitor)
5207 v
.enter_visit
(_n_qualified
)
5208 v
.enter_visit
(_n_kwsuper
)
5209 v
.enter_visit
(_n_args
)
5212 redef class AInitExpr
5213 init init_ainitexpr
(
5214 n_expr
: nullable AExpr,
5215 n_kwinit
: nullable TKwinit,
5216 n_args
: nullable AExprs
5219 _n_expr
= n_expr
.as(not null)
5220 n_expr
.parent
= self
5221 _n_kwinit
= n_kwinit
.as(not null)
5222 n_kwinit
.parent
= self
5223 _n_args
= n_args
.as(not null)
5224 n_args
.parent
= self
5227 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5229 if _n_expr
== old_child
then
5230 n_expr
= new_child
.as(AExpr)
5233 if _n_kwinit
== old_child
then
5234 n_kwinit
= new_child
.as(TKwinit)
5237 if _n_args
== old_child
then
5238 n_args
= new_child
.as(AExprs)
5243 redef fun n_expr
=(node
)
5248 redef fun n_kwinit
=(node
)
5253 redef fun n_args
=(node
)
5260 redef fun visit_all
(v
: Visitor)
5262 v
.enter_visit
(_n_expr
)
5263 v
.enter_visit
(_n_kwinit
)
5264 v
.enter_visit
(_n_args
)
5267 redef class ABraExpr
5268 init init_abraexpr
(
5269 n_expr
: nullable AExpr,
5270 n_args
: nullable AExprs
5273 _n_expr
= n_expr
.as(not null)
5274 n_expr
.parent
= self
5275 _n_args
= n_args
.as(not null)
5276 n_args
.parent
= self
5279 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5281 if _n_expr
== old_child
then
5282 n_expr
= new_child
.as(AExpr)
5285 if _n_args
== old_child
then
5286 n_args
= new_child
.as(AExprs)
5291 redef fun n_expr
=(node
)
5296 redef fun n_args
=(node
)
5303 redef fun visit_all
(v
: Visitor)
5305 v
.enter_visit
(_n_expr
)
5306 v
.enter_visit
(_n_args
)
5309 redef class ABraAssignExpr
5310 init init_abraassignexpr
(
5311 n_expr
: nullable AExpr,
5312 n_args
: nullable AExprs,
5313 n_assign
: nullable TAssign,
5314 n_value
: nullable AExpr
5317 _n_expr
= n_expr
.as(not null)
5318 n_expr
.parent
= self
5319 _n_args
= n_args
.as(not null)
5320 n_args
.parent
= self
5321 _n_assign
= n_assign
.as(not null)
5322 n_assign
.parent
= self
5323 _n_value
= n_value
.as(not null)
5324 n_value
.parent
= self
5327 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5329 if _n_expr
== old_child
then
5330 n_expr
= new_child
.as(AExpr)
5333 if _n_args
== old_child
then
5334 n_args
= new_child
.as(AExprs)
5337 if _n_assign
== old_child
then
5338 n_assign
= new_child
.as(TAssign)
5341 if _n_value
== old_child
then
5342 n_value
= new_child
.as(AExpr)
5347 redef fun n_expr
=(node
)
5352 redef fun n_args
=(node
)
5357 redef fun n_assign
=(node
)
5362 redef fun n_value
=(node
)
5369 redef fun visit_all
(v
: Visitor)
5371 v
.enter_visit
(_n_expr
)
5372 v
.enter_visit
(_n_args
)
5373 v
.enter_visit
(_n_assign
)
5374 v
.enter_visit
(_n_value
)
5377 redef class ABraReassignExpr
5378 init init_abrareassignexpr
(
5379 n_expr
: nullable AExpr,
5380 n_args
: nullable AExprs,
5381 n_assign_op
: nullable AAssignOp,
5382 n_value
: nullable AExpr
5385 _n_expr
= n_expr
.as(not null)
5386 n_expr
.parent
= self
5387 _n_args
= n_args
.as(not null)
5388 n_args
.parent
= self
5389 _n_assign_op
= n_assign_op
.as(not null)
5390 n_assign_op
.parent
= self
5391 _n_value
= n_value
.as(not null)
5392 n_value
.parent
= self
5395 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5397 if _n_expr
== old_child
then
5398 n_expr
= new_child
.as(AExpr)
5401 if _n_args
== old_child
then
5402 n_args
= new_child
.as(AExprs)
5405 if _n_assign_op
== old_child
then
5406 n_assign_op
= new_child
.as(AAssignOp)
5409 if _n_value
== old_child
then
5410 n_value
= new_child
.as(AExpr)
5415 redef fun n_expr
=(node
)
5420 redef fun n_args
=(node
)
5425 redef fun n_assign_op
=(node
)
5430 redef fun n_value
=(node
)
5437 redef fun visit_all
(v
: Visitor)
5439 v
.enter_visit
(_n_expr
)
5440 v
.enter_visit
(_n_args
)
5441 v
.enter_visit
(_n_assign_op
)
5442 v
.enter_visit
(_n_value
)
5445 redef class AVarExpr
5446 init init_avarexpr
(
5450 _n_id
= n_id
.as(not null)
5454 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5456 if _n_id
== old_child
then
5457 n_id
= new_child
.as(TId)
5462 redef fun n_id
=(node
)
5469 redef fun visit_all
(v
: Visitor)
5471 v
.enter_visit
(_n_id
)
5474 redef class AVarAssignExpr
5475 init init_avarassignexpr
(
5477 n_assign
: nullable TAssign,
5478 n_value
: nullable AExpr
5481 _n_id
= n_id
.as(not null)
5483 _n_assign
= n_assign
.as(not null)
5484 n_assign
.parent
= self
5485 _n_value
= n_value
.as(not null)
5486 n_value
.parent
= self
5489 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5491 if _n_id
== old_child
then
5492 n_id
= new_child
.as(TId)
5495 if _n_assign
== old_child
then
5496 n_assign
= new_child
.as(TAssign)
5499 if _n_value
== old_child
then
5500 n_value
= new_child
.as(AExpr)
5505 redef fun n_id
=(node
)
5510 redef fun n_assign
=(node
)
5515 redef fun n_value
=(node
)
5522 redef fun visit_all
(v
: Visitor)
5524 v
.enter_visit
(_n_id
)
5525 v
.enter_visit
(_n_assign
)
5526 v
.enter_visit
(_n_value
)
5529 redef class AVarReassignExpr
5530 init init_avarreassignexpr
(
5532 n_assign_op
: nullable AAssignOp,
5533 n_value
: nullable AExpr
5536 _n_id
= n_id
.as(not null)
5538 _n_assign_op
= n_assign_op
.as(not null)
5539 n_assign_op
.parent
= self
5540 _n_value
= n_value
.as(not null)
5541 n_value
.parent
= self
5544 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5546 if _n_id
== old_child
then
5547 n_id
= new_child
.as(TId)
5550 if _n_assign_op
== old_child
then
5551 n_assign_op
= new_child
.as(AAssignOp)
5554 if _n_value
== old_child
then
5555 n_value
= new_child
.as(AExpr)
5560 redef fun n_id
=(node
)
5565 redef fun n_assign_op
=(node
)
5570 redef fun n_value
=(node
)
5577 redef fun visit_all
(v
: Visitor)
5579 v
.enter_visit
(_n_id
)
5580 v
.enter_visit
(_n_assign_op
)
5581 v
.enter_visit
(_n_value
)
5584 redef class ARangeExpr
5585 init init_arangeexpr
(
5586 n_expr
: nullable AExpr,
5587 n_expr2
: nullable AExpr,
5588 n_annotations
: nullable AAnnotations
5591 _n_expr
= n_expr
.as(not null)
5592 n_expr
.parent
= self
5593 _n_expr2
= n_expr2
.as(not null)
5594 n_expr2
.parent
= self
5595 _n_annotations
= n_annotations
5596 if n_annotations
!= null then n_annotations
.parent
= self
5599 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5601 if _n_expr
== old_child
then
5602 n_expr
= new_child
.as(AExpr)
5605 if _n_expr2
== old_child
then
5606 n_expr2
= new_child
.as(AExpr)
5609 if _n_annotations
== old_child
then
5610 n_annotations
= new_child
.as(nullable AAnnotations)
5615 redef fun n_expr
=(node
)
5620 redef fun n_expr2
=(node
)
5625 redef fun n_annotations
=(node
)
5627 _n_annotations
= node
5628 if node
!= null then node
.parent
= self
5632 redef fun visit_all
(v
: Visitor)
5634 v
.enter_visit
(_n_expr
)
5635 v
.enter_visit
(_n_expr2
)
5636 v
.enter_visit
(_n_annotations
)
5639 redef class ACrangeExpr
5640 init init_acrangeexpr
(
5641 n_obra
: nullable TObra,
5642 n_expr
: nullable AExpr,
5643 n_expr2
: nullable AExpr,
5644 n_cbra
: nullable TCbra,
5645 n_annotations
: nullable AAnnotations
5648 _n_obra
= n_obra
.as(not null)
5649 n_obra
.parent
= self
5650 _n_expr
= n_expr
.as(not null)
5651 n_expr
.parent
= self
5652 _n_expr2
= n_expr2
.as(not null)
5653 n_expr2
.parent
= self
5654 _n_cbra
= n_cbra
.as(not null)
5655 n_cbra
.parent
= self
5656 _n_annotations
= n_annotations
5657 if n_annotations
!= null then n_annotations
.parent
= self
5660 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5662 if _n_obra
== old_child
then
5663 n_obra
= new_child
.as(TObra)
5666 if _n_expr
== old_child
then
5667 n_expr
= new_child
.as(AExpr)
5670 if _n_expr2
== old_child
then
5671 n_expr2
= new_child
.as(AExpr)
5674 if _n_cbra
== old_child
then
5675 n_cbra
= new_child
.as(TCbra)
5678 if _n_annotations
== old_child
then
5679 n_annotations
= new_child
.as(nullable AAnnotations)
5684 redef fun n_obra
=(node
)
5689 redef fun n_expr
=(node
)
5694 redef fun n_expr2
=(node
)
5699 redef fun n_cbra
=(node
)
5704 redef fun n_annotations
=(node
)
5706 _n_annotations
= node
5707 if node
!= null then node
.parent
= self
5711 redef fun visit_all
(v
: Visitor)
5713 v
.enter_visit
(_n_obra
)
5714 v
.enter_visit
(_n_expr
)
5715 v
.enter_visit
(_n_expr2
)
5716 v
.enter_visit
(_n_cbra
)
5717 v
.enter_visit
(_n_annotations
)
5720 redef class AOrangeExpr
5721 init init_aorangeexpr
(
5722 n_obra
: nullable TObra,
5723 n_expr
: nullable AExpr,
5724 n_expr2
: nullable AExpr,
5725 n_cbra
: nullable TObra,
5726 n_annotations
: nullable AAnnotations
5729 _n_obra
= n_obra
.as(not null)
5730 n_obra
.parent
= self
5731 _n_expr
= n_expr
.as(not null)
5732 n_expr
.parent
= self
5733 _n_expr2
= n_expr2
.as(not null)
5734 n_expr2
.parent
= self
5735 _n_cbra
= n_cbra
.as(not null)
5736 n_cbra
.parent
= self
5737 _n_annotations
= n_annotations
5738 if n_annotations
!= null then n_annotations
.parent
= self
5741 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5743 if _n_obra
== old_child
then
5744 n_obra
= new_child
.as(TObra)
5747 if _n_expr
== old_child
then
5748 n_expr
= new_child
.as(AExpr)
5751 if _n_expr2
== old_child
then
5752 n_expr2
= new_child
.as(AExpr)
5755 if _n_cbra
== old_child
then
5756 n_cbra
= new_child
.as(TObra)
5759 if _n_annotations
== old_child
then
5760 n_annotations
= new_child
.as(nullable AAnnotations)
5765 redef fun n_obra
=(node
)
5770 redef fun n_expr
=(node
)
5775 redef fun n_expr2
=(node
)
5780 redef fun n_cbra
=(node
)
5785 redef fun n_annotations
=(node
)
5787 _n_annotations
= node
5788 if node
!= null then node
.parent
= self
5792 redef fun visit_all
(v
: Visitor)
5794 v
.enter_visit
(_n_obra
)
5795 v
.enter_visit
(_n_expr
)
5796 v
.enter_visit
(_n_expr2
)
5797 v
.enter_visit
(_n_cbra
)
5798 v
.enter_visit
(_n_annotations
)
5801 redef class AArrayExpr
5802 init init_aarrayexpr
(
5803 n_exprs
: nullable AExprs,
5804 n_annotations
: nullable AAnnotations
5807 _n_exprs
= n_exprs
.as(not null)
5808 n_exprs
.parent
= self
5809 _n_annotations
= n_annotations
5810 if n_annotations
!= null then n_annotations
.parent
= self
5813 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5815 if _n_exprs
== old_child
then
5816 n_exprs
= new_child
.as(AExprs)
5819 if _n_annotations
== old_child
then
5820 n_annotations
= new_child
.as(nullable AAnnotations)
5825 redef fun n_exprs
=(node
)
5830 redef fun n_annotations
=(node
)
5832 _n_annotations
= node
5833 if node
!= null then node
.parent
= self
5837 redef fun visit_all
(v
: Visitor)
5839 v
.enter_visit
(_n_exprs
)
5840 v
.enter_visit
(_n_annotations
)
5843 redef class ASelfExpr
5844 init init_aselfexpr
(
5845 n_kwself
: nullable TKwself,
5846 n_annotations
: nullable AAnnotations
5849 _n_kwself
= n_kwself
.as(not null)
5850 n_kwself
.parent
= self
5851 _n_annotations
= n_annotations
5852 if n_annotations
!= null then n_annotations
.parent
= self
5855 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5857 if _n_kwself
== old_child
then
5858 n_kwself
= new_child
.as(TKwself)
5861 if _n_annotations
== old_child
then
5862 n_annotations
= new_child
.as(nullable AAnnotations)
5867 redef fun n_kwself
=(node
)
5872 redef fun n_annotations
=(node
)
5874 _n_annotations
= node
5875 if node
!= null then node
.parent
= self
5879 redef fun visit_all
(v
: Visitor)
5881 v
.enter_visit
(_n_kwself
)
5882 v
.enter_visit
(_n_annotations
)
5885 redef class AImplicitSelfExpr
5886 init init_aimplicitselfexpr
5890 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5896 redef fun visit_all
(v
: Visitor)
5900 redef class ATrueExpr
5901 init init_atrueexpr
(
5902 n_kwtrue
: nullable TKwtrue,
5903 n_annotations
: nullable AAnnotations
5906 _n_kwtrue
= n_kwtrue
.as(not null)
5907 n_kwtrue
.parent
= self
5908 _n_annotations
= n_annotations
5909 if n_annotations
!= null then n_annotations
.parent
= self
5912 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5914 if _n_kwtrue
== old_child
then
5915 n_kwtrue
= new_child
.as(TKwtrue)
5918 if _n_annotations
== old_child
then
5919 n_annotations
= new_child
.as(nullable AAnnotations)
5924 redef fun n_kwtrue
=(node
)
5929 redef fun n_annotations
=(node
)
5931 _n_annotations
= node
5932 if node
!= null then node
.parent
= self
5936 redef fun visit_all
(v
: Visitor)
5938 v
.enter_visit
(_n_kwtrue
)
5939 v
.enter_visit
(_n_annotations
)
5942 redef class AFalseExpr
5943 init init_afalseexpr
(
5944 n_kwfalse
: nullable TKwfalse,
5945 n_annotations
: nullable AAnnotations
5948 _n_kwfalse
= n_kwfalse
.as(not null)
5949 n_kwfalse
.parent
= self
5950 _n_annotations
= n_annotations
5951 if n_annotations
!= null then n_annotations
.parent
= self
5954 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5956 if _n_kwfalse
== old_child
then
5957 n_kwfalse
= new_child
.as(TKwfalse)
5960 if _n_annotations
== old_child
then
5961 n_annotations
= new_child
.as(nullable AAnnotations)
5966 redef fun n_kwfalse
=(node
)
5971 redef fun n_annotations
=(node
)
5973 _n_annotations
= node
5974 if node
!= null then node
.parent
= self
5978 redef fun visit_all
(v
: Visitor)
5980 v
.enter_visit
(_n_kwfalse
)
5981 v
.enter_visit
(_n_annotations
)
5984 redef class ANullExpr
5985 init init_anullexpr
(
5986 n_kwnull
: nullable TKwnull,
5987 n_annotations
: nullable AAnnotations
5990 _n_kwnull
= n_kwnull
.as(not null)
5991 n_kwnull
.parent
= self
5992 _n_annotations
= n_annotations
5993 if n_annotations
!= null then n_annotations
.parent
= self
5996 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
5998 if _n_kwnull
== old_child
then
5999 n_kwnull
= new_child
.as(TKwnull)
6002 if _n_annotations
== old_child
then
6003 n_annotations
= new_child
.as(nullable AAnnotations)
6008 redef fun n_kwnull
=(node
)
6013 redef fun n_annotations
=(node
)
6015 _n_annotations
= node
6016 if node
!= null then node
.parent
= self
6020 redef fun visit_all
(v
: Visitor)
6022 v
.enter_visit
(_n_kwnull
)
6023 v
.enter_visit
(_n_annotations
)
6026 redef class ADecIntExpr
6027 init init_adecintexpr
(
6028 n_number
: nullable TNumber,
6029 n_annotations
: nullable AAnnotations
6032 _n_number
= n_number
.as(not null)
6033 n_number
.parent
= self
6034 _n_annotations
= n_annotations
6035 if n_annotations
!= null then n_annotations
.parent
= self
6038 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6040 if _n_number
== old_child
then
6041 n_number
= new_child
.as(TNumber)
6044 if _n_annotations
== old_child
then
6045 n_annotations
= new_child
.as(nullable AAnnotations)
6050 redef fun n_number
=(node
)
6055 redef fun n_annotations
=(node
)
6057 _n_annotations
= node
6058 if node
!= null then node
.parent
= self
6062 redef fun visit_all
(v
: Visitor)
6064 v
.enter_visit
(_n_number
)
6065 v
.enter_visit
(_n_annotations
)
6068 redef class AHexIntExpr
6069 init init_ahexintexpr
(
6070 n_hex_number
: nullable THexNumber,
6071 n_annotations
: nullable AAnnotations
6074 _n_hex_number
= n_hex_number
.as(not null)
6075 n_hex_number
.parent
= self
6076 _n_annotations
= n_annotations
6077 if n_annotations
!= null then n_annotations
.parent
= self
6080 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6082 if _n_hex_number
== old_child
then
6083 n_hex_number
= new_child
.as(THexNumber)
6086 if _n_annotations
== old_child
then
6087 n_annotations
= new_child
.as(nullable AAnnotations)
6092 redef fun n_hex_number
=(node
)
6094 _n_hex_number
= node
6097 redef fun n_annotations
=(node
)
6099 _n_annotations
= node
6100 if node
!= null then node
.parent
= self
6104 redef fun visit_all
(v
: Visitor)
6106 v
.enter_visit
(_n_hex_number
)
6107 v
.enter_visit
(_n_annotations
)
6110 redef class AFloatExpr
6111 init init_afloatexpr
(
6112 n_float
: nullable TFloat,
6113 n_annotations
: nullable AAnnotations
6116 _n_float
= n_float
.as(not null)
6117 n_float
.parent
= self
6118 _n_annotations
= n_annotations
6119 if n_annotations
!= null then n_annotations
.parent
= self
6122 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6124 if _n_float
== old_child
then
6125 n_float
= new_child
.as(TFloat)
6128 if _n_annotations
== old_child
then
6129 n_annotations
= new_child
.as(nullable AAnnotations)
6134 redef fun n_float
=(node
)
6139 redef fun n_annotations
=(node
)
6141 _n_annotations
= node
6142 if node
!= null then node
.parent
= self
6146 redef fun visit_all
(v
: Visitor)
6148 v
.enter_visit
(_n_float
)
6149 v
.enter_visit
(_n_annotations
)
6152 redef class ACharExpr
6153 init init_acharexpr
(
6154 n_char
: nullable TChar,
6155 n_annotations
: nullable AAnnotations
6158 _n_char
= n_char
.as(not null)
6159 n_char
.parent
= self
6160 _n_annotations
= n_annotations
6161 if n_annotations
!= null then n_annotations
.parent
= self
6164 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6166 if _n_char
== old_child
then
6167 n_char
= new_child
.as(TChar)
6170 if _n_annotations
== old_child
then
6171 n_annotations
= new_child
.as(nullable AAnnotations)
6176 redef fun n_char
=(node
)
6181 redef fun n_annotations
=(node
)
6183 _n_annotations
= node
6184 if node
!= null then node
.parent
= self
6188 redef fun visit_all
(v
: Visitor)
6190 v
.enter_visit
(_n_char
)
6191 v
.enter_visit
(_n_annotations
)
6194 redef class AStringExpr
6195 init init_astringexpr
(
6196 n_string
: nullable TString,
6197 n_annotations
: nullable AAnnotations
6200 _n_string
= n_string
.as(not null)
6201 n_string
.parent
= self
6202 _n_annotations
= n_annotations
6203 if n_annotations
!= null then n_annotations
.parent
= self
6206 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6208 if _n_string
== old_child
then
6209 n_string
= new_child
.as(TString)
6212 if _n_annotations
== old_child
then
6213 n_annotations
= new_child
.as(nullable AAnnotations)
6218 redef fun n_string
=(node
)
6223 redef fun n_annotations
=(node
)
6225 _n_annotations
= node
6226 if node
!= null then node
.parent
= self
6230 redef fun visit_all
(v
: Visitor)
6232 v
.enter_visit
(_n_string
)
6233 v
.enter_visit
(_n_annotations
)
6236 redef class AStartStringExpr
6237 init init_astartstringexpr
(
6238 n_string
: nullable TStartString
6241 _n_string
= n_string
.as(not null)
6242 n_string
.parent
= self
6245 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6247 if _n_string
== old_child
then
6248 n_string
= new_child
.as(TStartString)
6253 redef fun n_string
=(node
)
6260 redef fun visit_all
(v
: Visitor)
6262 v
.enter_visit
(_n_string
)
6265 redef class AMidStringExpr
6266 init init_amidstringexpr
(
6267 n_string
: nullable TMidString
6270 _n_string
= n_string
.as(not null)
6271 n_string
.parent
= self
6274 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6276 if _n_string
== old_child
then
6277 n_string
= new_child
.as(TMidString)
6282 redef fun n_string
=(node
)
6289 redef fun visit_all
(v
: Visitor)
6291 v
.enter_visit
(_n_string
)
6294 redef class AEndStringExpr
6295 init init_aendstringexpr
(
6296 n_string
: nullable TEndString
6299 _n_string
= n_string
.as(not null)
6300 n_string
.parent
= self
6303 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6305 if _n_string
== old_child
then
6306 n_string
= new_child
.as(TEndString)
6311 redef fun n_string
=(node
)
6318 redef fun visit_all
(v
: Visitor)
6320 v
.enter_visit
(_n_string
)
6323 redef class ASuperstringExpr
6324 init init_asuperstringexpr
(
6325 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6326 n_annotations
: nullable AAnnotations
6329 self.n_exprs
.unsafe_add_all
(n_exprs
)
6330 _n_annotations
= n_annotations
6331 if n_annotations
!= null then n_annotations
.parent
= self
6334 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6336 if n_exprs
.replace_child
(old_child
, new_child
) then return
6337 if _n_annotations
== old_child
then
6338 n_annotations
= new_child
.as(nullable AAnnotations)
6343 redef fun n_annotations
=(node
)
6345 _n_annotations
= node
6346 if node
!= null then node
.parent
= self
6350 redef fun visit_all
(v
: Visitor)
6352 n_exprs
.visit_all
(v
)
6353 v
.enter_visit
(_n_annotations
)
6356 redef class AParExpr
6357 init init_aparexpr
(
6358 n_opar
: nullable TOpar,
6359 n_expr
: nullable AExpr,
6360 n_cpar
: nullable TCpar,
6361 n_annotations
: nullable AAnnotations
6364 _n_opar
= n_opar
.as(not null)
6365 n_opar
.parent
= self
6366 _n_expr
= n_expr
.as(not null)
6367 n_expr
.parent
= self
6368 _n_cpar
= n_cpar
.as(not null)
6369 n_cpar
.parent
= self
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_opar
== old_child
then
6377 n_opar
= new_child
.as(TOpar)
6380 if _n_expr
== old_child
then
6381 n_expr
= new_child
.as(AExpr)
6384 if _n_cpar
== old_child
then
6385 n_cpar
= new_child
.as(TCpar)
6388 if _n_annotations
== old_child
then
6389 n_annotations
= new_child
.as(nullable AAnnotations)
6394 redef fun n_opar
=(node
)
6399 redef fun n_expr
=(node
)
6404 redef fun n_cpar
=(node
)
6409 redef fun n_annotations
=(node
)
6411 _n_annotations
= node
6412 if node
!= null then node
.parent
= self
6416 redef fun visit_all
(v
: Visitor)
6418 v
.enter_visit
(_n_opar
)
6419 v
.enter_visit
(_n_expr
)
6420 v
.enter_visit
(_n_cpar
)
6421 v
.enter_visit
(_n_annotations
)
6424 redef class AAsCastExpr
6425 init init_aascastexpr
(
6426 n_expr
: nullable AExpr,
6427 n_kwas
: nullable TKwas,
6428 n_opar
: nullable TOpar,
6429 n_type
: nullable AType,
6430 n_cpar
: nullable TCpar
6433 _n_expr
= n_expr
.as(not null)
6434 n_expr
.parent
= self
6435 _n_kwas
= n_kwas
.as(not null)
6436 n_kwas
.parent
= self
6438 if n_opar
!= null then n_opar
.parent
= self
6439 _n_type
= n_type
.as(not null)
6440 n_type
.parent
= self
6442 if n_cpar
!= null then n_cpar
.parent
= self
6445 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6447 if _n_expr
== old_child
then
6448 n_expr
= new_child
.as(AExpr)
6451 if _n_kwas
== old_child
then
6452 n_kwas
= new_child
.as(TKwas)
6455 if _n_opar
== old_child
then
6456 n_opar
= new_child
.as(nullable TOpar)
6459 if _n_type
== old_child
then
6460 n_type
= new_child
.as(AType)
6463 if _n_cpar
== old_child
then
6464 n_cpar
= new_child
.as(nullable TCpar)
6469 redef fun n_expr
=(node
)
6474 redef fun n_kwas
=(node
)
6479 redef fun n_opar
=(node
)
6482 if node
!= null then node
.parent
= self
6484 redef fun n_type
=(node
)
6489 redef fun n_cpar
=(node
)
6492 if node
!= null then node
.parent
= self
6496 redef fun visit_all
(v
: Visitor)
6498 v
.enter_visit
(_n_expr
)
6499 v
.enter_visit
(_n_kwas
)
6500 v
.enter_visit
(_n_opar
)
6501 v
.enter_visit
(_n_type
)
6502 v
.enter_visit
(_n_cpar
)
6505 redef class AAsNotnullExpr
6506 init init_aasnotnullexpr
(
6507 n_expr
: nullable AExpr,
6508 n_kwas
: nullable TKwas,
6509 n_opar
: nullable TOpar,
6510 n_kwnot
: nullable TKwnot,
6511 n_kwnull
: nullable TKwnull,
6512 n_cpar
: nullable TCpar
6515 _n_expr
= n_expr
.as(not null)
6516 n_expr
.parent
= self
6517 _n_kwas
= n_kwas
.as(not null)
6518 n_kwas
.parent
= self
6520 if n_opar
!= null then n_opar
.parent
= self
6521 _n_kwnot
= n_kwnot
.as(not null)
6522 n_kwnot
.parent
= self
6523 _n_kwnull
= n_kwnull
.as(not null)
6524 n_kwnull
.parent
= self
6526 if n_cpar
!= null then n_cpar
.parent
= self
6529 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6531 if _n_expr
== old_child
then
6532 n_expr
= new_child
.as(AExpr)
6535 if _n_kwas
== old_child
then
6536 n_kwas
= new_child
.as(TKwas)
6539 if _n_opar
== old_child
then
6540 n_opar
= new_child
.as(nullable TOpar)
6543 if _n_kwnot
== old_child
then
6544 n_kwnot
= new_child
.as(TKwnot)
6547 if _n_kwnull
== old_child
then
6548 n_kwnull
= new_child
.as(TKwnull)
6551 if _n_cpar
== old_child
then
6552 n_cpar
= new_child
.as(nullable TCpar)
6557 redef fun n_expr
=(node
)
6562 redef fun n_kwas
=(node
)
6567 redef fun n_opar
=(node
)
6570 if node
!= null then node
.parent
= self
6572 redef fun n_kwnot
=(node
)
6577 redef fun n_kwnull
=(node
)
6582 redef fun n_cpar
=(node
)
6585 if node
!= null then node
.parent
= self
6589 redef fun visit_all
(v
: Visitor)
6591 v
.enter_visit
(_n_expr
)
6592 v
.enter_visit
(_n_kwas
)
6593 v
.enter_visit
(_n_opar
)
6594 v
.enter_visit
(_n_kwnot
)
6595 v
.enter_visit
(_n_kwnull
)
6596 v
.enter_visit
(_n_cpar
)
6599 redef class AIssetAttrExpr
6600 init init_aissetattrexpr
(
6601 n_kwisset
: nullable TKwisset,
6602 n_expr
: nullable AExpr,
6603 n_id
: nullable TAttrid
6606 _n_kwisset
= n_kwisset
.as(not null)
6607 n_kwisset
.parent
= self
6608 _n_expr
= n_expr
.as(not null)
6609 n_expr
.parent
= self
6610 _n_id
= n_id
.as(not null)
6614 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6616 if _n_kwisset
== old_child
then
6617 n_kwisset
= new_child
.as(TKwisset)
6620 if _n_expr
== old_child
then
6621 n_expr
= new_child
.as(AExpr)
6624 if _n_id
== old_child
then
6625 n_id
= new_child
.as(TAttrid)
6630 redef fun n_kwisset
=(node
)
6635 redef fun n_expr
=(node
)
6640 redef fun n_id
=(node
)
6647 redef fun visit_all
(v
: Visitor)
6649 v
.enter_visit
(_n_kwisset
)
6650 v
.enter_visit
(_n_expr
)
6651 v
.enter_visit
(_n_id
)
6654 redef class ADebugTypeExpr
6655 init init_adebugtypeexpr
(
6656 n_kwdebug
: nullable TKwdebug,
6657 n_kwtype
: nullable TKwtype,
6658 n_expr
: nullable AExpr,
6659 n_type
: nullable AType
6662 _n_kwdebug
= n_kwdebug
.as(not null)
6663 n_kwdebug
.parent
= self
6664 _n_kwtype
= n_kwtype
.as(not null)
6665 n_kwtype
.parent
= self
6666 _n_expr
= n_expr
.as(not null)
6667 n_expr
.parent
= self
6668 _n_type
= n_type
.as(not null)
6669 n_type
.parent
= self
6672 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6674 if _n_kwdebug
== old_child
then
6675 n_kwdebug
= new_child
.as(TKwdebug)
6678 if _n_kwtype
== old_child
then
6679 n_kwtype
= new_child
.as(TKwtype)
6682 if _n_expr
== old_child
then
6683 n_expr
= new_child
.as(AExpr)
6686 if _n_type
== old_child
then
6687 n_type
= new_child
.as(AType)
6692 redef fun n_kwdebug
=(node
)
6697 redef fun n_kwtype
=(node
)
6702 redef fun n_expr
=(node
)
6707 redef fun n_type
=(node
)
6714 redef fun visit_all
(v
: Visitor)
6716 v
.enter_visit
(_n_kwdebug
)
6717 v
.enter_visit
(_n_kwtype
)
6718 v
.enter_visit
(_n_expr
)
6719 v
.enter_visit
(_n_type
)
6722 redef class AListExprs
6723 init init_alistexprs
(
6724 n_exprs
: Collection[Object] # Should be Collection[AExpr]
6727 self.n_exprs
.unsafe_add_all
(n_exprs
)
6730 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6732 if n_exprs
.replace_child
(old_child
, new_child
) then return
6737 redef fun visit_all
(v
: Visitor)
6739 n_exprs
.visit_all
(v
)
6742 redef class AParExprs
6743 init init_aparexprs
(
6744 n_opar
: nullable TOpar,
6745 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6746 n_cpar
: nullable TCpar
6749 _n_opar
= n_opar
.as(not null)
6750 n_opar
.parent
= self
6751 self.n_exprs
.unsafe_add_all
(n_exprs
)
6752 _n_cpar
= n_cpar
.as(not null)
6753 n_cpar
.parent
= self
6756 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6758 if _n_opar
== old_child
then
6759 n_opar
= new_child
.as(TOpar)
6762 if n_exprs
.replace_child
(old_child
, new_child
) then return
6763 if _n_cpar
== old_child
then
6764 n_cpar
= new_child
.as(TCpar)
6769 redef fun n_opar
=(node
)
6774 redef fun n_cpar
=(node
)
6781 redef fun visit_all
(v
: Visitor)
6783 v
.enter_visit
(_n_opar
)
6784 n_exprs
.visit_all
(v
)
6785 v
.enter_visit
(_n_cpar
)
6788 redef class ABraExprs
6789 init init_abraexprs
(
6790 n_obra
: nullable TObra,
6791 n_exprs
: Collection[Object], # Should be Collection[AExpr]
6792 n_cbra
: nullable TCbra
6795 _n_obra
= n_obra
.as(not null)
6796 n_obra
.parent
= self
6797 self.n_exprs
.unsafe_add_all
(n_exprs
)
6798 _n_cbra
= n_cbra
.as(not null)
6799 n_cbra
.parent
= self
6802 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6804 if _n_obra
== old_child
then
6805 n_obra
= new_child
.as(TObra)
6808 if n_exprs
.replace_child
(old_child
, new_child
) then return
6809 if _n_cbra
== old_child
then
6810 n_cbra
= new_child
.as(TCbra)
6815 redef fun n_obra
=(node
)
6820 redef fun n_cbra
=(node
)
6827 redef fun visit_all
(v
: Visitor)
6829 v
.enter_visit
(_n_obra
)
6830 n_exprs
.visit_all
(v
)
6831 v
.enter_visit
(_n_cbra
)
6834 redef class APlusAssignOp
6835 init init_aplusassignop
(
6836 n_pluseq
: nullable TPluseq
6839 _n_pluseq
= n_pluseq
.as(not null)
6840 n_pluseq
.parent
= self
6843 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6845 if _n_pluseq
== old_child
then
6846 n_pluseq
= new_child
.as(TPluseq)
6851 redef fun n_pluseq
=(node
)
6858 redef fun visit_all
(v
: Visitor)
6860 v
.enter_visit
(_n_pluseq
)
6863 redef class AMinusAssignOp
6864 init init_aminusassignop
(
6865 n_minuseq
: nullable TMinuseq
6868 _n_minuseq
= n_minuseq
.as(not null)
6869 n_minuseq
.parent
= self
6872 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6874 if _n_minuseq
== old_child
then
6875 n_minuseq
= new_child
.as(TMinuseq)
6880 redef fun n_minuseq
=(node
)
6887 redef fun visit_all
(v
: Visitor)
6889 v
.enter_visit
(_n_minuseq
)
6892 redef class AModuleName
6893 init init_amodulename
(
6894 n_quad
: nullable TQuad,
6895 n_path
: Collection[Object], # Should be Collection[TId]
6900 if n_quad
!= null then n_quad
.parent
= self
6901 self.n_path
.unsafe_add_all
(n_path
)
6902 _n_id
= n_id
.as(not null)
6906 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6908 if _n_quad
== old_child
then
6909 n_quad
= new_child
.as(nullable TQuad)
6912 if n_path
.replace_child
(old_child
, new_child
) then return
6913 if _n_id
== old_child
then
6914 n_id
= new_child
.as(TId)
6919 redef fun n_quad
=(node
)
6922 if node
!= null then node
.parent
= self
6924 redef fun n_id
=(node
)
6931 redef fun visit_all
(v
: Visitor)
6933 v
.enter_visit
(_n_quad
)
6935 v
.enter_visit
(_n_id
)
6938 redef class AExternCalls
6939 init init_aexterncalls
(
6940 n_kwimport
: nullable TKwimport,
6941 n_extern_calls
: Collection[Object] # Should be Collection[AExternCall]
6944 _n_kwimport
= n_kwimport
.as(not null)
6945 n_kwimport
.parent
= self
6946 self.n_extern_calls
.unsafe_add_all
(n_extern_calls
)
6949 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6951 if _n_kwimport
== old_child
then
6952 n_kwimport
= new_child
.as(TKwimport)
6955 if n_extern_calls
.replace_child
(old_child
, new_child
) then return
6958 redef fun n_kwimport
=(node
)
6965 redef fun visit_all
(v
: Visitor)
6967 v
.enter_visit
(_n_kwimport
)
6968 n_extern_calls
.visit_all
(v
)
6971 redef class AExternCall
6972 init init_aexterncall
6976 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6982 redef fun visit_all
(v
: Visitor)
6986 redef class ASuperExternCall
6987 init init_asuperexterncall
(
6988 n_kwsuper
: nullable TKwsuper
6991 _n_kwsuper
= n_kwsuper
.as(not null)
6992 n_kwsuper
.parent
= self
6995 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
6997 if _n_kwsuper
== old_child
then
6998 n_kwsuper
= new_child
.as(TKwsuper)
7003 redef fun n_kwsuper
=(node
)
7010 redef fun visit_all
(v
: Visitor)
7012 v
.enter_visit
(_n_kwsuper
)
7015 redef class ALocalPropExternCall
7016 init init_alocalpropexterncall
(
7017 n_methid
: nullable AMethid
7020 _n_methid
= n_methid
.as(not null)
7021 n_methid
.parent
= self
7024 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7026 if _n_methid
== old_child
then
7027 n_methid
= new_child
.as(AMethid)
7032 redef fun n_methid
=(node
)
7039 redef fun visit_all
(v
: Visitor)
7041 v
.enter_visit
(_n_methid
)
7044 redef class AFullPropExternCall
7045 init init_afullpropexterncall
(
7046 n_type
: nullable AType,
7047 n_dot
: nullable TDot,
7048 n_methid
: nullable AMethid
7051 _n_type
= n_type
.as(not null)
7052 n_type
.parent
= self
7054 if n_dot
!= null then n_dot
.parent
= self
7055 _n_methid
= n_methid
.as(not null)
7056 n_methid
.parent
= self
7059 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7061 if _n_type
== old_child
then
7062 n_type
= new_child
.as(AType)
7065 if _n_dot
== old_child
then
7066 n_dot
= new_child
.as(nullable TDot)
7069 if _n_methid
== old_child
then
7070 n_methid
= new_child
.as(AMethid)
7075 redef fun n_type
=(node
)
7080 redef fun n_dot
=(node
)
7083 if node
!= null then node
.parent
= self
7085 redef fun n_methid
=(node
)
7092 redef fun visit_all
(v
: Visitor)
7094 v
.enter_visit
(_n_type
)
7095 v
.enter_visit
(_n_dot
)
7096 v
.enter_visit
(_n_methid
)
7099 redef class AInitPropExternCall
7100 init init_ainitpropexterncall
(
7101 n_type
: nullable AType
7104 _n_type
= n_type
.as(not null)
7105 n_type
.parent
= self
7108 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7110 if _n_type
== old_child
then
7111 n_type
= new_child
.as(AType)
7116 redef fun n_type
=(node
)
7123 redef fun visit_all
(v
: Visitor)
7125 v
.enter_visit
(_n_type
)
7128 redef class ACastAsExternCall
7129 init init_acastasexterncall
(
7130 n_from_type
: nullable AType,
7131 n_dot
: nullable TDot,
7132 n_kwas
: nullable TKwas,
7133 n_to_type
: nullable AType
7136 _n_from_type
= n_from_type
.as(not null)
7137 n_from_type
.parent
= self
7139 if n_dot
!= null then n_dot
.parent
= self
7140 _n_kwas
= n_kwas
.as(not null)
7141 n_kwas
.parent
= self
7142 _n_to_type
= n_to_type
.as(not null)
7143 n_to_type
.parent
= self
7146 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7148 if _n_from_type
== old_child
then
7149 n_from_type
= new_child
.as(AType)
7152 if _n_dot
== old_child
then
7153 n_dot
= new_child
.as(nullable TDot)
7156 if _n_kwas
== old_child
then
7157 n_kwas
= new_child
.as(TKwas)
7160 if _n_to_type
== old_child
then
7161 n_to_type
= new_child
.as(AType)
7166 redef fun n_from_type
=(node
)
7171 redef fun n_dot
=(node
)
7174 if node
!= null then node
.parent
= self
7176 redef fun n_kwas
=(node
)
7181 redef fun n_to_type
=(node
)
7188 redef fun visit_all
(v
: Visitor)
7190 v
.enter_visit
(_n_from_type
)
7191 v
.enter_visit
(_n_dot
)
7192 v
.enter_visit
(_n_kwas
)
7193 v
.enter_visit
(_n_to_type
)
7196 redef class AAsNullableExternCall
7197 init init_aasnullableexterncall
(
7198 n_type
: nullable AType,
7199 n_kwas
: nullable TKwas,
7200 n_kwnullable
: nullable TKwnullable
7203 _n_type
= n_type
.as(not null)
7204 n_type
.parent
= self
7205 _n_kwas
= n_kwas
.as(not null)
7206 n_kwas
.parent
= self
7207 _n_kwnullable
= n_kwnullable
.as(not null)
7208 n_kwnullable
.parent
= self
7211 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7213 if _n_type
== old_child
then
7214 n_type
= new_child
.as(AType)
7217 if _n_kwas
== old_child
then
7218 n_kwas
= new_child
.as(TKwas)
7221 if _n_kwnullable
== old_child
then
7222 n_kwnullable
= new_child
.as(TKwnullable)
7227 redef fun n_type
=(node
)
7232 redef fun n_kwas
=(node
)
7237 redef fun n_kwnullable
=(node
)
7239 _n_kwnullable
= node
7244 redef fun visit_all
(v
: Visitor)
7246 v
.enter_visit
(_n_type
)
7247 v
.enter_visit
(_n_kwas
)
7248 v
.enter_visit
(_n_kwnullable
)
7251 redef class AAsNotNullableExternCall
7252 init init_aasnotnullableexterncall
(
7253 n_type
: nullable AType,
7254 n_kwas
: nullable TKwas,
7255 n_kwnot
: nullable TKwnot,
7256 n_kwnullable
: nullable TKwnullable
7259 _n_type
= n_type
.as(not null)
7260 n_type
.parent
= self
7261 _n_kwas
= n_kwas
.as(not null)
7262 n_kwas
.parent
= self
7263 _n_kwnot
= n_kwnot
.as(not null)
7264 n_kwnot
.parent
= self
7265 _n_kwnullable
= n_kwnullable
.as(not null)
7266 n_kwnullable
.parent
= self
7269 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7271 if _n_type
== old_child
then
7272 n_type
= new_child
.as(AType)
7275 if _n_kwas
== old_child
then
7276 n_kwas
= new_child
.as(TKwas)
7279 if _n_kwnot
== old_child
then
7280 n_kwnot
= new_child
.as(TKwnot)
7283 if _n_kwnullable
== old_child
then
7284 n_kwnullable
= new_child
.as(TKwnullable)
7289 redef fun n_type
=(node
)
7294 redef fun n_kwas
=(node
)
7299 redef fun n_kwnot
=(node
)
7304 redef fun n_kwnullable
=(node
)
7306 _n_kwnullable
= node
7311 redef fun visit_all
(v
: Visitor)
7313 v
.enter_visit
(_n_type
)
7314 v
.enter_visit
(_n_kwas
)
7315 v
.enter_visit
(_n_kwnot
)
7316 v
.enter_visit
(_n_kwnullable
)
7319 redef class AInLanguage
7320 init init_ainlanguage
(
7321 n_kwin
: nullable TKwin,
7322 n_string
: nullable TString
7325 _n_kwin
= n_kwin
.as(not null)
7326 n_kwin
.parent
= self
7327 _n_string
= n_string
.as(not null)
7328 n_string
.parent
= self
7331 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7333 if _n_kwin
== old_child
then
7334 n_kwin
= new_child
.as(TKwin)
7337 if _n_string
== old_child
then
7338 n_string
= new_child
.as(TString)
7343 redef fun n_kwin
=(node
)
7348 redef fun n_string
=(node
)
7355 redef fun visit_all
(v
: Visitor)
7357 v
.enter_visit
(_n_kwin
)
7358 v
.enter_visit
(_n_string
)
7361 redef class AExternCodeBlock
7362 init init_aexterncodeblock
(
7363 n_in_language
: nullable AInLanguage,
7364 n_extern_code_segment
: nullable TExternCodeSegment
7367 _n_in_language
= n_in_language
7368 if n_in_language
!= null then n_in_language
.parent
= self
7369 _n_extern_code_segment
= n_extern_code_segment
.as(not null)
7370 n_extern_code_segment
.parent
= self
7373 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7375 if _n_in_language
== old_child
then
7376 n_in_language
= new_child
.as(nullable AInLanguage)
7379 if _n_extern_code_segment
== old_child
then
7380 n_extern_code_segment
= new_child
.as(TExternCodeSegment)
7385 redef fun n_in_language
=(node
)
7387 _n_in_language
= node
7388 if node
!= null then node
.parent
= self
7390 redef fun n_extern_code_segment
=(node
)
7392 _n_extern_code_segment
= node
7397 redef fun visit_all
(v
: Visitor)
7399 v
.enter_visit
(_n_in_language
)
7400 v
.enter_visit
(_n_extern_code_segment
)
7403 redef class AQualified
7404 init init_aqualified
(
7405 n_id
: Collection[Object], # Should be Collection[TId]
7406 n_classid
: nullable TClassid
7409 self.n_id
.unsafe_add_all
(n_id
)
7410 _n_classid
= n_classid
7411 if n_classid
!= null then n_classid
.parent
= self
7414 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7416 if n_id
.replace_child
(old_child
, new_child
) then return
7417 if _n_classid
== old_child
then
7418 n_classid
= new_child
.as(nullable TClassid)
7423 redef fun n_classid
=(node
)
7426 if node
!= null then node
.parent
= self
7430 redef fun visit_all
(v
: Visitor)
7433 v
.enter_visit
(_n_classid
)
7438 n_comment
: Collection[Object] # Should be Collection[TComment]
7441 self.n_comment
.unsafe_add_all
(n_comment
)
7444 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7446 if n_comment
.replace_child
(old_child
, new_child
) then return
7451 redef fun visit_all
(v
: Visitor)
7453 n_comment
.visit_all
(v
)
7456 redef class AAnnotations
7457 init init_aannotations
(
7459 n_opar
: nullable TOpar,
7460 n_items
: Collection[Object], # Should be Collection[AAnnotation]
7461 n_cpar
: nullable TCpar
7465 if n_at
!= null then n_at
.parent
= self
7467 if n_opar
!= null then n_opar
.parent
= self
7468 self.n_items
.unsafe_add_all
(n_items
)
7470 if n_cpar
!= null then n_cpar
.parent
= self
7473 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7475 if _n_at
== old_child
then
7476 n_at
= new_child
.as(nullable TAt)
7479 if _n_opar
== old_child
then
7480 n_opar
= new_child
.as(nullable TOpar)
7483 if n_items
.replace_child
(old_child
, new_child
) then return
7484 if _n_cpar
== old_child
then
7485 n_cpar
= new_child
.as(nullable TCpar)
7490 redef fun n_at
=(node
)
7493 if node
!= null then node
.parent
= self
7495 redef fun n_opar
=(node
)
7498 if node
!= null then node
.parent
= self
7500 redef fun n_cpar
=(node
)
7503 if node
!= null then node
.parent
= self
7507 redef fun visit_all
(v
: Visitor)
7509 v
.enter_visit
(_n_at
)
7510 v
.enter_visit
(_n_opar
)
7511 n_items
.visit_all
(v
)
7512 v
.enter_visit
(_n_cpar
)
7515 redef class AAnnotation
7516 init init_aannotation
(
7517 n_atid
: nullable AAtid,
7518 n_opar
: nullable TOpar,
7519 n_args
: Collection[Object], # Should be Collection[AAtArg]
7520 n_cpar
: nullable TCpar,
7521 n_annotations
: nullable AAnnotations
7524 _n_atid
= n_atid
.as(not null)
7525 n_atid
.parent
= self
7527 if n_opar
!= null then n_opar
.parent
= self
7528 self.n_args
.unsafe_add_all
(n_args
)
7530 if n_cpar
!= null then n_cpar
.parent
= self
7531 _n_annotations
= n_annotations
7532 if n_annotations
!= null then n_annotations
.parent
= self
7535 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7537 if _n_atid
== old_child
then
7538 n_atid
= new_child
.as(AAtid)
7541 if _n_opar
== old_child
then
7542 n_opar
= new_child
.as(nullable TOpar)
7545 if n_args
.replace_child
(old_child
, new_child
) then return
7546 if _n_cpar
== old_child
then
7547 n_cpar
= new_child
.as(nullable TCpar)
7550 if _n_annotations
== old_child
then
7551 n_annotations
= new_child
.as(nullable AAnnotations)
7556 redef fun n_atid
=(node
)
7561 redef fun n_opar
=(node
)
7564 if node
!= null then node
.parent
= self
7566 redef fun n_cpar
=(node
)
7569 if node
!= null then node
.parent
= self
7571 redef fun n_annotations
=(node
)
7573 _n_annotations
= node
7574 if node
!= null then node
.parent
= self
7578 redef fun visit_all
(v
: Visitor)
7580 v
.enter_visit
(_n_atid
)
7581 v
.enter_visit
(_n_opar
)
7583 v
.enter_visit
(_n_cpar
)
7584 v
.enter_visit
(_n_annotations
)
7587 redef class ATypeAtArg
7588 init init_atypeatarg
(
7589 n_type
: nullable AType
7592 _n_type
= n_type
.as(not null)
7593 n_type
.parent
= self
7596 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7598 if _n_type
== old_child
then
7599 n_type
= new_child
.as(AType)
7604 redef fun n_type
=(node
)
7611 redef fun visit_all
(v
: Visitor)
7613 v
.enter_visit
(_n_type
)
7616 redef class AExprAtArg
7617 init init_aexpratarg
(
7618 n_expr
: nullable AExpr
7621 _n_expr
= n_expr
.as(not null)
7622 n_expr
.parent
= self
7625 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7627 if _n_expr
== old_child
then
7628 n_expr
= new_child
.as(AExpr)
7633 redef fun n_expr
=(node
)
7640 redef fun visit_all
(v
: Visitor)
7642 v
.enter_visit
(_n_expr
)
7645 redef class AAtAtArg
7646 init init_aatatarg
(
7647 n_annotations
: nullable AAnnotations
7650 _n_annotations
= n_annotations
.as(not null)
7651 n_annotations
.parent
= self
7654 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7656 if _n_annotations
== old_child
then
7657 n_annotations
= new_child
.as(AAnnotations)
7662 redef fun n_annotations
=(node
)
7664 _n_annotations
= node
7669 redef fun visit_all
(v
: Visitor)
7671 v
.enter_visit
(_n_annotations
)
7679 _n_id
= n_id
.as(not null)
7683 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7685 if _n_id
== old_child
then
7686 n_id
= new_child
.as(TId)
7691 redef fun n_id
=(node
)
7698 redef fun visit_all
(v
: Visitor)
7700 v
.enter_visit
(_n_id
)
7703 redef class AKwexternAtid
7704 init init_akwexternatid
(
7705 n_id
: nullable TKwextern
7708 _n_id
= n_id
.as(not null)
7712 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7714 if _n_id
== old_child
then
7715 n_id
= new_child
.as(TKwextern)
7720 redef fun n_id
=(node
)
7727 redef fun visit_all
(v
: Visitor)
7729 v
.enter_visit
(_n_id
)
7732 redef class AKwinternAtid
7733 init init_akwinternatid
(
7734 n_id
: nullable TKwintern
7737 _n_id
= n_id
.as(not null)
7741 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7743 if _n_id
== old_child
then
7744 n_id
= new_child
.as(TKwintern)
7749 redef fun n_id
=(node
)
7756 redef fun visit_all
(v
: Visitor)
7758 v
.enter_visit
(_n_id
)
7761 redef class AKwreadableAtid
7762 init init_akwreadableatid
(
7763 n_id
: nullable TKwreadable
7766 _n_id
= n_id
.as(not null)
7770 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7772 if _n_id
== old_child
then
7773 n_id
= new_child
.as(TKwreadable)
7778 redef fun n_id
=(node
)
7785 redef fun visit_all
(v
: Visitor)
7787 v
.enter_visit
(_n_id
)
7790 redef class AKwwritableAtid
7791 init init_akwwritableatid
(
7792 n_id
: nullable TKwwritable
7795 _n_id
= n_id
.as(not null)
7799 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7801 if _n_id
== old_child
then
7802 n_id
= new_child
.as(TKwwritable)
7807 redef fun n_id
=(node
)
7814 redef fun visit_all
(v
: Visitor)
7816 v
.enter_visit
(_n_id
)
7819 redef class AKwimportAtid
7820 init init_akwimportatid
(
7821 n_id
: nullable TKwimport
7824 _n_id
= n_id
.as(not null)
7828 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7830 if _n_id
== old_child
then
7831 n_id
= new_child
.as(TKwimport)
7836 redef fun n_id
=(node
)
7843 redef fun visit_all
(v
: Visitor)
7845 v
.enter_visit
(_n_id
)
7850 redef fun replace_child
(old_child
: ANode, new_child
: nullable ANode)
7852 if _n_base
== old_child
then
7853 if new_child
== null then
7855 new_child
.parent
= self
7856 assert new_child
isa AModule
7859 old_child
.parent
= null
7864 redef fun visit_all
(v
: Visitor)
7866 if _n_base
!= null then
7867 v
.enter_visit
(_n_base
.as(not null))
7869 v
.enter_visit
(_n_eof
)