syntax: 'meth' -> 'fun', 'attr' -> 'var'
[nit.git] / src / parser / parser_nodes.nit
index 9e94135..5ddd64c 100644 (file)
@@ -291,17 +291,17 @@ class PClasskind special Prod end
 class PFormaldef special Prod end
 class PSuperclass special Prod end
 class PPropdef special Prod 
-    readable writable attr _n_doc: PDoc = null
+    readable writable var _n_doc: nullable PDoc = null
 end
 class PAble special Prod
-    readable writable attr _n_kwredef: TKwredef = null
+    readable writable var _n_kwredef: nullable TKwredef = null
 end
 class PMethid special Prod end
 class PSignature special Prod end
 class PParam
 special Prod
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_type: PType = null
+    readable writable var _n_id: TId
+    readable writable var _n_type: nullable PType = null
 end
 class PClosureDecl special Prod end
 class PType special Prod end
@@ -313,365 +313,365 @@ class PDoc special Prod end
 
 class AModule
 special PModule
-    readable writable attr _n_packagedecl: PPackagedecl = null
-    readable writable attr _n_imports: List[PImport] = null
-    readable writable attr _n_classdefs: List[PClassdef] = null
+    readable writable var _n_packagedecl: nullable PPackagedecl = null
+    readable writable var _n_imports: List[PImport] = new List[PImport]
+    readable writable var _n_classdefs: List[PClassdef] = new List[PClassdef]
 end
 class APackagedecl
 special PPackagedecl
-    readable writable attr _n_doc: PDoc = null
-    readable writable attr _n_kwpackage: TKwpackage = null
-    readable writable attr _n_id: TId = null
+    readable writable var _n_doc: nullable PDoc = null
+    readable writable var _n_kwpackage: TKwpackage
+    readable writable var _n_id: TId
 end
 class AImport
 special PImport
-    readable writable attr _n_visibility: PVisibility = null
-    readable writable attr _n_kwimport: TKwimport = null
-    readable writable attr _n_id: TId = null
+    readable writable var _n_visibility: PVisibility
+    readable writable var _n_kwimport: TKwimport
+    readable writable var _n_id: TId
 end
 class ANoImport
 special PImport
-    readable writable attr _n_visibility: PVisibility = null
-    readable writable attr _n_kwimport: TKwimport = null
-    readable writable attr _n_kwend: TKwend = null
+    readable writable var _n_visibility: PVisibility
+    readable writable var _n_kwimport: TKwimport
+    readable writable var _n_kwend: TKwend
 end
 class APublicVisibility
 special PVisibility
 end
 class APrivateVisibility
 special PVisibility
-    readable writable attr _n_kwprivate: TKwprivate = null
+    readable writable var _n_kwprivate: TKwprivate
 end
 class AProtectedVisibility
 special PVisibility
-    readable writable attr _n_kwprotected: TKwprotected = null
+    readable writable var _n_kwprotected: TKwprotected
 end
 class AIntrudeVisibility
 special PVisibility
-    readable writable attr _n_kwintrude: TKwintrude = null
+    readable writable var _n_kwintrude: TKwintrude
 end
 class AClassdef
 special PClassdef
-    readable writable attr _n_doc: PDoc = null
-    readable writable attr _n_kwredef: TKwredef = null
-    readable writable attr _n_visibility: PVisibility = null
-    readable writable attr _n_classkind: PClasskind = null
-    readable writable attr _n_id: TClassid = null
-    readable writable attr _n_formaldefs: List[PFormaldef] = null
-    readable writable attr _n_superclasses: List[PSuperclass] = null
-    readable writable attr _n_propdefs: List[PPropdef] = null
+    readable writable var _n_doc: nullable PDoc = null
+    readable writable var _n_kwredef: nullable TKwredef = null
+    readable writable var _n_visibility: PVisibility
+    readable writable var _n_classkind: PClasskind
+    readable writable var _n_id: nullable TClassid = null
+    readable writable var _n_formaldefs: List[PFormaldef] = new List[PFormaldef]
+    readable writable var _n_superclasses: List[PSuperclass] = new List[PSuperclass]
+    readable writable var _n_propdefs: List[PPropdef] = new List[PPropdef]
 end
 class ATopClassdef
 special PClassdef
-    readable writable attr _n_propdefs: List[PPropdef] = null
+    readable writable var _n_propdefs: List[PPropdef] = new List[PPropdef]
 end
 class AMainClassdef
 special PClassdef
-    readable writable attr _n_propdefs: List[PPropdef] = null
+    readable writable var _n_propdefs: List[PPropdef] = new List[PPropdef]
 end
 class AConcreteClasskind
 special PClasskind
-    readable writable attr _n_kwclass: TKwclass = null
+    readable writable var _n_kwclass: TKwclass
 end
 class AAbstractClasskind
 special PClasskind
-    readable writable attr _n_kwabstract: TKwabstract = null
-    readable writable attr _n_kwclass: TKwclass = null
+    readable writable var _n_kwabstract: TKwabstract
+    readable writable var _n_kwclass: TKwclass
 end
 class AInterfaceClasskind
 special PClasskind
-    readable writable attr _n_kwinterface: TKwinterface = null
+    readable writable var _n_kwinterface: TKwinterface
 end
 class AUniversalClasskind
 special PClasskind
-    readable writable attr _n_kwuniversal: TKwuniversal = null
+    readable writable var _n_kwuniversal: TKwuniversal
 end
 class AFormaldef
 special PFormaldef
-    readable writable attr _n_id: TClassid = null
-    readable writable attr _n_type: PType = null
+    readable writable var _n_id: TClassid
+    readable writable var _n_type: nullable PType = null
 end
 class ASuperclass
 special PSuperclass
-    readable writable attr _n_kwspecial: TKwspecial = null
-    readable writable attr _n_type: PType = null
+    readable writable var _n_kwspecial: TKwspecial
+    readable writable var _n_type: PType
 end
 class AAttrPropdef
 special PPropdef
-    readable writable attr _n_kwredef: TKwredef = null
-    readable writable attr _n_visibility: PVisibility = null
-    readable writable attr _n_kwattr: TKwattr = null
-    readable writable attr _n_kwvar: TKwvar = null
-    readable writable attr _n_id: TAttrid = null
-    readable writable attr _n_type: PType = null
-    readable writable attr _n_readable: PAble = null
-    readable writable attr _n_writable: PAble = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwredef: nullable TKwredef = null
+    readable writable var _n_visibility: PVisibility
+    readable writable var _n_kwattr: nullable TKwattr = null
+    readable writable var _n_kwvar: nullable TKwvar = null
+    readable writable var _n_id: TAttrid
+    readable writable var _n_type: nullable PType = null
+    readable writable var _n_readable: nullable PAble = null
+    readable writable var _n_writable: nullable PAble = null
+    readable writable var _n_expr: nullable PExpr = null
 end
 class AMethPropdef
 special PPropdef
-    readable writable attr _n_kwredef: TKwredef = null
-    readable writable attr _n_visibility: PVisibility = null
-    readable writable attr _n_methid: PMethid = null
-    readable writable attr _n_signature: PSignature = null
+    readable writable var _n_kwredef: nullable TKwredef = null
+    readable writable var _n_visibility: nullable PVisibility
+    readable writable var _n_methid: nullable PMethid = null
+    readable writable var _n_signature: nullable PSignature
 end
 class ADeferredMethPropdef
 special AMethPropdef
-    readable writable attr _n_kwmeth: TKwmeth = null
+    readable writable var _n_kwmeth: TKwmeth
 end
 class AInternMethPropdef
 special AMethPropdef
-    readable writable attr _n_kwmeth: TKwmeth = null
+    readable writable var _n_kwmeth: TKwmeth
 end
 class AExternMethPropdef
 special AMethPropdef
-    readable writable attr _n_kwmeth: TKwmeth = null
-    readable writable attr _n_extern: TString = null
+    readable writable var _n_kwmeth: TKwmeth
+    readable writable var _n_extern: nullable TString = null
 end
 class AConcreteMethPropdef
 special AMethPropdef
-    readable writable attr _n_kwmeth: TKwmeth = null
-    readable writable attr _n_block: PExpr = null
+    readable writable var _n_kwmeth: nullable TKwmeth
+    readable writable var _n_block: nullable PExpr = null
 end
 class AConcreteInitPropdef
 special AConcreteMethPropdef
-    readable writable attr _n_kwinit: TKwinit = null
+    readable writable var _n_kwinit: TKwinit
 end
 class AMainMethPropdef
 special AConcreteMethPropdef
 end
 class ATypePropdef
 special PPropdef
-    readable writable attr _n_kwredef: TKwredef = null
-    readable writable attr _n_visibility: PVisibility = null
-    readable writable attr _n_kwtype: TKwtype = null
-    readable writable attr _n_id: TClassid = null
-    readable writable attr _n_type: PType = null
+    readable writable var _n_kwredef: nullable TKwredef = null
+    readable writable var _n_visibility: PVisibility
+    readable writable var _n_kwtype: TKwtype
+    readable writable var _n_id: TClassid
+    readable writable var _n_type: PType
 end
 class AReadAble
 special PAble
-    readable writable attr _n_kwreadable: TKwreadable = null
+    readable writable var _n_kwreadable: TKwreadable
 end
 class AWriteAble
 special PAble
-    readable writable attr _n_kwwritable: TKwwritable = null
+    readable writable var _n_kwwritable: TKwwritable
 end
 class AIdMethid
 special PMethid
-    readable writable attr _n_id: TId = null
+    readable writable var _n_id: TId
 end
 class APlusMethid
 special PMethid
-    readable writable attr _n_plus: TPlus = null
+    readable writable var _n_plus: TPlus
 end
 class AMinusMethid
 special PMethid
-    readable writable attr _n_minus: TMinus = null
+    readable writable var _n_minus: TMinus
 end
 class AStarMethid
 special PMethid
-    readable writable attr _n_star: TStar = null
+    readable writable var _n_star: TStar
 end
 class ASlashMethid
 special PMethid
-    readable writable attr _n_slash: TSlash = null
+    readable writable var _n_slash: TSlash
 end
 class APercentMethid
 special PMethid
-    readable writable attr _n_percent: TPercent = null
+    readable writable var _n_percent: TPercent
 end
 class AEqMethid
 special PMethid
-    readable writable attr _n_eq: TEq = null
+    readable writable var _n_eq: TEq
 end
 class ANeMethid
 special PMethid
-    readable writable attr _n_ne: TNe = null
+    readable writable var _n_ne: TNe
 end
 class ALeMethid
 special PMethid
-    readable writable attr _n_le: TLe = null
+    readable writable var _n_le: TLe
 end
 class AGeMethid
 special PMethid
-    readable writable attr _n_ge: TGe = null
+    readable writable var _n_ge: TGe
 end
 class ALtMethid
 special PMethid
-    readable writable attr _n_lt: TLt = null
+    readable writable var _n_lt: TLt
 end
 class AGtMethid
 special PMethid
-    readable writable attr _n_gt: TGt = null
+    readable writable var _n_gt: TGt
 end
 class ABraMethid
 special PMethid
-    readable writable attr _n_obra: TObra = null
-    readable writable attr _n_cbra: TCbra = null
+    readable writable var _n_obra: TObra
+    readable writable var _n_cbra: TCbra
 end
 class AStarshipMethid
 special PMethid
-    readable writable attr _n_starship: TStarship = null
+    readable writable var _n_starship: TStarship
 end
 class AAssignMethid
 special PMethid
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_assign: TAssign = null
+    readable writable var _n_id: TId
+    readable writable var _n_assign: TAssign
 end
 class ABraassignMethid
 special PMethid
-    readable writable attr _n_obra: TObra = null
-    readable writable attr _n_cbra: TCbra = null
-    readable writable attr _n_assign: TAssign = null
+    readable writable var _n_obra: TObra
+    readable writable var _n_cbra: TCbra
+    readable writable var _n_assign: TAssign
 end
 class ASignature
 special PSignature
-    readable writable attr _n_params: List[PParam] = null
-    readable writable attr _n_type: PType = null
-    readable writable attr _n_closure_decls: List[PClosureDecl] = null
+    readable writable var _n_params: List[PParam] = new List[PParam]
+    readable writable var _n_type: nullable PType = null
+    readable writable var _n_closure_decls: List[PClosureDecl] = new List[PClosureDecl]
 end
 class AParam
 special PParam
-    readable writable attr _n_dotdotdot: TDotdotdot = null
+    readable writable var _n_dotdotdot: nullable TDotdotdot = null
 end
 class AClosureDecl
 special PClosureDecl
-    readable writable attr _n_kwwith: TKwwith = null
-    readable writable attr _n_kwbreak: TKwbreak = null
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_signature: PSignature = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwwith: TKwwith
+    readable writable var _n_kwbreak: nullable TKwbreak = null
+    readable writable var _n_id: TId
+    readable writable var _n_signature: PSignature
+    readable writable var _n_expr: nullable PExpr = null
 end
 class AType
 special PType
-    readable writable attr _n_kwnullable: TKwnullable = null
-    readable writable attr _n_id: TClassid = null
-    readable writable attr _n_types: List[PType] = null
+    readable writable var _n_kwnullable: nullable TKwnullable = null
+    readable writable var _n_id: TClassid
+    readable writable var _n_types: List[PType] = new List[PType]
 end
 
 
 
 class ABlockExpr
 special PExpr
-    readable writable attr _n_expr: List[PExpr] = null
+    readable writable var _n_expr: List[PExpr] = new List[PExpr]
 end
 class AVardeclExpr
 special PExpr
-    readable writable attr _n_kwvar: TKwvar = null
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_type: PType = null
-    readable writable attr _n_assign: TAssign = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwvar: TKwvar
+    readable writable var _n_id: TId
+    readable writable var _n_type: nullable PType = null
+    readable writable var _n_assign: nullable TAssign = null
+    readable writable var _n_expr: nullable PExpr = null
 end
 class AReturnExpr
 special PExpr
-    readable writable attr _n_kwreturn: TKwreturn = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwreturn: TKwreturn
+    readable writable var _n_expr: nullable PExpr = null
 end
 class ABreakExpr
 special PExpr
-    readable writable attr _n_kwbreak: TKwbreak = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwbreak: TKwbreak
+    readable writable var _n_expr: nullable PExpr = null
 end
 class AAbortExpr
 special PExpr
-    readable writable attr _n_kwabort: TKwabort = null
+    readable writable var _n_kwabort: TKwabort
 end
 class AContinueExpr
 special PExpr
-    readable writable attr _n_kwcontinue: TKwcontinue = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwcontinue: TKwcontinue
+    readable writable var _n_expr: nullable PExpr = null
 end
 class ADoExpr
 special PExpr
-    readable writable attr _n_kwdo: TKwdo = null
-    readable writable attr _n_block: PExpr = null
+    readable writable var _n_kwdo: TKwdo
+    readable writable var _n_block: nullable PExpr = null
 end
 class AIfExpr
 special PExpr
-    readable writable attr _n_kwif: TKwif = null
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_then: PExpr = null
-    readable writable attr _n_else: PExpr = null
+    readable writable var _n_kwif: TKwif
+    readable writable var _n_expr: PExpr
+    readable writable var _n_then: nullable PExpr = null
+    readable writable var _n_else: nullable PExpr = null
 end
 class AIfexprExpr
 special PExpr
-    readable writable attr _n_kwif: TKwif = null
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_kwthen: TKwthen = null
-    readable writable attr _n_then: PExpr = null
-    readable writable attr _n_kwelse: TKwelse = null
-    readable writable attr _n_else: PExpr = null
+    readable writable var _n_kwif: TKwif
+    readable writable var _n_expr: PExpr
+    readable writable var _n_kwthen: TKwthen
+    readable writable var _n_then: PExpr
+    readable writable var _n_kwelse: TKwelse
+    readable writable var _n_else: PExpr
 end
 class AWhileExpr
 special PExpr
-    readable writable attr _n_kwwhile: TKwwhile = null
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_kwdo: TKwdo = null
-    readable writable attr _n_block: PExpr = null
+    readable writable var _n_kwwhile:  TKwwhile
+    readable writable var _n_expr: PExpr
+    readable writable var _n_kwdo: TKwdo
+    readable writable var _n_block: nullable PExpr = null
 end
 class AForExpr
 special PExpr
-    readable writable attr _n_kwfor: TKwfor = null
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_kwdo: TKwdo = null
-    readable writable attr _n_block: PExpr = null
+    readable writable var _n_kwfor: TKwfor
+    readable writable var _n_id: TId
+    readable writable var _n_expr: PExpr
+    readable writable var _n_kwdo: TKwdo
+    readable writable var _n_block: nullable PExpr = null
 end
 class AAssertExpr
 special PExpr
-    readable writable attr _n_kwassert: TKwassert = null
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwassert: TKwassert
+    readable writable var _n_id: nullable TId = null
+    readable writable var _n_expr: PExpr
 end
 class AAssignFormExpr
 special PExpr
-    readable writable attr _n_assign: TAssign = null
-    readable writable attr _n_value: PExpr = null
+    readable writable var _n_assign: TAssign
+    readable writable var _n_value: PExpr
 end
 class AReassignFormExpr
 special PExpr
-    readable writable attr _n_assign_op: PAssignOp = null
-    readable writable attr _n_value: PExpr = null
+    readable writable var _n_assign_op: PAssignOp
+    readable writable var _n_value: PExpr
 end
 class AOnceExpr
 special AProxyExpr
-    readable writable attr _n_kwonce: TKwonce = null
+    readable writable var _n_kwonce: TKwonce
 end
 class ASendExpr
 special PExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_closure_defs: List[PClosureDef] = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_closure_defs: List[PClosureDef] = new List[PClosureDef]
 end
 class ABinopExpr
 special ASendExpr
-    readable writable attr _n_expr2: PExpr = null
+    readable writable var _n_expr2: PExpr
 end
 class ABoolExpr
 special PExpr
 end
 class AOrExpr
 special ABoolExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_expr2: PExpr = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_expr2: PExpr
 end
 class AAndExpr
 special ABoolExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_expr2: PExpr = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_expr2: PExpr
 end
 class ANotExpr
 special ABoolExpr
-    readable writable attr _n_kwnot: TKwnot = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwnot: TKwnot
+    readable writable var _n_expr: PExpr
 end
 class AEqExpr
 special ABinopExpr
 end
 class AEeExpr
 special ABoolExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_expr2: PExpr = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_expr2: PExpr
 end
 class ANeExpr
 special ABinopExpr
@@ -690,8 +690,8 @@ special ABinopExpr
 end
 class AIsaExpr
 special ABoolExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_type: PType = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_type: PType
 end
 class APlusExpr
 special ABinopExpr
@@ -713,31 +713,31 @@ special ABinopExpr
 end
 class AUminusExpr
 special ASendExpr
-    readable writable attr _n_minus: TMinus = null
+    readable writable var _n_minus: TMinus
 end
 class ANewExpr
 special PExpr
-    readable writable attr _n_kwnew: TKwnew = null
-    readable writable attr _n_type: PType = null
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_args: List[PExpr] = null
+    readable writable var _n_kwnew: TKwnew
+    readable writable var _n_type: PType
+    readable writable var _n_id: nullable TId = null
+    readable writable var _n_args: List[PExpr] = new List[PExpr]
 end
 class AAttrFormExpr
 special PExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_id: TAttrid = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_id: TAttrid
 end
 class AAttrExpr
 special AAttrFormExpr
 end
 class AAttrAssignExpr
-special AAttrFormExpr 
-special AAssignFormExpr 
+special AAttrFormExpr
+special AAssignFormExpr
 end
 class ACallFormExpr
 special ASendExpr
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_args: List[PExpr] = null
+    readable writable var _n_id: TId
+    readable writable var _n_args: List[PExpr] = new List[PExpr]
 end
 class AAttrReassignExpr
 special PExpr
@@ -758,18 +758,18 @@ special AReassignFormExpr
 end
 class ASuperExpr
 special PExpr
-    readable writable attr _n_qualified: PQualified = null
-    readable writable attr _n_kwsuper: TKwsuper = null
-    readable writable attr _n_args: List[PExpr] = null
+    readable writable var _n_qualified: nullable PQualified = null
+    readable writable var _n_kwsuper: TKwsuper
+    readable writable var _n_args: List[PExpr] = new List[PExpr]
 end
 class AInitExpr
 special ASendExpr
-    readable writable attr _n_kwinit: TKwinit = null
-    readable writable attr _n_args: List[PExpr] = null
+    readable writable var _n_kwinit: TKwinit
+    readable writable var _n_args: List[PExpr] = new List[PExpr]
 end
 class ABraFormExpr
 special ASendExpr
-    readable writable attr _n_args: List[PExpr] = null 
+    readable writable var _n_args: List[PExpr] = new List[PExpr]
 end
 class ABraExpr
 special ABraFormExpr
@@ -780,7 +780,7 @@ special AAssignFormExpr
 end
 class AVarFormExpr
 special PExpr
-    readable writable attr _n_id: TId = null 
+    readable writable var _n_id: TId
 end
 class ABraReassignExpr
 special ABraFormExpr
@@ -788,9 +788,9 @@ special AReassignFormExpr
 end
 class AClosureCallExpr
 special PExpr
-    readable writable attr _n_id: TId = null
-    readable writable attr _n_args: List[PExpr] = null
-    readable writable attr _n_closure_defs: List[PClosureDef] = null
+    readable writable var _n_id: TId
+    readable writable var _n_args: List[PExpr] = new List[PExpr]
+    readable writable var _n_closure_defs: List[PClosureDef] = new List[PClosureDef]
 end
 class AVarExpr
 special AVarFormExpr
@@ -805,8 +805,8 @@ special AReassignFormExpr
 end
 class ARangeExpr
 special PExpr
-    readable writable attr _n_expr: PExpr = null 
-    readable writable attr _n_expr2: PExpr = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_expr2: PExpr
 end
 class ACrangeExpr
 special ARangeExpr
@@ -816,115 +816,113 @@ special ARangeExpr
 end
 class AArrayExpr
 special PExpr
-    readable writable attr _n_exprs: List[PExpr] = null
+    readable writable var _n_exprs: List[PExpr] = new List[PExpr]
 end
 class ASelfExpr
 special PExpr
-    readable writable attr _n_kwself: TKwself = null
+    readable writable var _n_kwself: nullable TKwself
 end
 class AImplicitSelfExpr
 special ASelfExpr
 end
 class ATrueExpr
 special ABoolExpr
-    readable writable attr _n_kwtrue: TKwtrue = null
+    readable writable var _n_kwtrue: TKwtrue
 end
 class AFalseExpr
 special ABoolExpr
-    readable writable attr _n_kwfalse: TKwfalse = null
+    readable writable var _n_kwfalse: TKwfalse
 end
 class ANullExpr
 special PExpr
-    readable writable attr _n_kwnull: TKwnull = null
+    readable writable var _n_kwnull: TKwnull
 end
 class AIntExpr
 special PExpr
-    readable writable attr _n_number: TNumber = null
+    readable writable var _n_number: TNumber
 end
 class AFloatExpr
 special PExpr
-    readable writable attr _n_float: TFloat = null
+    readable writable var _n_float: TFloat
 end
 class ACharExpr
 special PExpr
-    readable writable attr _n_char: TChar = null
+    readable writable var _n_char: TChar
 end
 class AStringFormExpr
 special PExpr
 end
 class AStringExpr
 special AStringFormExpr
-    readable writable attr _n_string: TString = null
+    readable writable var _n_string: TString
 end
 class AStartStringExpr
 special AStringFormExpr
-    readable writable attr _n_string: TStartString = null
+    readable writable var _n_string: TStartString
 end
 class AMidStringExpr
 special AStringFormExpr
-    readable writable attr _n_string: TMidString = null
+    readable writable var _n_string: TMidString
 end
 class AEndStringExpr
 special AStringFormExpr
-    readable writable attr _n_string: TEndString = null
+    readable writable var _n_string: TEndString
 end
 class ASuperstringExpr
 special PExpr
-    readable writable attr _n_exprs: List[PExpr] = null
+    readable writable var _n_exprs: List[PExpr] = new List[PExpr]
 end
 class AParExpr
 special AProxyExpr
 end
 class AProxyExpr
 special PExpr
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_expr: PExpr
 end
 class AAsCastExpr
 special PExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_kwas: TKwas = null
-    readable writable attr _n_type: PType = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_kwas: TKwas
+    readable writable var _n_type: PType
 end
 class AAsNotnullExpr
 special PExpr
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_kwas: TKwas = null
-    readable writable attr _n_kwnot: TKwnot = null
-    readable writable attr _n_kwnull: TKwnull = null
+    readable writable var _n_expr: PExpr
+    readable writable var _n_kwas: TKwas
+    readable writable var _n_kwnot: TKwnot
+    readable writable var _n_kwnull: TKwnull
 end
 class AIssetAttrExpr
-special PExpr
-    readable writable attr _n_kwisset: TKwisset = null
-    readable writable attr _n_expr: PExpr = null
-    readable writable attr _n_id: TAttrid = null
+special AAttrFormExpr
+    readable writable var _n_kwisset: TKwisset
 end
 class APlusAssignOp
 special PAssignOp
-    readable writable attr _n_pluseq: TPluseq = null
+    readable writable var _n_pluseq: TPluseq
 end
 class AMinusAssignOp
 special PAssignOp
-    readable writable attr _n_minuseq: TMinuseq = null
+    readable writable var _n_minuseq: TMinuseq
 end
 class AClosureDef
 special PClosureDef
-    readable writable attr _n_kwwith: TKwwith = null
-    readable writable attr _n_id: List[TId] = null
-    readable writable attr _n_kwdo: TKwdo = null
-    readable writable attr _n_expr: PExpr = null
+    readable writable var _n_kwwith: TKwwith
+    readable writable var _n_id: List[TId] = new List[TId]
+    readable writable var _n_kwdo: TKwdo
+    readable writable var _n_expr: nullable PExpr = null
 end
 class AQualified
 special PQualified
-    readable writable attr _n_id: List[TId] = null
-    readable writable attr _n_classid: TClassid = null
+    readable writable var _n_id: List[TId] = new List[TId]
+    readable writable var _n_classid: nullable TClassid = null
 end
 class ADoc
 special PDoc
-    readable writable attr _n_comment: List[TComment] = null
+    readable writable var _n_comment: List[TComment] = new List[TComment]
 end
 
 class Start
 special Prod
-    readable writable attr _n_base: PModule
-    readable writable attr _n_eof: EOF
+    readable writable var _n_base: nullable PModule
+    readable writable var _n_eof: EOF
 end