readme: add information section
[nit.git] / src / parser / parser_abs.nit
index 538de72..ee78df0 100644 (file)
@@ -289,6 +289,9 @@ end
 class TAt
        super Token
 end
 class TAt
        super Token
 end
+class TSemi
+       super Token
+end
 class TClassid
        super Token
 end
 class TClassid
        super Token
 end
@@ -298,10 +301,7 @@ end
 class TAttrid
        super Token
 end
 class TAttrid
        super Token
 end
-class TNumber
-       super Token
-end
-class THexNumber
+class TInteger
        super Token
 end
 class TFloat
        super Token
 end
 class TFloat
@@ -353,6 +353,8 @@ class AClasskind super Prod end
 class AFormaldef super Prod end
 class APropdef super Prod end
 class AMethid super Prod end
 class AFormaldef super Prod end
 class APropdef super Prod end
 class AMethid super Prod end
+class AQid super Prod end
+class AQclassid super Prod end
 class ASignature super Prod end
 class AParam super Prod end
 class AType super Prod end
 class ASignature super Prod end
 class AParam super Prod end
 class AType super Prod end
@@ -360,6 +362,7 @@ class ALabel super Prod end
 class AExpr super Prod end
 class AExprs super Prod end
 class AAssignOp super Prod end
 class AExpr super Prod end
 class AExprs super Prod end
 class AAssignOp super Prod end
+class AForGroup super Prod end
 class AModuleName super Prod end
 class AExternCalls super Prod end
 class AExternCall super Prod end
 class AModuleName super Prod end
 class AExternCalls super Prod end
 class AExternCall super Prod end
@@ -422,8 +425,10 @@ class AStdClassdef
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        var n_classkind: AClasskind is writable, noinit
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        var n_classkind: AClasskind is writable, noinit
-       var n_id: nullable TClassid = null is writable
+       var n_qid: nullable AQclassid = null is writable
+       var n_obra: nullable TObra = null is writable
        var n_formaldefs: List[AFormaldef] = new List[AFormaldef]
        var n_formaldefs: List[AFormaldef] = new List[AFormaldef]
+       var n_cbra: nullable TCbra = null is writable
        var n_extern_code_block: nullable AExternCodeBlock = null is writable
        var n_propdefs: List[APropdef] = new List[APropdef]
        var n_kwend: TKwend is writable, noinit
        var n_extern_code_block: nullable AExternCodeBlock = null is writable
        var n_propdefs: List[APropdef] = new List[APropdef]
        var n_kwend: TKwend is writable, noinit
@@ -472,9 +477,12 @@ class AAttrPropdef
        var n_kwvar: TKwvar is writable, noinit
        var n_id2: TId is writable, noinit
        var n_type: nullable AType = null is writable
        var n_kwvar: TKwvar is writable, noinit
        var n_id2: TId is writable, noinit
        var n_type: nullable AType = null is writable
+       var n_assign: nullable TAssign = null is writable
        var n_expr: nullable AExpr = null is writable
        var n_annotations: nullable AAnnotations = null is writable
        var n_expr: nullable AExpr = null is writable
        var n_annotations: nullable AAnnotations = null is writable
+       var n_kwdo: nullable TKwdo = null is writable
        var n_block: nullable AExpr = null is writable
        var n_block: nullable AExpr = null is writable
+       var n_kwend: nullable TKwend = null is writable
 end
 class AMainMethPropdef
        super APropdef
 end
 class AMainMethPropdef
        super APropdef
@@ -487,7 +495,7 @@ class ATypePropdef
        var n_kwredef: nullable TKwredef = null is writable
        var n_visibility: AVisibility is writable, noinit
        var n_kwtype: TKwtype is writable, noinit
        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_qid: AQclassid is writable, noinit
        var n_type: AType is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
 end
        var n_type: AType is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
 end
@@ -504,7 +512,9 @@ class AMethPropdef
        var n_annotations: nullable AAnnotations = null is writable
        var n_extern_calls: nullable AExternCalls = null is writable
        var n_extern_code_block: nullable AExternCodeBlock = null is writable
        var n_annotations: nullable AAnnotations = null is writable
        var n_extern_calls: nullable AExternCalls = null is writable
        var n_extern_code_block: nullable AExternCodeBlock = null is writable
+       var n_kwdo: nullable TKwdo = null is writable
        var n_block: nullable AExpr = null is writable
        var n_block: nullable AExpr = null is writable
+       var n_kwend: nullable TKwend = null is writable
 end
 class ASuperPropdef
        super APropdef
 end
 class ASuperPropdef
        super APropdef
@@ -622,6 +632,16 @@ class ABraassignMethid
        var n_cbra: TCbra is writable, noinit
        var n_assign: TAssign is writable, noinit
 end
        var n_cbra: TCbra is writable, noinit
        var n_assign: TAssign is writable, noinit
 end
+class AQid
+       super AQid
+       var n_qualified: nullable AQualified = null is writable
+       var n_id: TId is writable, noinit
+end
+class AQclassid
+       super AQclassid
+       var n_qualified: nullable AQualified = null is writable
+       var n_id: TClassid is writable, noinit
+end
 class ASignature
        super ASignature
        var n_opar: nullable TOpar = null is writable
 class ASignature
        super ASignature
        var n_opar: nullable TOpar = null is writable
@@ -639,8 +659,10 @@ end
 class AType
        super AType
        var n_kwnullable: nullable TKwnullable = null is writable
 class AType
        super AType
        var n_kwnullable: nullable TKwnullable = null is writable
-       var n_id: TClassid is writable, noinit
+       var n_qid: AQclassid is writable, noinit
+       var n_obra: nullable TObra = null is writable
        var n_types: List[AType] = new List[AType]
        var n_types: List[AType] = new List[AType]
+       var n_cbra: nullable TCbra = null is writable
        var n_annotations: nullable AAnnotations = null is writable
 end
 class ALabel
        var n_annotations: nullable AAnnotations = null is writable
 end
 class ALabel
@@ -691,7 +713,9 @@ class AIfExpr
        super AExpr
        var n_kwif: TKwif is writable, noinit
        var n_expr: AExpr is writable, noinit
        super AExpr
        var n_kwif: TKwif is writable, noinit
        var n_expr: AExpr is writable, noinit
+       var n_kwthen: TKwthen is writable, noinit
        var n_then: nullable AExpr = null is writable
        var n_then: nullable AExpr = null is writable
+       var n_kwelse: nullable TKwelse = null is writable
        var n_else: nullable AExpr = null is writable
 end
 class AIfexprExpr
        var n_else: nullable AExpr = null is writable
 end
 class AIfexprExpr
@@ -720,8 +744,7 @@ end
 class AForExpr
        super AExpr
        var n_kwfor: TKwfor is writable, noinit
 class AForExpr
        super AExpr
        var n_kwfor: TKwfor is writable, noinit
-       var n_ids: List[TId] = new List[TId]
-       var n_expr: AExpr is writable, noinit
+       var n_groups: List[AForGroup] = new List[AForGroup]
        var n_kwdo: TKwdo is writable, noinit
        var n_block: nullable AExpr = null is writable
        var n_label: nullable ALabel = null is writable
        var n_kwdo: TKwdo is writable, noinit
        var n_block: nullable AExpr = null is writable
        var n_label: nullable ALabel = null is writable
@@ -739,6 +762,7 @@ class AAssertExpr
        var n_kwassert: TKwassert is writable, noinit
        var n_id: nullable TId = null is writable
        var n_expr: AExpr is writable, noinit
        var n_kwassert: TKwassert is writable, noinit
        var n_id: nullable TId = null is writable
        var n_expr: AExpr is writable, noinit
+       var n_kwelse: nullable TKwelse = null is writable
        var n_else: nullable AExpr = null is writable
 end
 class AOnceExpr
        var n_else: nullable AExpr = null is writable
 end
 class AOnceExpr
@@ -918,7 +942,7 @@ class ANewExpr
        super AExpr
        var n_kwnew: TKwnew is writable, noinit
        var n_type: AType is writable, noinit
        super AExpr
        var n_kwnew: TKwnew is writable, noinit
        var n_type: AType is writable, noinit
-       var n_id: nullable TId = null is writable
+       var n_qid: nullable AQid = null is writable
        var n_args: AExprs is writable, noinit
 end
 class AAttrExpr
        var n_args: AExprs is writable, noinit
 end
 class AAttrExpr
@@ -943,13 +967,13 @@ end
 class ACallExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
 class ACallExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
-       var n_id: TId is writable, noinit
+       var n_qid: AQid is writable, noinit
        var n_args: AExprs is writable, noinit
 end
 class ACallAssignExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
        var n_args: AExprs is writable, noinit
 end
 class ACallAssignExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
-       var n_id: TId is writable, noinit
+       var n_qid: AQid is writable, noinit
        var n_args: AExprs is writable, noinit
        var n_assign: TAssign is writable, noinit
        var n_value: AExpr is writable, noinit
        var n_args: AExprs is writable, noinit
        var n_assign: TAssign is writable, noinit
        var n_value: AExpr is writable, noinit
@@ -957,7 +981,7 @@ end
 class ACallReassignExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
 class ACallReassignExpr
        super AExpr
        var n_expr: AExpr is writable, noinit
-       var n_id: TId is writable, noinit
+       var n_qid: AQid is writable, noinit
        var n_args: AExprs is writable, noinit
        var n_assign_op: AAssignOp is writable, noinit
        var n_value: AExpr is writable, noinit
        var n_args: AExprs is writable, noinit
        var n_assign_op: AAssignOp is writable, noinit
        var n_value: AExpr is writable, noinit
@@ -1019,6 +1043,7 @@ class ACrangeExpr
        super AExpr
        var n_obra: TObra is writable, noinit
        var n_expr: AExpr is writable, noinit
        super AExpr
        var n_obra: TObra is writable, noinit
        var n_expr: AExpr is writable, noinit
+       var n_dotdot: TDotdot is writable, noinit
        var n_expr2: AExpr is writable, noinit
        var n_cbra: TCbra is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
        var n_expr2: AExpr is writable, noinit
        var n_cbra: TCbra is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
@@ -1027,6 +1052,7 @@ class AOrangeExpr
        super AExpr
        var n_obra: TObra is writable, noinit
        var n_expr: AExpr is writable, noinit
        super AExpr
        var n_obra: TObra is writable, noinit
        var n_expr: AExpr is writable, noinit
+       var n_dotdot: TDotdot is writable, noinit
        var n_expr2: AExpr is writable, noinit
        var n_cbra: TObra is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
        var n_expr2: AExpr is writable, noinit
        var n_cbra: TObra is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
@@ -1062,14 +1088,9 @@ class ANullExpr
        var n_kwnull: TKwnull is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
 end
        var n_kwnull: TKwnull is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
 end
-class ADecIntExpr
+class AIntegerExpr
        super AExpr
        super AExpr
-       var n_number: TNumber is writable, noinit
-       var n_annotations: nullable AAnnotations = null is writable
-end
-class AHexIntExpr
-       super AExpr
-       var n_hex_number: THexNumber is writable, noinit
+       var n_integer: TInteger is writable, noinit
        var n_annotations: nullable AAnnotations = null is writable
 end
 class AFloatExpr
        var n_annotations: nullable AAnnotations = null is writable
 end
 class AFloatExpr
@@ -1146,6 +1167,12 @@ 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 ANamedargExpr
+       super AExpr
+       var n_id: TId is writable, noinit
+       var n_assign: TAssign is writable, noinit
+       var n_expr: AExpr is writable, noinit
+end
 class ATypeExpr
        super AExpr
        var n_type: AType is writable, noinit
 class ATypeExpr
        super AExpr
        var n_type: AType is writable, noinit
@@ -1223,6 +1250,12 @@ class AGgAssignOp
        super AAssignOp
        var n_op: TGgeq is writable, noinit
 end
        super AAssignOp
        var n_op: TGgeq is writable, noinit
 end
+class AForGroup
+       super AForGroup
+       var n_ids: List[TId] = new List[TId]
+       var n_kwin: TKwin is writable, noinit
+       var n_expr: AExpr is writable, noinit
+end
 class AModuleName
        super AModuleName
        var n_quad: nullable TQuad = null is writable
 class AModuleName
        super AModuleName
        var n_quad: nullable TQuad = null is writable
@@ -1296,10 +1329,12 @@ class ADoc
 end
 class AAnnotations
        super AAnnotations
 end
 class AAnnotations
        super AAnnotations
+       var n_kwis: nullable TKwis = null is writable
        var n_at: nullable TAt = null is writable
        var n_opar: nullable TOpar = null is writable
        var n_items: List[AAnnotation] = new List[AAnnotation]
        var n_cpar: nullable TCpar = null is writable
        var n_at: nullable TAt = null is writable
        var n_opar: nullable TOpar = null is writable
        var n_items: List[AAnnotation] = new List[AAnnotation]
        var n_cpar: nullable TCpar = null is writable
+       var n_kwend: nullable TKwend = null is writable
 end
 class AAnnotation
        super AAnnotation
 end
 class AAnnotation
        super AAnnotation