X-Git-Url: http://nitlanguage.org diff --git a/src/parser/parser_prod.nit b/src/parser/parser_prod.nit index c7125ee..84b2210 100644 --- a/src/parser/parser_prod.nit +++ b/src/parser/parser_prod.nit @@ -1,6 +1,6 @@ # Production AST nodes full definition. # This file was generated by SableCC (http://www.sablecc.org/). -module parser_prod +module parser_prod is no_warning("missing-doc") import lexer intrude import parser_nodes @@ -388,9 +388,7 @@ redef class AStdClassdef n_classkind: nullable AClasskind, n_id: nullable TClassid, n_formaldefs: Collection[Object], # Should be Collection[AFormaldef] - n_annotations: nullable AAnnotations, n_extern_code_block: nullable AExternCodeBlock, - n_superclasses: Collection[Object], # Should be Collection[ASuperclass] n_propdefs: Collection[Object], # Should be Collection[APropdef] n_kwend: nullable TKwend ) @@ -406,11 +404,8 @@ redef class AStdClassdef _n_id = n_id if n_id != null then n_id.parent = self self.n_formaldefs.unsafe_add_all(n_formaldefs) - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self _n_extern_code_block = n_extern_code_block if n_extern_code_block != null then n_extern_code_block.parent = self - self.n_superclasses.unsafe_add_all(n_superclasses) self.n_propdefs.unsafe_add_all(n_propdefs) _n_kwend = n_kwend.as(not null) n_kwend.parent = self @@ -439,15 +434,10 @@ redef class AStdClassdef return end if n_formaldefs.replace_child(old_child, new_child) then return - if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) - return - end if _n_extern_code_block == old_child then n_extern_code_block = new_child.as(nullable AExternCodeBlock) return end - if n_superclasses.replace_child(old_child, new_child) then return if n_propdefs.replace_child(old_child, new_child) then return if _n_kwend == old_child then n_kwend = new_child.as(TKwend) @@ -480,11 +470,6 @@ redef class AStdClassdef _n_id = node if node != null then node.parent = self end - redef fun n_annotations=(node) - do - _n_annotations = node - if node != null then node.parent = self - end redef fun n_extern_code_block=(node) do _n_extern_code_block = node @@ -505,9 +490,7 @@ redef class AStdClassdef v.enter_visit(_n_classkind) v.enter_visit(_n_id) n_formaldefs.visit_all(v) - v.enter_visit(_n_annotations) v.enter_visit(_n_extern_code_block) - n_superclasses.visit_all(v) n_propdefs.visit_all(v) v.enter_visit(_n_kwend) end @@ -778,98 +761,37 @@ redef class AFormaldef v.enter_visit(_n_annotations) end end -redef class ASuperclass - init init_asuperclass ( - n_kwsuper: nullable TKwsuper, - n_type: nullable AType, - n_annotations: nullable AAnnotations - ) - do - _n_kwsuper = n_kwsuper.as(not null) - n_kwsuper.parent = self - _n_type = n_type.as(not null) - n_type.parent = self - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_kwsuper == old_child then - n_kwsuper = new_child.as(TKwsuper) - return - end - if _n_type == old_child then - n_type = new_child.as(AType) - return - end - if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) - return - end - end - - redef fun n_kwsuper=(node) - do - _n_kwsuper = node - node.parent = self - end - redef fun n_type=(node) - do - _n_type = node - node.parent = self - end - redef fun n_annotations=(node) - do - _n_annotations = node - if node != null then node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_kwsuper) - v.enter_visit(_n_type) - v.enter_visit(_n_annotations) - end -end redef class AAttrPropdef init init_aattrpropdef ( n_doc: nullable ADoc, - n_readable: nullable AAble, - n_writable: nullable AAble, n_kwredef: nullable TKwredef, n_visibility: nullable AVisibility, n_kwvar: nullable TKwvar, - n_id: nullable TAttrid, n_id2: nullable TId, n_type: nullable AType, + n_expr: nullable AExpr, n_annotations: nullable AAnnotations, - n_expr: nullable AExpr + n_block: nullable AExpr ) do _n_doc = n_doc if n_doc != null then n_doc.parent = self - _n_readable = n_readable - if n_readable != null then n_readable.parent = self - _n_writable = n_writable - if n_writable != null then n_writable.parent = self _n_kwredef = n_kwredef if n_kwredef != null then n_kwredef.parent = self _n_visibility = n_visibility.as(not null) n_visibility.parent = self _n_kwvar = n_kwvar.as(not null) n_kwvar.parent = self - _n_id = n_id - if n_id != null then n_id.parent = self - _n_id2 = n_id2 - if n_id2 != null then n_id2.parent = self + _n_id2 = n_id2.as(not null) + n_id2.parent = self _n_type = n_type if n_type != null then n_type.parent = self - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self _n_expr = n_expr if n_expr != null then n_expr.parent = self + _n_annotations = n_annotations + if n_annotations != null then n_annotations.parent = self + _n_block = n_block + if n_block != null then n_block.parent = self end redef fun replace_child(old_child: ANode, new_child: nullable ANode) @@ -878,14 +800,6 @@ redef class AAttrPropdef n_doc = new_child.as(nullable ADoc) return end - if _n_readable == old_child then - n_readable = new_child.as(nullable AAble) - return - end - if _n_writable == old_child then - n_writable = new_child.as(nullable AAble) - return - end if _n_kwredef == old_child then n_kwredef = new_child.as(nullable TKwredef) return @@ -898,24 +812,24 @@ redef class AAttrPropdef n_kwvar = new_child.as(TKwvar) return end - if _n_id == old_child then - n_id = new_child.as(nullable TAttrid) - return - end if _n_id2 == old_child then - n_id2 = new_child.as(nullable TId) + n_id2 = new_child.as(TId) return end if _n_type == old_child then n_type = new_child.as(nullable AType) return end + if _n_expr == old_child then + n_expr = new_child.as(nullable AExpr) + return + end if _n_annotations == old_child then n_annotations = new_child.as(nullable AAnnotations) return end - if _n_expr == old_child then - n_expr = new_child.as(nullable AExpr) + if _n_block == old_child then + n_block = new_child.as(nullable AExpr) return end end @@ -925,16 +839,6 @@ redef class AAttrPropdef _n_doc = node if node != null then node.parent = self end - redef fun n_readable=(node) - do - _n_readable = node - if node != null then node.parent = self - end - redef fun n_writable=(node) - do - _n_writable = node - if node != null then node.parent = self - end redef fun n_kwredef=(node) do _n_kwredef = node @@ -950,29 +854,29 @@ redef class AAttrPropdef _n_kwvar = node node.parent = self end - redef fun n_id=(node) - do - _n_id = node - if node != null then node.parent = self - end redef fun n_id2=(node) do _n_id2 = node - if node != null then node.parent = self + node.parent = self end redef fun n_type=(node) do _n_type = node if node != null then node.parent = self end + redef fun n_expr=(node) + do + _n_expr = node + if node != null then node.parent = self + end redef fun n_annotations=(node) do _n_annotations = node if node != null then node.parent = self end - redef fun n_expr=(node) + redef fun n_block=(node) do - _n_expr = node + _n_block = node if node != null then node.parent = self end @@ -980,107 +884,66 @@ redef class AAttrPropdef redef fun visit_all(v: Visitor) do v.enter_visit(_n_doc) - v.enter_visit(_n_readable) - v.enter_visit(_n_writable) v.enter_visit(_n_kwredef) v.enter_visit(_n_visibility) v.enter_visit(_n_kwvar) - v.enter_visit(_n_id) v.enter_visit(_n_id2) v.enter_visit(_n_type) - v.enter_visit(_n_annotations) v.enter_visit(_n_expr) + v.enter_visit(_n_annotations) + v.enter_visit(_n_block) end end -redef class AMethPropdef - init init_amethpropdef ( - n_doc: nullable ADoc, +redef class AMainMethPropdef + init init_amainmethpropdef ( n_kwredef: nullable TKwredef, - n_visibility: nullable AVisibility, - n_methid: nullable AMethid, - n_signature: nullable ASignature + n_block: nullable AExpr ) do - _n_doc = n_doc - if n_doc != null then n_doc.parent = self _n_kwredef = n_kwredef if n_kwredef != null then n_kwredef.parent = self - _n_visibility = n_visibility.as(not null) - n_visibility.parent = self - _n_methid = n_methid.as(not null) - n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self + _n_block = n_block + if n_block != null then n_block.parent = self end redef fun replace_child(old_child: ANode, new_child: nullable ANode) do - if _n_doc == old_child then - n_doc = new_child.as(nullable ADoc) - return - end if _n_kwredef == old_child then n_kwredef = new_child.as(nullable TKwredef) return end - if _n_visibility == old_child then - n_visibility = new_child.as(AVisibility) - return - end - if _n_methid == old_child then - n_methid = new_child.as(AMethid) - return - end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) + if _n_block == old_child then + n_block = new_child.as(nullable AExpr) return end end - redef fun n_doc=(node) - do - _n_doc = node - if node != null then node.parent = self - end redef fun n_kwredef=(node) do _n_kwredef = node if node != null then node.parent = self end - redef fun n_visibility=(node) - do - _n_visibility = node - node.parent = self - end - redef fun n_methid=(node) - do - _n_methid = node - node.parent = self - end - redef fun n_signature=(node) + redef fun n_block=(node) do - _n_signature = node - node.parent = self + _n_block = node + if node != null then node.parent = self end redef fun visit_all(v: Visitor) do - v.enter_visit(_n_doc) v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) + v.enter_visit(_n_block) end end -redef class ADeferredMethPropdef - init init_adeferredmethpropdef ( +redef class ATypePropdef + init init_atypepropdef ( n_doc: nullable ADoc, n_kwredef: nullable TKwredef, n_visibility: nullable AVisibility, - n_kwmeth: nullable TKwmeth, - n_methid: nullable AMethid, - n_signature: nullable ASignature, + n_kwtype: nullable TKwtype, + n_id: nullable TClassid, + n_type: nullable AType, n_annotations: nullable AAnnotations ) do @@ -1090,12 +953,12 @@ redef class ADeferredMethPropdef if n_kwredef != null then n_kwredef.parent = self _n_visibility = n_visibility.as(not null) n_visibility.parent = self - _n_kwmeth = n_kwmeth.as(not null) - n_kwmeth.parent = self - _n_methid = n_methid.as(not null) - n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self + _n_kwtype = n_kwtype.as(not null) + n_kwtype.parent = self + _n_id = n_id.as(not null) + n_id.parent = self + _n_type = n_type.as(not null) + n_type.parent = self _n_annotations = n_annotations if n_annotations != null then n_annotations.parent = self end @@ -1114,16 +977,16 @@ redef class ADeferredMethPropdef n_visibility = new_child.as(AVisibility) return end - if _n_kwmeth == old_child then - n_kwmeth = new_child.as(TKwmeth) + if _n_kwtype == old_child then + n_kwtype = new_child.as(TKwtype) return end - if _n_methid == old_child then - n_methid = new_child.as(AMethid) + if _n_id == old_child then + n_id = new_child.as(TClassid) return end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) + if _n_type == old_child then + n_type = new_child.as(AType) return end if _n_annotations == old_child then @@ -1147,19 +1010,19 @@ redef class ADeferredMethPropdef _n_visibility = node node.parent = self end - redef fun n_kwmeth=(node) + redef fun n_kwtype=(node) do - _n_kwmeth = node + _n_kwtype = node node.parent = self end - redef fun n_methid=(node) + redef fun n_id=(node) do - _n_methid = node + _n_id = node node.parent = self end - redef fun n_signature=(node) + redef fun n_type=(node) do - _n_signature = node + _n_type = node node.parent = self end redef fun n_annotations=(node) @@ -1174,20 +1037,26 @@ redef class ADeferredMethPropdef v.enter_visit(_n_doc) v.enter_visit(_n_kwredef) v.enter_visit(_n_visibility) - v.enter_visit(_n_kwmeth) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) + v.enter_visit(_n_kwtype) + v.enter_visit(_n_id) + v.enter_visit(_n_type) v.enter_visit(_n_annotations) end end -redef class AInternMethPropdef - init init_ainternmethpropdef ( +redef class AMethPropdef + init init_amethpropdef ( n_doc: nullable ADoc, n_kwredef: nullable TKwredef, n_visibility: nullable AVisibility, n_kwmeth: nullable TKwmeth, + n_kwinit: nullable TKwinit, + n_kwnew: nullable TKwnew, n_methid: nullable AMethid, - n_signature: nullable ASignature + n_signature: nullable ASignature, + n_annotations: nullable AAnnotations, + n_extern_calls: nullable AExternCalls, + n_extern_code_block: nullable AExternCodeBlock, + n_block: nullable AExpr ) do _n_doc = n_doc @@ -1196,12 +1065,24 @@ redef class AInternMethPropdef if n_kwredef != null then n_kwredef.parent = self _n_visibility = n_visibility.as(not null) n_visibility.parent = self - _n_kwmeth = n_kwmeth.as(not null) - n_kwmeth.parent = self - _n_methid = n_methid.as(not null) - n_methid.parent = self + _n_kwmeth = n_kwmeth + if n_kwmeth != null then n_kwmeth.parent = self + _n_kwinit = n_kwinit + if n_kwinit != null then n_kwinit.parent = self + _n_kwnew = n_kwnew + if n_kwnew != null then n_kwnew.parent = self + _n_methid = n_methid + if n_methid != null then n_methid.parent = self _n_signature = n_signature.as(not null) n_signature.parent = self + _n_annotations = n_annotations + if n_annotations != null then n_annotations.parent = self + _n_extern_calls = n_extern_calls + if n_extern_calls != null then n_extern_calls.parent = self + _n_extern_code_block = n_extern_code_block + if n_extern_code_block != null then n_extern_code_block.parent = self + _n_block = n_block + if n_block != null then n_block.parent = self end redef fun replace_child(old_child: ANode, new_child: nullable ANode) @@ -1219,351 +1100,19 @@ redef class AInternMethPropdef return end if _n_kwmeth == old_child then - n_kwmeth = new_child.as(TKwmeth) + n_kwmeth = new_child.as(nullable TKwmeth) + return + end + if _n_kwinit == old_child then + n_kwinit = new_child.as(nullable TKwinit) + return + end + if _n_kwnew == old_child then + n_kwnew = new_child.as(nullable TKwnew) return end if _n_methid == old_child then - n_methid = new_child.as(AMethid) - return - end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) - return - end - end - - redef fun n_doc=(node) - do - _n_doc = node - if node != null then node.parent = self - end - redef fun n_kwredef=(node) - do - _n_kwredef = node - if node != null then node.parent = self - end - redef fun n_visibility=(node) - do - _n_visibility = node - node.parent = self - end - redef fun n_kwmeth=(node) - do - _n_kwmeth = node - node.parent = self - end - redef fun n_methid=(node) - do - _n_methid = node - node.parent = self - end - redef fun n_signature=(node) - do - _n_signature = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_doc) - v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_kwmeth) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) - end -end -redef class AInternNewPropdef - init init_ainternnewpropdef ( - n_doc: nullable ADoc, - n_kwredef: nullable TKwredef, - n_visibility: nullable AVisibility, - n_kwnew: nullable TKwnew, - n_methid: nullable AMethid, - n_signature: nullable ASignature - ) - do - _n_doc = n_doc - if n_doc != null then n_doc.parent = self - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_visibility = n_visibility.as(not null) - n_visibility.parent = self - _n_kwnew = n_kwnew.as(not null) - n_kwnew.parent = self - _n_methid = n_methid - if n_methid != null then n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_doc == old_child then - n_doc = new_child.as(nullable ADoc) - return - end - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_visibility == old_child then - n_visibility = new_child.as(AVisibility) - return - end - if _n_kwnew == old_child then - n_kwnew = new_child.as(TKwnew) - return - end - if _n_methid == old_child then - n_methid = new_child.as(nullable AMethid) - return - end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) - return - end - end - - redef fun n_doc=(node) - do - _n_doc = node - if node != null then node.parent = self - end - redef fun n_kwredef=(node) - do - _n_kwredef = node - if node != null then node.parent = self - end - redef fun n_visibility=(node) - do - _n_visibility = node - node.parent = self - end - redef fun n_kwnew=(node) - do - _n_kwnew = node - node.parent = self - end - redef fun n_methid=(node) - do - _n_methid = node - if node != null then node.parent = self - end - redef fun n_signature=(node) - do - _n_signature = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_doc) - v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_kwnew) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) - end -end -redef class AExternMethPropdef - init init_aexternmethpropdef ( - n_doc: nullable ADoc, - n_kwredef: nullable TKwredef, - n_visibility: nullable AVisibility, - n_kwmeth: nullable TKwmeth, - n_methid: nullable AMethid, - n_signature: nullable ASignature, - n_annotations: nullable AAnnotations, - n_extern: nullable TString, - n_extern_calls: nullable AExternCalls, - n_extern_code_block: nullable AExternCodeBlock - ) - do - _n_doc = n_doc - if n_doc != null then n_doc.parent = self - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_visibility = n_visibility.as(not null) - n_visibility.parent = self - _n_kwmeth = n_kwmeth.as(not null) - n_kwmeth.parent = self - _n_methid = n_methid.as(not null) - n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self - _n_extern = n_extern - if n_extern != null then n_extern.parent = self - _n_extern_calls = n_extern_calls - if n_extern_calls != null then n_extern_calls.parent = self - _n_extern_code_block = n_extern_code_block - if n_extern_code_block != null then n_extern_code_block.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_doc == old_child then - n_doc = new_child.as(nullable ADoc) - return - end - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_visibility == old_child then - n_visibility = new_child.as(AVisibility) - return - end - if _n_kwmeth == old_child then - n_kwmeth = new_child.as(TKwmeth) - return - end - if _n_methid == old_child then - n_methid = new_child.as(AMethid) - return - end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) - return - end - if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) - return - end - if _n_extern == old_child then - n_extern = new_child.as(nullable TString) - return - end - if _n_extern_calls == old_child then - n_extern_calls = new_child.as(nullable AExternCalls) - return - end - if _n_extern_code_block == old_child then - n_extern_code_block = new_child.as(nullable AExternCodeBlock) - return - end - end - - redef fun n_doc=(node) - do - _n_doc = node - if node != null then node.parent = self - end - redef fun n_kwredef=(node) - do - _n_kwredef = node - if node != null then node.parent = self - end - redef fun n_visibility=(node) - do - _n_visibility = node - node.parent = self - end - redef fun n_kwmeth=(node) - do - _n_kwmeth = node - node.parent = self - end - redef fun n_methid=(node) - do - _n_methid = node - node.parent = self - end - redef fun n_signature=(node) - do - _n_signature = node - node.parent = self - end - redef fun n_annotations=(node) - do - _n_annotations = node - if node != null then node.parent = self - end - redef fun n_extern=(node) - do - _n_extern = node - if node != null then node.parent = self - end - redef fun n_extern_calls=(node) - do - _n_extern_calls = node - if node != null then node.parent = self - end - redef fun n_extern_code_block=(node) - do - _n_extern_code_block = node - if node != null then node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_doc) - v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_kwmeth) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) - v.enter_visit(_n_annotations) - v.enter_visit(_n_extern) - v.enter_visit(_n_extern_calls) - v.enter_visit(_n_extern_code_block) - end -end -redef class AConcreteMethPropdef - init init_aconcretemethpropdef ( - n_doc: nullable ADoc, - n_kwredef: nullable TKwredef, - n_visibility: nullable AVisibility, - n_kwmeth: nullable TKwmeth, - n_methid: nullable AMethid, - n_signature: nullable ASignature, - n_annotations: nullable AAnnotations, - n_block: nullable AExpr - ) - do - _n_doc = n_doc - if n_doc != null then n_doc.parent = self - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_visibility = n_visibility.as(not null) - n_visibility.parent = self - _n_kwmeth = n_kwmeth.as(not null) - n_kwmeth.parent = self - _n_methid = n_methid.as(not null) - n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self - _n_block = n_block - if n_block != null then n_block.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_doc == old_child then - n_doc = new_child.as(nullable ADoc) - return - end - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_visibility == old_child then - n_visibility = new_child.as(AVisibility) - return - end - if _n_kwmeth == old_child then - n_kwmeth = new_child.as(TKwmeth) - return - end - if _n_methid == old_child then - n_methid = new_child.as(AMethid) + n_methid = new_child.as(nullable AMethid) return end if _n_signature == old_child then @@ -1571,127 +1120,15 @@ redef class AConcreteMethPropdef return end if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) - return - end - if _n_block == old_child then - n_block = new_child.as(nullable AExpr) - return - end - end - - redef fun n_doc=(node) - do - _n_doc = node - if node != null then node.parent = self - end - redef fun n_kwredef=(node) - do - _n_kwredef = node - if node != null then node.parent = self - end - redef fun n_visibility=(node) - do - _n_visibility = node - node.parent = self - end - redef fun n_kwmeth=(node) - do - _n_kwmeth = node - node.parent = self - end - redef fun n_methid=(node) - do - _n_methid = node - node.parent = self - end - redef fun n_signature=(node) - do - _n_signature = node - node.parent = self - end - redef fun n_annotations=(node) - do - _n_annotations = node - if node != null then node.parent = self - end - redef fun n_block=(node) - do - _n_block = node - if node != null then node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_doc) - v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_kwmeth) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) - v.enter_visit(_n_annotations) - v.enter_visit(_n_block) - end -end -redef class AConcreteInitPropdef - init init_aconcreteinitpropdef ( - n_doc: nullable ADoc, - n_kwredef: nullable TKwredef, - n_visibility: nullable AVisibility, - n_kwinit: nullable TKwinit, - n_methid: nullable AMethid, - n_signature: nullable ASignature, - n_annotations: nullable AAnnotations, - n_block: nullable AExpr - ) - do - _n_doc = n_doc - if n_doc != null then n_doc.parent = self - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_visibility = n_visibility.as(not null) - n_visibility.parent = self - _n_kwinit = n_kwinit.as(not null) - n_kwinit.parent = self - _n_methid = n_methid - if n_methid != null then n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self - _n_block = n_block - if n_block != null then n_block.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_doc == old_child then - n_doc = new_child.as(nullable ADoc) - return - end - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_visibility == old_child then - n_visibility = new_child.as(AVisibility) - return - end - if _n_kwinit == old_child then - n_kwinit = new_child.as(TKwinit) - return - end - if _n_methid == old_child then - n_methid = new_child.as(nullable AMethid) + n_annotations = new_child.as(nullable AAnnotations) return end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) + if _n_extern_calls == old_child then + n_extern_calls = new_child.as(nullable AExternCalls) return end - if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) + if _n_extern_code_block == old_child then + n_extern_code_block = new_child.as(nullable AExternCodeBlock) return end if _n_block == old_child then @@ -1715,144 +1152,20 @@ redef class AConcreteInitPropdef _n_visibility = node node.parent = self end - redef fun n_kwinit=(node) - do - _n_kwinit = node - node.parent = self - end - redef fun n_methid=(node) - do - _n_methid = node - if node != null then node.parent = self - end - redef fun n_signature=(node) - do - _n_signature = node - node.parent = self - end - redef fun n_annotations=(node) - do - _n_annotations = node - if node != null then node.parent = self - end - redef fun n_block=(node) - do - _n_block = node - if node != null then node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_doc) - v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_kwinit) - v.enter_visit(_n_methid) - v.enter_visit(_n_signature) - v.enter_visit(_n_annotations) - v.enter_visit(_n_block) - end -end -redef class AExternInitPropdef - init init_aexterninitpropdef ( - n_doc: nullable ADoc, - n_kwredef: nullable TKwredef, - n_visibility: nullable AVisibility, - n_kwnew: nullable TKwnew, - n_methid: nullable AMethid, - n_signature: nullable ASignature, - n_annotations: nullable AAnnotations, - n_extern: nullable TString, - n_extern_calls: nullable AExternCalls, - n_extern_code_block: nullable AExternCodeBlock - ) - do - _n_doc = n_doc - if n_doc != null then n_doc.parent = self - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_visibility = n_visibility.as(not null) - n_visibility.parent = self - _n_kwnew = n_kwnew.as(not null) - n_kwnew.parent = self - _n_methid = n_methid - if n_methid != null then n_methid.parent = self - _n_signature = n_signature.as(not null) - n_signature.parent = self - _n_annotations = n_annotations - if n_annotations != null then n_annotations.parent = self - _n_extern = n_extern - if n_extern != null then n_extern.parent = self - _n_extern_calls = n_extern_calls - if n_extern_calls != null then n_extern_calls.parent = self - _n_extern_code_block = n_extern_code_block - if n_extern_code_block != null then n_extern_code_block.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_doc == old_child then - n_doc = new_child.as(nullable ADoc) - return - end - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_visibility == old_child then - n_visibility = new_child.as(AVisibility) - return - end - if _n_kwnew == old_child then - n_kwnew = new_child.as(TKwnew) - return - end - if _n_methid == old_child then - n_methid = new_child.as(nullable AMethid) - return - end - if _n_signature == old_child then - n_signature = new_child.as(ASignature) - return - end - if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) - return - end - if _n_extern == old_child then - n_extern = new_child.as(nullable TString) - return - end - if _n_extern_calls == old_child then - n_extern_calls = new_child.as(nullable AExternCalls) - return - end - if _n_extern_code_block == old_child then - n_extern_code_block = new_child.as(nullable AExternCodeBlock) - return - end - end - - redef fun n_doc=(node) + redef fun n_kwmeth=(node) do - _n_doc = node + _n_kwmeth = node if node != null then node.parent = self end - redef fun n_kwredef=(node) + redef fun n_kwinit=(node) do - _n_kwredef = node + _n_kwinit = node if node != null then node.parent = self end - redef fun n_visibility=(node) - do - _n_visibility = node - node.parent = self - end redef fun n_kwnew=(node) do _n_kwnew = node - node.parent = self + if node != null then node.parent = self end redef fun n_methid=(node) do @@ -1869,11 +1182,6 @@ redef class AExternInitPropdef _n_annotations = node if node != null then node.parent = self end - redef fun n_extern=(node) - do - _n_extern = node - if node != null then node.parent = self - end redef fun n_extern_calls=(node) do _n_extern_calls = node @@ -1884,6 +1192,11 @@ redef class AExternInitPropdef _n_extern_code_block = node if node != null then node.parent = self end + redef fun n_block=(node) + do + _n_block = node + if node != null then node.parent = self + end redef fun visit_all(v: Visitor) @@ -1891,64 +1204,23 @@ redef class AExternInitPropdef v.enter_visit(_n_doc) v.enter_visit(_n_kwredef) v.enter_visit(_n_visibility) + v.enter_visit(_n_kwmeth) + v.enter_visit(_n_kwinit) v.enter_visit(_n_kwnew) v.enter_visit(_n_methid) v.enter_visit(_n_signature) v.enter_visit(_n_annotations) - v.enter_visit(_n_extern) v.enter_visit(_n_extern_calls) v.enter_visit(_n_extern_code_block) - end -end -redef class AMainMethPropdef - init init_amainmethpropdef ( - n_kwredef: nullable TKwredef, - n_block: nullable AExpr - ) - do - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_block = n_block - if n_block != null then n_block.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_block == old_child then - n_block = new_child.as(nullable AExpr) - return - end - end - - redef fun n_kwredef=(node) - do - _n_kwredef = node - if node != null then node.parent = self - end - redef fun n_block=(node) - do - _n_block = node - if node != null then node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_kwredef) v.enter_visit(_n_block) end end -redef class ATypePropdef - init init_atypepropdef ( +redef class ASuperPropdef + init init_asuperpropdef ( n_doc: nullable ADoc, n_kwredef: nullable TKwredef, n_visibility: nullable AVisibility, - n_kwtype: nullable TKwtype, - n_id: nullable TClassid, + n_kwsuper: nullable TKwsuper, n_type: nullable AType, n_annotations: nullable AAnnotations ) @@ -1959,10 +1231,8 @@ redef class ATypePropdef if n_kwredef != null then n_kwredef.parent = self _n_visibility = n_visibility.as(not null) n_visibility.parent = self - _n_kwtype = n_kwtype.as(not null) - n_kwtype.parent = self - _n_id = n_id.as(not null) - n_id.parent = self + _n_kwsuper = n_kwsuper.as(not null) + n_kwsuper.parent = self _n_type = n_type.as(not null) n_type.parent = self _n_annotations = n_annotations @@ -1983,12 +1253,8 @@ redef class ATypePropdef n_visibility = new_child.as(AVisibility) return end - if _n_kwtype == old_child then - n_kwtype = new_child.as(TKwtype) - return - end - if _n_id == old_child then - n_id = new_child.as(TClassid) + if _n_kwsuper == old_child then + n_kwsuper = new_child.as(TKwsuper) return end if _n_type == old_child then @@ -2013,101 +1279,71 @@ redef class ATypePropdef end redef fun n_visibility=(node) do - _n_visibility = node - node.parent = self - end - redef fun n_kwtype=(node) - do - _n_kwtype = node - node.parent = self - end - redef fun n_id=(node) - do - _n_id = node - node.parent = self - end - redef fun n_type=(node) - do - _n_type = node - node.parent = self - end - redef fun n_annotations=(node) - do - _n_annotations = node - if node != null then node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_doc) - v.enter_visit(_n_kwredef) - v.enter_visit(_n_visibility) - v.enter_visit(_n_kwtype) - v.enter_visit(_n_id) - v.enter_visit(_n_type) - v.enter_visit(_n_annotations) - end -end -redef class AReadAble - init init_areadable ( - n_kwredef: nullable TKwredef, - n_kwreadable: nullable TKwreadable - ) - do - _n_kwredef = n_kwredef - if n_kwredef != null then n_kwredef.parent = self - _n_kwreadable = n_kwreadable.as(not null) - n_kwreadable.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_kwredef == old_child then - n_kwredef = new_child.as(nullable TKwredef) - return - end - if _n_kwreadable == old_child then - n_kwreadable = new_child.as(TKwreadable) - return - end + _n_visibility = node + node.parent = self end - - redef fun n_kwredef=(node) + redef fun n_kwsuper=(node) do - _n_kwredef = node - if node != null then node.parent = self + _n_kwsuper = node + node.parent = self end - redef fun n_kwreadable=(node) + redef fun n_type=(node) do - _n_kwreadable = node + _n_type = node node.parent = self end + redef fun n_annotations=(node) + do + _n_annotations = node + if node != null then node.parent = self + end redef fun visit_all(v: Visitor) do + v.enter_visit(_n_doc) v.enter_visit(_n_kwredef) - v.enter_visit(_n_kwreadable) + v.enter_visit(_n_visibility) + v.enter_visit(_n_kwsuper) + v.enter_visit(_n_type) + v.enter_visit(_n_annotations) end end -redef class AWriteAble - init init_awriteable ( +redef class AAnnotPropdef + init init_aannotpropdef ( + n_doc: nullable ADoc, n_kwredef: nullable TKwredef, n_visibility: nullable AVisibility, - n_kwwritable: nullable TKwwritable + n_atid: nullable AAtid, + n_opar: nullable TOpar, + n_args: Collection[Object], # Should be Collection[AExpr] + n_cpar: nullable TCpar, + n_annotations: nullable AAnnotations ) do + _n_doc = n_doc + if n_doc != null then n_doc.parent = self _n_kwredef = n_kwredef if n_kwredef != null then n_kwredef.parent = self _n_visibility = n_visibility if n_visibility != null then n_visibility.parent = self - _n_kwwritable = n_kwwritable.as(not null) - n_kwwritable.parent = self + _n_atid = n_atid.as(not null) + n_atid.parent = self + _n_opar = n_opar + if n_opar != null then n_opar.parent = self + self.n_args.unsafe_add_all(n_args) + _n_cpar = n_cpar + if n_cpar != null then n_cpar.parent = self + _n_annotations = n_annotations + if n_annotations != null then n_annotations.parent = self end redef fun replace_child(old_child: ANode, new_child: nullable ANode) do + if _n_doc == old_child then + n_doc = new_child.as(nullable ADoc) + return + end if _n_kwredef == old_child then n_kwredef = new_child.as(nullable TKwredef) return @@ -2116,12 +1352,30 @@ redef class AWriteAble n_visibility = new_child.as(nullable AVisibility) return end - if _n_kwwritable == old_child then - n_kwwritable = new_child.as(TKwwritable) + if _n_atid == old_child then + n_atid = new_child.as(AAtid) + return + end + if _n_opar == old_child then + n_opar = new_child.as(nullable TOpar) + return + end + if n_args.replace_child(old_child, new_child) then return + if _n_cpar == old_child then + n_cpar = new_child.as(nullable TCpar) + return + end + if _n_annotations == old_child then + n_annotations = new_child.as(nullable AAnnotations) return end end + redef fun n_doc=(node) + do + _n_doc = node + if node != null then node.parent = self + end redef fun n_kwredef=(node) do _n_kwredef = node @@ -2132,18 +1386,38 @@ redef class AWriteAble _n_visibility = node if node != null then node.parent = self end - redef fun n_kwwritable=(node) + redef fun n_atid=(node) do - _n_kwwritable = node + _n_atid = node node.parent = self end + redef fun n_opar=(node) + do + _n_opar = node + if node != null then node.parent = self + end + redef fun n_cpar=(node) + do + _n_cpar = node + if node != null then node.parent = self + end + redef fun n_annotations=(node) + do + _n_annotations = node + if node != null then node.parent = self + end redef fun visit_all(v: Visitor) do + v.enter_visit(_n_doc) v.enter_visit(_n_kwredef) v.enter_visit(_n_visibility) - v.enter_visit(_n_kwwritable) + v.enter_visit(_n_atid) + v.enter_visit(_n_opar) + n_args.visit_all(v) + v.enter_visit(_n_cpar) + v.enter_visit(_n_annotations) end end redef class AIdMethid @@ -2262,6 +1536,35 @@ redef class AStarMethid v.enter_visit(_n_star) end end +redef class AStarstarMethid + init init_astarstarmethid ( + n_starstar: nullable TStarstar + ) + do + _n_starstar = n_starstar.as(not null) + n_starstar.parent = self + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if _n_starstar == old_child then + n_starstar = new_child.as(TStarstar) + return + end + end + + redef fun n_starstar=(node) + do + _n_starstar = node + node.parent = self + end + + + redef fun visit_all(v: Visitor) + do + v.enter_visit(_n_starstar) + end +end redef class ASlashMethid init init_aslashmethid ( n_slash: nullable TSlash @@ -2991,8 +2294,8 @@ redef class AVardeclExpr n_annotations: nullable AAnnotations ) do - _n_kwvar = n_kwvar.as(not null) - n_kwvar.parent = self + _n_kwvar = n_kwvar + if n_kwvar != null then n_kwvar.parent = self _n_id = n_id.as(not null) n_id.parent = self _n_type = n_type @@ -3008,7 +2311,7 @@ redef class AVardeclExpr redef fun replace_child(old_child: ANode, new_child: nullable ANode) do if _n_kwvar == old_child then - n_kwvar = new_child.as(TKwvar) + n_kwvar = new_child.as(nullable TKwvar) return end if _n_id == old_child then @@ -3036,7 +2339,7 @@ redef class AVardeclExpr redef fun n_kwvar=(node) do _n_kwvar = node - node.parent = self + if node != null then node.parent = self end redef fun n_id=(node) do @@ -3668,6 +2971,87 @@ redef class AForExpr v.enter_visit(_n_label) end end +redef class AWithExpr + init init_awithexpr ( + n_kwwith: nullable TKwwith, + n_expr: nullable AExpr, + n_kwdo: nullable TKwdo, + n_block: nullable AExpr, + n_label: nullable ALabel + ) + do + _n_kwwith = n_kwwith.as(not null) + n_kwwith.parent = self + _n_expr = n_expr.as(not null) + n_expr.parent = self + _n_kwdo = n_kwdo.as(not null) + n_kwdo.parent = self + _n_block = n_block + if n_block != null then n_block.parent = self + _n_label = n_label + if n_label != null then n_label.parent = self + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if _n_kwwith == old_child then + n_kwwith = new_child.as(TKwwith) + return + end + if _n_expr == old_child then + n_expr = new_child.as(AExpr) + return + end + if _n_kwdo == old_child then + n_kwdo = new_child.as(TKwdo) + return + end + if _n_block == old_child then + n_block = new_child.as(nullable AExpr) + return + end + if _n_label == old_child then + n_label = new_child.as(nullable ALabel) + return + end + end + + redef fun n_kwwith=(node) + do + _n_kwwith = node + node.parent = self + end + redef fun n_expr=(node) + do + _n_expr = node + node.parent = self + end + redef fun n_kwdo=(node) + do + _n_kwdo = node + node.parent = self + end + redef fun n_block=(node) + do + _n_block = node + if node != null then node.parent = self + end + redef fun n_label=(node) + do + _n_label = node + if node != null then node.parent = self + end + + + redef fun visit_all(v: Visitor) + do + v.enter_visit(_n_kwwith) + v.enter_visit(_n_expr) + v.enter_visit(_n_kwdo) + v.enter_visit(_n_block) + v.enter_visit(_n_label) + end +end redef class AAssertExpr init init_aassertexpr ( n_kwassert: nullable TKwassert, @@ -4605,6 +3989,48 @@ redef class AStarExpr v.enter_visit(_n_expr2) end end +redef class AStarstarExpr + init init_astarstarexpr ( + n_expr: nullable AExpr, + n_expr2: nullable AExpr + ) + do + _n_expr = n_expr.as(not null) + n_expr.parent = self + _n_expr2 = n_expr2.as(not null) + n_expr2.parent = self + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if _n_expr == old_child then + n_expr = new_child.as(AExpr) + return + end + if _n_expr2 == old_child then + n_expr2 = new_child.as(AExpr) + return + end + end + + redef fun n_expr=(node) + do + _n_expr = node + node.parent = self + end + redef fun n_expr2=(node) + do + _n_expr2 = node + node.parent = self + end + + + redef fun visit_all(v: Visitor) + do + v.enter_visit(_n_expr) + v.enter_visit(_n_expr2) + end +end redef class ASlashExpr init init_aslashexpr ( n_expr: nullable AExpr, @@ -5840,31 +5266,58 @@ redef class AOrangeExpr end redef class AArrayExpr init init_aarrayexpr ( - n_exprs: nullable AExprs, + n_obra: nullable TObra, + n_exprs: Collection[Object], # Should be Collection[AExpr] + n_type: nullable AType, + n_cbra: nullable TCbra, n_annotations: nullable AAnnotations ) do - _n_exprs = n_exprs.as(not null) - n_exprs.parent = self + _n_obra = n_obra.as(not null) + n_obra.parent = self + self.n_exprs.unsafe_add_all(n_exprs) + _n_type = n_type + if n_type != null then n_type.parent = self + _n_cbra = n_cbra.as(not null) + n_cbra.parent = self _n_annotations = n_annotations if n_annotations != null then n_annotations.parent = self end redef fun replace_child(old_child: ANode, new_child: nullable ANode) do - if _n_exprs == old_child then - n_exprs = new_child.as(AExprs) - return - end - if _n_annotations == old_child then - n_annotations = new_child.as(nullable AAnnotations) - return - end + if _n_obra == old_child then + n_obra = new_child.as(TObra) + return + end + if n_exprs.replace_child(old_child, new_child) then return + if _n_type == old_child then + n_type = new_child.as(nullable AType) + return + end + if _n_cbra == old_child then + n_cbra = new_child.as(TCbra) + return + end + if _n_annotations == old_child then + n_annotations = new_child.as(nullable AAnnotations) + return + end + end + + redef fun n_obra=(node) + do + _n_obra = node + node.parent = self + end + redef fun n_type=(node) + do + _n_type = node + if node != null then node.parent = self end - - redef fun n_exprs=(node) + redef fun n_cbra=(node) do - _n_exprs = node + _n_cbra = node node.parent = self end redef fun n_annotations=(node) @@ -5876,7 +5329,10 @@ redef class AArrayExpr redef fun visit_all(v: Visitor) do - v.enter_visit(_n_exprs) + v.enter_visit(_n_obra) + n_exprs.visit_all(v) + v.enter_visit(_n_type) + v.enter_visit(_n_cbra) v.enter_visit(_n_annotations) end end @@ -6801,6 +6257,126 @@ redef class AVarargExpr v.enter_visit(_n_dotdotdot) end end +redef class ATypeExpr + init init_atypeexpr ( + n_type: nullable AType + ) + do + _n_type = n_type.as(not null) + n_type.parent = self + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if _n_type == old_child then + n_type = new_child.as(AType) + return + end + end + + redef fun n_type=(node) + do + _n_type = node + node.parent = self + end + + + redef fun visit_all(v: Visitor) + do + v.enter_visit(_n_type) + end +end +redef class AMethidExpr + init init_amethidexpr ( + n_expr: nullable AExpr, + n_id: nullable AMethid + ) + do + _n_expr = n_expr.as(not null) + n_expr.parent = self + _n_id = n_id.as(not null) + n_id.parent = self + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if _n_expr == old_child then + n_expr = new_child.as(AExpr) + return + end + if _n_id == old_child then + n_id = new_child.as(AMethid) + return + end + end + + redef fun n_expr=(node) + do + _n_expr = node + node.parent = self + end + redef fun n_id=(node) + do + _n_id = node + node.parent = self + end + + + redef fun visit_all(v: Visitor) + do + v.enter_visit(_n_expr) + v.enter_visit(_n_id) + end +end +redef class AAtExpr + init init_aatexpr ( + n_annotations: nullable AAnnotations + ) + do + _n_annotations = n_annotations.as(not null) + n_annotations.parent = self + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if _n_annotations == old_child then + n_annotations = new_child.as(AAnnotations) + return + end + end + + redef fun n_annotations=(node) + do + _n_annotations = node + node.parent = self + end + + + redef fun visit_all(v: Visitor) + do + v.enter_visit(_n_annotations) + end +end +redef class AManyExpr + init init_amanyexpr ( + n_exprs: Collection[Object] # Should be Collection[AExpr] + ) + do + self.n_exprs.unsafe_add_all(n_exprs) + end + + redef fun replace_child(old_child: ANode, new_child: nullable ANode) + do + if n_exprs.replace_child(old_child, new_child) then return + end + + + + redef fun visit_all(v: Visitor) + do + n_exprs.visit_all(v) + end +end redef class AListExprs init init_alistexprs ( n_exprs: Collection[Object] # Should be Collection[AExpr] @@ -7601,7 +7177,7 @@ redef class AAnnotation n_visibility: nullable AVisibility, n_atid: nullable AAtid, n_opar: nullable TOpar, - n_args: Collection[Object], # Should be Collection[AAtArg] + n_args: Collection[Object], # Should be Collection[AExpr] n_cpar: nullable TCpar, n_annotations: nullable AAnnotations ) @@ -7705,93 +7281,6 @@ redef class AAnnotation v.enter_visit(_n_annotations) end end -redef class ATypeAtArg - init init_atypeatarg ( - n_type: nullable AType - ) - do - _n_type = n_type.as(not null) - n_type.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_type == old_child then - n_type = new_child.as(AType) - return - end - end - - redef fun n_type=(node) - do - _n_type = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_type) - end -end -redef class AExprAtArg - init init_aexpratarg ( - n_expr: nullable AExpr - ) - do - _n_expr = n_expr.as(not null) - n_expr.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_expr == old_child then - n_expr = new_child.as(AExpr) - return - end - end - - redef fun n_expr=(node) - do - _n_expr = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_expr) - end -end -redef class AAtAtArg - init init_aatatarg ( - n_annotations: nullable AAnnotations - ) - do - _n_annotations = n_annotations.as(not null) - n_annotations.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_annotations == old_child then - n_annotations = new_child.as(AAnnotations) - return - end - end - - redef fun n_annotations=(node) - do - _n_annotations = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_annotations) - end -end redef class AIdAtid init init_aidatid ( n_id: nullable TId @@ -7850,67 +7339,9 @@ redef class AKwexternAtid v.enter_visit(_n_id) end end -redef class AKwinternAtid - init init_akwinternatid ( - n_id: nullable TKwintern - ) - do - _n_id = n_id.as(not null) - n_id.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_id == old_child then - n_id = new_child.as(TKwintern) - return - end - end - - redef fun n_id=(node) - do - _n_id = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_id) - end -end -redef class AKwreadableAtid - init init_akwreadableatid ( - n_id: nullable TKwreadable - ) - do - _n_id = n_id.as(not null) - n_id.parent = self - end - - redef fun replace_child(old_child: ANode, new_child: nullable ANode) - do - if _n_id == old_child then - n_id = new_child.as(TKwreadable) - return - end - end - - redef fun n_id=(node) - do - _n_id = node - node.parent = self - end - - - redef fun visit_all(v: Visitor) - do - v.enter_visit(_n_id) - end -end -redef class AKwwritableAtid - init init_akwwritableatid ( - n_id: nullable TKwwritable +redef class AKwabstractAtid + init init_akwabstractatid ( + n_id: nullable TKwabstract ) do _n_id = n_id.as(not null) @@ -7920,7 +7351,7 @@ redef class AKwwritableAtid redef fun replace_child(old_child: ANode, new_child: nullable ANode) do if _n_id == old_child then - n_id = new_child.as(TKwwritable) + n_id = new_child.as(TKwabstract) return end end