example: rosettacode 100 doors
[nit.git] / src / parser / parser_abs.nit
index d10c615..bc9b980 100644 (file)
@@ -1,6 +1,6 @@
 # Raw AST node hierarchy.
 # This file was generated by SableCC (http://www.sablecc.org/).
 # Raw AST node hierarchy.
 # This file was generated by SableCC (http://www.sablecc.org/).
-module parser_abs
+module parser_abs is no_warning("missing-doc")
 
 import location
 
 
 import location
 
@@ -52,18 +52,9 @@ end
 class TKwdo
        super Token
 end
 class TKwdo
        super Token
 end
-class TKwreadable
-       super Token
-end
-class TKwwritable
-       super Token
-end
 class TKwvar
        super Token
 end
 class TKwvar
        super Token
 end
-class TKwintern
-       super Token
-end
 class TKwextern
        super Token
 end
 class TKwextern
        super Token
 end
@@ -214,6 +205,9 @@ end
 class TStar
        super Token
 end
 class TStar
        super Token
 end
+class TStarstar
+       super Token
+end
 class TSlash
        super Token
 end
 class TSlash
        super Token
 end
@@ -317,7 +311,6 @@ class AClasskind super Prod end
 class AFormaldef super Prod end
 class ASuperclass super Prod end
 class APropdef super Prod end
 class AFormaldef super Prod end
 class ASuperclass super Prod end
 class APropdef super Prod end
-class AAble super Prod end
 class AMethid super Prod end
 class ASignature super Prod end
 class AParam super Prod end
 class AMethid super Prod end
 class ASignature super Prod end
 class AParam super Prod end
@@ -335,7 +328,6 @@ class AQualified super Prod end
 class ADoc super Prod end
 class AAnnotations super Prod end
 class AAnnotation super Prod end
 class ADoc super Prod end
 class AAnnotations super Prod end
 class AAnnotation super Prod end
-class AAtArg super Prod end
 class AAtid super Prod end
 
 class AModule
 class AAtid super Prod end
 
 class AModule
@@ -442,127 +434,45 @@ end
 class AAttrPropdef
        super APropdef
        var n_doc: nullable ADoc = null is writable
 class AAttrPropdef
        super APropdef
        var n_doc: nullable ADoc = null is writable
-       var n_readable: nullable AAble = null is writable
-       var n_writable: nullable AAble = null is writable
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        var n_kwvar: TKwvar is writable, noinit
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        var n_kwvar: TKwvar is writable, noinit
-       var n_id: nullable TAttrid = null is writable
-       var n_id2: nullable TId = null is writable
+       var n_id2: TId is writable, noinit
        var n_type: nullable AType = null is writable
        var n_type: nullable AType = null is writable
-       var n_annotations: nullable AAnnotations = null is writable
        var n_expr: nullable AExpr = null is writable
        var n_expr: nullable AExpr = null is writable
-end
-class AMethPropdef
-       super APropdef
-       var n_doc: nullable ADoc = null is writable
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_methid: AMethid is writable, noinit
-       var n_signature: ASignature is writable, noinit
-end
-class ADeferredMethPropdef
-       super APropdef
-       var n_doc: nullable ADoc = null is writable
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_kwmeth: TKwmeth is writable, noinit
-       var n_methid: AMethid is writable, noinit
-       var n_signature: ASignature is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
        var n_annotations: nullable AAnnotations = null is writable
+       var n_block: nullable AExpr = null is writable
 end
 end
-class AInternMethPropdef
-       super APropdef
-       var n_doc: nullable ADoc = null is writable
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_kwmeth: TKwmeth is writable, noinit
-       var n_methid: AMethid is writable, noinit
-       var n_signature: ASignature is writable, noinit
-end
-class AInternNewPropdef
-       super APropdef
-       var n_doc: nullable ADoc = null is writable
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_kwnew: TKwnew is writable, noinit
-       var n_methid: nullable AMethid = null is writable
-       var n_signature: ASignature is writable, noinit
-end
-class AExternMethPropdef
-       super APropdef
-       var n_doc: nullable ADoc = null is writable
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_kwmeth: TKwmeth is writable, noinit
-       var n_methid: AMethid is writable, noinit
-       var n_signature: ASignature is writable, noinit
-       var n_annotations: nullable AAnnotations = null is writable
-       var n_extern: nullable TString = null is writable
-       var n_extern_calls: nullable AExternCalls = null is writable
-       var n_extern_code_block: nullable AExternCodeBlock = null is writable
-end
-class AConcreteMethPropdef
+class AMainMethPropdef
        super APropdef
        super APropdef
-       var n_doc: nullable ADoc = null is writable
        var n_kwredef: nullable TKwredef = null is writable
        var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_kwmeth: TKwmeth is writable, noinit
-       var n_methid: AMethid is writable, noinit
-       var n_signature: ASignature is writable, noinit
-       var n_annotations: nullable AAnnotations = null is writable
        var n_block: nullable AExpr = null is writable
 end
        var n_block: nullable AExpr = null is writable
 end
-class AConcreteInitPropdef
+class ATypePropdef
        super APropdef
        var n_doc: nullable ADoc = null is writable
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        super APropdef
        var n_doc: nullable ADoc = null is writable
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
-       var n_kwinit: TKwinit is writable, noinit
-       var n_methid: nullable AMethid = null is writable
-       var n_signature: ASignature is writable, noinit
+       var n_kwtype: TKwtype is writable, noinit
+       var n_id: TClassid is writable, noinit
+       var n_type: AType is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
        var n_annotations: nullable AAnnotations = null is writable
-       var n_block: nullable AExpr = null is writable
 end
 end
-class AExternInitPropdef
+class AMethPropdef
        super APropdef
        var n_doc: nullable ADoc = null is writable
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        super APropdef
        var n_doc: nullable ADoc = null is writable
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
-       var n_kwnew: TKwnew is writable, noinit
+       var n_kwmeth: nullable TKwmeth = null is writable
+       var n_kwinit: nullable TKwinit = null is writable
+       var n_kwnew: nullable TKwnew = null is writable
        var n_methid: nullable AMethid = null is writable
        var n_signature: ASignature is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
        var n_methid: nullable AMethid = null is writable
        var n_signature: ASignature is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
-       var n_extern: nullable TString = null is writable
        var n_extern_calls: nullable AExternCalls = null is writable
        var n_extern_code_block: nullable AExternCodeBlock = null is writable
        var n_extern_calls: nullable AExternCalls = null is writable
        var n_extern_code_block: nullable AExternCodeBlock = null is writable
-end
-class AMainMethPropdef
-       super APropdef
-       var n_kwredef: nullable TKwredef = null is writable
        var n_block: nullable AExpr = null is writable
 end
        var n_block: nullable AExpr = null is writable
 end
-class ATypePropdef
-       super APropdef
-       var n_doc: nullable ADoc = null is writable
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: AVisibility is writable, noinit
-       var n_kwtype: TKwtype is writable, noinit
-       var n_id: TClassid is writable, noinit
-       var n_type: AType is writable, noinit
-       var n_annotations: nullable AAnnotations = null is writable
-end
-class AReadAble
-       super AAble
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_kwreadable: TKwreadable is writable, noinit
-end
-class AWriteAble
-       super AAble
-       var n_kwredef: nullable TKwredef = null is writable
-       var n_visibility: nullable AVisibility = null is writable
-       var n_kwwritable: TKwwritable is writable, noinit
-end
 class AIdMethid
        super AMethid
        var n_id: TId is writable, noinit
 class AIdMethid
        super AMethid
        var n_id: TId is writable, noinit
@@ -579,6 +489,10 @@ class AStarMethid
        super AMethid
        var n_star: TStar is writable, noinit
 end
        super AMethid
        var n_star: TStar is writable, noinit
 end
+class AStarstarMethid
+       super AMethid
+       var n_starstar: TStarstar is writable, noinit
+end
 class ASlashMethid
        super AMethid
        var n_slash: TSlash is writable, noinit
 class ASlashMethid
        super AMethid
        var n_slash: TSlash is writable, noinit
@@ -854,6 +768,11 @@ class AStarExpr
        var n_expr: AExpr is writable, noinit
        var n_expr2: AExpr is writable, noinit
 end
        var n_expr: AExpr is writable, noinit
        var n_expr2: AExpr is writable, noinit
 end
+class AStarstarExpr
+       super AExpr
+       var n_expr: AExpr is writable, noinit
+       var n_expr2: AExpr is writable, noinit
+end
 class ASlashExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
 class ASlashExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
@@ -988,7 +907,10 @@ class AOrangeExpr
 end
 class AArrayExpr
        super AExpr
 end
 class AArrayExpr
        super AExpr
-       var n_exprs: AExprs is writable, noinit
+       var n_obra: TObra is writable, noinit
+       var n_exprs: List[AExpr] = new List[AExpr]
+       var n_type: nullable AType = null is writable
+       var n_cbra: TCbra is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
 end
 class ASelfExpr
        var n_annotations: nullable AAnnotations = null is writable
 end
 class ASelfExpr
@@ -1098,6 +1020,23 @@ class AVarargExpr
        var n_expr: AExpr is writable, noinit
        var n_dotdotdot: TDotdotdot is writable, noinit
 end
        var n_expr: AExpr is writable, noinit
        var n_dotdotdot: TDotdotdot is writable, noinit
 end
+class ATypeExpr
+       super AExpr
+       var n_type: AType is writable, noinit
+end
+class AMethidExpr
+       super AExpr
+       var n_expr: AExpr is writable, noinit
+       var n_id: AMethid is writable, noinit
+end
+class AAtExpr
+       super AExpr
+       var n_annotations: AAnnotations is writable, noinit
+end
+class AManyExpr
+       super AExpr
+       var n_exprs: List[AExpr] = new List[AExpr]
+end
 class AListExprs
        super AExprs
        var n_exprs: List[AExpr] = new List[AExpr]
 class AListExprs
        super AExprs
        var n_exprs: List[AExpr] = new List[AExpr]
@@ -1207,22 +1146,10 @@ class AAnnotation
        var n_visibility: nullable AVisibility = null is writable
        var n_atid: AAtid is writable, noinit
        var n_opar: nullable TOpar = null is writable
        var n_visibility: nullable AVisibility = null is writable
        var n_atid: AAtid is writable, noinit
        var n_opar: nullable TOpar = null is writable
-       var n_args: List[AAtArg] = new List[AAtArg]
+       var n_args: List[AExpr] = new List[AExpr]
        var n_cpar: nullable TCpar = null is writable
        var n_annotations: nullable AAnnotations = null is writable
 end
        var n_cpar: nullable TCpar = null is writable
        var n_annotations: nullable AAnnotations = null is writable
 end
-class ATypeAtArg
-       super AAtArg
-       var n_type: AType is writable, noinit
-end
-class AExprAtArg
-       super AAtArg
-       var n_expr: AExpr is writable, noinit
-end
-class AAtAtArg
-       super AAtArg
-       var n_annotations: AAnnotations is writable, noinit
-end
 class AIdAtid
        super AAtid
        var n_id: TId is writable, noinit
 class AIdAtid
        super AAtid
        var n_id: TId is writable, noinit
@@ -1231,17 +1158,9 @@ class AKwexternAtid
        super AAtid
        var n_id: TKwextern is writable, noinit
 end
        super AAtid
        var n_id: TKwextern is writable, noinit
 end
-class AKwinternAtid
-       super AAtid
-       var n_id: TKwintern is writable, noinit
-end
-class AKwreadableAtid
-       super AAtid
-       var n_id: TKwreadable is writable, noinit
-end
-class AKwwritableAtid
+class AKwabstractAtid
        super AAtid
        super AAtid
-       var n_id: TKwwritable is writable, noinit
+       var n_id: TKwabstract is writable, noinit
 end
 class AKwimportAtid
        super AAtid
 end
 class AKwimportAtid
        super AAtid