# Was previously based on parser_abs.nit.
package parser_nodes
-import mmloader
+import location
# Root of the AST hierarchy
abstract class ANode
class TKwtype
special Token
end
-class TKwattr
-special Token
-end
class TKwinit
special Token
end
class TKwwhile
special Token
end
+class TKwloop
+special Token
+end
class TKwfor
special Token
end
class TKwas
special Token
end
-class TKwwith
-special Token
-end
class TKwnullable
special Token
end
class TStarship
special Token
end
+class TBang
+special Token
+end
class TClassid
special Token
end
special APropdef
readable writable var _n_kwredef: nullable TKwredef = null
readable writable var _n_visibility: AVisibility
- readable writable var _n_kwattr: nullable TKwattr = null
- readable writable var _n_kwvar: nullable TKwvar = null
+ readable writable var _n_kwvar: TKwvar
readable writable var _n_id: TAttrid
readable writable var _n_type: nullable AType = null
readable writable var _n_readable: nullable AAble = null
end
class AClosureDecl
special Prod
- readable writable var _n_kwwith: TKwwith
readable writable var _n_kwbreak: nullable TKwbreak = null
+ readable writable var _n_bang: TBang
readable writable var _n_id: TId
readable writable var _n_signature: ASignature
readable writable var _n_expr: nullable AExpr = null
end
class AReturnExpr
special AExpr
- readable writable var _n_kwreturn: TKwreturn
+ readable writable var _n_kwreturn: nullable TKwreturn = null
readable writable var _n_expr: nullable AExpr = null
end
class ALabelable
class AContinueExpr
special AExpr
special ALabelable
- readable writable var _n_kwcontinue: TKwcontinue
+ readable writable var _n_kwcontinue: nullable TKwcontinue = null
readable writable var _n_expr: nullable AExpr = null
end
class ADoExpr
readable writable var _n_kwdo: TKwdo
readable writable var _n_block: nullable AExpr = null
end
+class ALoopExpr
+special AExpr
+special ALabelable
+ readable writable var _n_kwloop: TKwloop
+ readable writable var _n_block: nullable AExpr = null
+end
class AForExpr
special AExpr
special ALabelable
end
class AClosureDef
special ALabelable
- 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_bang: TBang
+ readable writable var _n_id: AClosureId
+ readable writable var _n_ids: List[TId] = new List[TId]
+ readable writable var _n_kwdo: nullable TKwdo = null
readable writable var _n_expr: nullable AExpr = null
end
+class AClosureId
+special Prod
+end
+class ASimpleClosureId
+special AClosureId
+ readable writable var _n_id: TId
+end
+class ABreakClosureId
+special AClosureId
+ readable writable var _n_kwbreak: TKwbreak
+end
class AQualified
special Prod
readable writable var _n_id: List[TId] = new List[TId]