-# Raw AST node hierarchy.
-# This file was generated by SableCC (http://www.sablecc.org/).
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Copyright 2008-2009 Jean Privat <jean@pryen.org>
+# Copyright 2009 Jean-Sebastien Gelinas <calestar@gmail.com>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# AST nodes of the Nit language
+# Was previously based on parser_abs.nit.
package parser_nodes
-import mmloader
+import location
# Root of the AST hierarchy
abstract class ANode
- readable var _location: nullable Location
+ var _location: nullable Location
+ # Location is set during AST building. Once built, location cannon be null
+ # However, manual instanciated nodes may need mode care
+ fun location: Location do return _location.as(not null)
+ # The location of the important part of the node (identifier or whatever)
+ fun hot_location: Location do return location
end
# Ancestor of all tokens
abstract class Token
-special ANode
+ super ANode
end
# Ancestor of all productions
abstract class Prod
-special ANode
- fun location=(loc: nullable Location) do _location = loc
+ super ANode
+ fun location=(l: Location) do _location = l
end
class TEol
-special Token
+ super Token
end
class TComment
-special Token
+ super Token
end
-class TKwpackage
-special Token
+class TKwmodule
+ super Token
end
class TKwimport
-special Token
+ super Token
end
class TKwclass
-special Token
+ super Token
end
class TKwabstract
-special Token
+ super Token
end
class TKwinterface
-special Token
+ super Token
end
-class TKwuniversal
-special Token
+class TKwenum
+ super Token
end
class TKwspecial
-special Token
+ super Token
end
class TKwend
-special Token
+ super Token
end
class TKwmeth
-special Token
+ super Token
end
class TKwtype
-special Token
-end
-class TKwattr
-special Token
+ super Token
end
class TKwinit
-special Token
+ super Token
end
class TKwredef
-special Token
+ super Token
end
class TKwis
-special Token
+ super Token
end
class TKwdo
-special Token
+ super Token
end
class TKwreadable
-special Token
+ super Token
end
class TKwwritable
-special Token
+ super Token
end
class TKwvar
-special Token
+ super Token
end
class TKwintern
-special Token
+ super Token
end
class TKwextern
-special Token
+ super Token
end
class TKwprotected
-special Token
+ super Token
end
class TKwprivate
-special Token
+ super Token
end
class TKwintrude
-special Token
+ super Token
end
class TKwif
-special Token
+ super Token
end
class TKwthen
-special Token
+ super Token
end
class TKwelse
-special Token
+ super Token
end
class TKwwhile
-special Token
+ super Token
+end
+class TKwloop
+ super Token
end
class TKwfor
-special Token
+ super Token
end
class TKwin
-special Token
+ super Token
end
class TKwand
-special Token
+ super Token
end
class TKwor
-special Token
+ super Token
end
class TKwnot
-special Token
+ super Token
end
class TKwreturn
-special Token
+ super Token
end
class TKwcontinue
-special Token
+ super Token
end
class TKwbreak
-special Token
+ super Token
end
class TKwabort
-special Token
+ super Token
end
class TKwassert
-special Token
+ super Token
end
class TKwnew
-special Token
+ super Token
end
class TKwisa
-special Token
+ super Token
end
class TKwonce
-special Token
+ super Token
end
class TKwsuper
-special Token
+ super Token
end
class TKwself
-special Token
+ super Token
end
class TKwtrue
-special Token
+ super Token
end
class TKwfalse
-special Token
+ super Token
end
class TKwnull
-special Token
+ super Token
end
class TKwas
-special Token
-end
-class TKwwith
-special Token
+ super Token
end
class TKwnullable
-special Token
+ super Token
end
class TKwisset
-special Token
+ super Token
+end
+class TKwlabel
+ super Token
end
class TOpar
-special Token
+ super Token
end
class TCpar
-special Token
+ super Token
end
class TObra
-special Token
+ super Token
end
class TCbra
-special Token
+ super Token
end
class TComma
-special Token
+ super Token
end
class TColumn
-special Token
+ super Token
end
class TQuad
-special Token
+ super Token
end
class TAssign
-special Token
+ super Token
end
class TPluseq
-special Token
+ super Token
end
class TMinuseq
-special Token
+ super Token
end
class TDotdotdot
-special Token
+ super Token
end
class TDotdot
-special Token
+ super Token
end
class TDot
-special Token
+ super Token
end
class TPlus
-special Token
+ super Token
end
class TMinus
-special Token
+ super Token
end
class TStar
-special Token
+ super Token
end
class TSlash
-special Token
+ super Token
end
class TPercent
-special Token
+ super Token
end
class TEq
-special Token
+ super Token
end
class TNe
-special Token
+ super Token
end
class TLt
-special Token
+ super Token
end
class TLe
-special Token
+ super Token
+end
+class TLl
+ super Token
end
class TGt
-special Token
+ super Token
end
class TGe
-special Token
+ super Token
+end
+class TGg
+ super Token
end
class TStarship
-special Token
+ super Token
+end
+class TBang
+ super Token
end
class TClassid
-special Token
+ super Token
end
class TId
-special Token
+ super Token
end
class TAttrid
-special Token
+ super Token
end
class TNumber
-special Token
+ super Token
end
class TFloat
-special Token
+ super Token
end
class TChar
-special Token
+ super Token
end
class TString
-special Token
+ super Token
end
class TStartString
-special Token
+ super Token
end
class TMidString
-special Token
+ super Token
end
class TEndString
-special Token
+ super Token
end
-class EOF
-special Token
+class EOF
+ super Token
private init noinit do end
end
class AError
-special EOF
+ super EOF
private init noinit do end
end
class AModule
-special Prod
- readable writable var _n_packagedecl: nullable APackagedecl = null
- readable writable var _n_imports: List[AImport] = new List[AImport]
- readable writable var _n_classdefs: List[AClassdef] = new List[AClassdef]
-end
-class APackagedecl
-special Prod
- readable writable var _n_doc: nullable ADoc = null
- readable writable var _n_kwpackage: TKwpackage
- readable writable var _n_id: TId
-end
-class AImport special Prod end
+ super Prod
+ readable var _n_moduledecl: nullable AModuledecl = null
+ readable var _n_imports: List[AImport] = new List[AImport]
+ readable var _n_classdefs: List[AClassdef] = new List[AClassdef]
+end
+class AModuledecl
+ super Prod
+ readable var _n_doc: nullable ADoc = null
+ readable var _n_kwmodule: TKwmodule
+ readable var _n_name: AModuleName
+end
+class AImport super Prod end
class AStdImport
-special AImport
- readable writable var _n_visibility: AVisibility
- readable writable var _n_kwimport: TKwimport
- readable writable var _n_id: TId
+ super AImport
+ readable var _n_visibility: AVisibility
+ readable var _n_kwimport: TKwimport
+ readable var _n_name: AModuleName
end
class ANoImport
-special AImport
- readable writable var _n_visibility: AVisibility
- readable writable var _n_kwimport: TKwimport
- readable writable var _n_kwend: TKwend
+ super AImport
+ readable var _n_visibility: AVisibility
+ readable var _n_kwimport: TKwimport
+ readable var _n_kwend: TKwend
end
-class AVisibility special Prod end
+class AVisibility super Prod end
class APublicVisibility
-special AVisibility
+ super AVisibility
end
class APrivateVisibility
-special AVisibility
- readable writable var _n_kwprivate: TKwprivate
+ super AVisibility
+ readable var _n_kwprivate: TKwprivate
end
class AProtectedVisibility
-special AVisibility
- readable writable var _n_kwprotected: TKwprotected
+ super AVisibility
+ readable var _n_kwprotected: TKwprotected
end
class AIntrudeVisibility
-special AVisibility
- readable writable var _n_kwintrude: TKwintrude
+ super AVisibility
+ readable var _n_kwintrude: TKwintrude
end
-class AClassdef special Prod end
+class AClassdef super Prod end
class AStdClassdef
-special AClassdef
- readable writable var _n_doc: nullable ADoc = null
- readable writable var _n_kwredef: nullable TKwredef = null
- readable writable var _n_visibility: AVisibility
- readable writable var _n_classkind: AClasskind
- readable writable var _n_id: nullable TClassid = null
- readable writable var _n_formaldefs: List[AFormaldef] = new List[AFormaldef]
- readable writable var _n_superclasses: List[ASuperclass] = new List[ASuperclass]
- readable writable var _n_propdefs: List[APropdef] = new List[APropdef]
+ super AClassdef
+ readable var _n_doc: nullable ADoc = null
+ readable var _n_kwredef: nullable TKwredef = null
+ readable var _n_visibility: AVisibility
+ readable var _n_classkind: AClasskind
+ readable var _n_id: nullable TClassid = null
+ readable var _n_formaldefs: List[AFormaldef] = new List[AFormaldef]
+ readable var _n_superclasses: List[ASuperclass] = new List[ASuperclass]
+ readable var _n_propdefs: List[APropdef] = new List[APropdef]
+ redef fun hot_location do return n_id.location
end
class ATopClassdef
-special AClassdef
- readable writable var _n_propdefs: List[APropdef] = new List[APropdef]
+ super AClassdef
+ readable var _n_propdefs: List[APropdef] = new List[APropdef]
end
class AMainClassdef
-special AClassdef
- readable writable var _n_propdefs: List[APropdef] = new List[APropdef]
+ super AClassdef
+ readable var _n_propdefs: List[APropdef] = new List[APropdef]
end
-class AClasskind special Prod end
+class AClasskind super Prod end
class AConcreteClasskind
-special AClasskind
- readable writable var _n_kwclass: TKwclass
+ super AClasskind
+ readable var _n_kwclass: TKwclass
end
class AAbstractClasskind
-special AClasskind
- readable writable var _n_kwabstract: TKwabstract
- readable writable var _n_kwclass: TKwclass
+ super AClasskind
+ readable var _n_kwabstract: TKwabstract
+ readable var _n_kwclass: TKwclass
end
class AInterfaceClasskind
-special AClasskind
- readable writable var _n_kwinterface: TKwinterface
+ super AClasskind
+ readable var _n_kwinterface: TKwinterface
end
-class AUniversalClasskind
-special AClasskind
- readable writable var _n_kwuniversal: TKwuniversal
+class AEnumClasskind
+ super AClasskind
+ readable var _n_kwenum: TKwenum
end
class AFormaldef
-special Prod
- readable writable var _n_id: TClassid
- readable writable var _n_type: nullable AType = null
+ super Prod
+ readable var _n_id: TClassid
+ readable var _n_type: nullable AType = null
end
class ASuperclass
-special Prod
- readable writable var _n_kwspecial: TKwspecial
- readable writable var _n_type: AType
+ super Prod
+ readable var _n_kwspecial: nullable TKwspecial = null
+ readable var _n_kwsuper: nullable TKwsuper = null
+ readable var _n_type: AType
end
-class APropdef special Prod
- readable writable var _n_doc: nullable ADoc = null
+class APropdef super Prod
+ readable var _n_doc: nullable ADoc = null
end
class AAttrPropdef
-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_id: TAttrid
- readable writable var _n_type: nullable AType = null
- readable writable var _n_readable: nullable AAble = null
- readable writable var _n_writable: nullable AAble = null
- readable writable var _n_expr: nullable AExpr = null
+ super APropdef
+ readable var _n_kwredef: nullable TKwredef = null
+ readable var _n_visibility: AVisibility
+ readable var _n_kwvar: TKwvar
+ readable var _n_id: nullable TAttrid
+ readable var _n_id2: nullable TId
+ readable var _n_type: nullable AType = null
+ readable var _n_readable: nullable AAble = null
+ readable var _n_writable: nullable AAble = null
+ readable var _n_expr: nullable AExpr = null
+ redef fun hot_location
+ do
+ if n_id != null then return n_id.location else return n_id2.location
+ end
end
class AMethPropdef
-special APropdef
- readable writable var _n_kwredef: nullable TKwredef = null
- readable writable var _n_visibility: nullable AVisibility
- readable writable var _n_methid: nullable AMethid = null
- readable writable var _n_signature: nullable ASignature
+ super APropdef
+ readable var _n_kwredef: nullable TKwredef = null
+ readable var _n_visibility: nullable AVisibility
+ readable var _n_methid: nullable AMethid = null
+ readable var _n_signature: nullable ASignature
+ redef fun hot_location
+ do
+ if n_methid != null then
+ return n_methid.location
+ else
+ return location
+ end
+ end
end
class ADeferredMethPropdef
-special AMethPropdef
- readable writable var _n_kwmeth: TKwmeth
+ super AMethPropdef
+ readable var _n_kwmeth: TKwmeth
end
class AInternMethPropdef
-special AMethPropdef
- readable writable var _n_kwmeth: TKwmeth
+ super AMethPropdef
+ readable var _n_kwmeth: TKwmeth
end
class AExternMethPropdef
-special AMethPropdef
- readable writable var _n_kwmeth: TKwmeth
- readable writable var _n_extern: nullable TString = null
+ super AMethPropdef
+ readable var _n_kwmeth: TKwmeth
+ readable var _n_extern: nullable TString = null
end
class AConcreteMethPropdef
-special AMethPropdef
- readable writable var _n_kwmeth: nullable TKwmeth
- readable writable var _n_block: nullable AExpr = null
+ super AMethPropdef
+ readable var _n_kwmeth: nullable TKwmeth
+ readable var _n_block: nullable AExpr = null
end
class AConcreteInitPropdef
-special AConcreteMethPropdef
- readable writable var _n_kwinit: TKwinit
+ super AConcreteMethPropdef
+ readable var _n_kwinit: TKwinit
+ redef fun hot_location do return n_kwinit.location
end
class AMainMethPropdef
-special AConcreteMethPropdef
+ super AConcreteMethPropdef
end
class ATypePropdef
-special APropdef
- readable writable var _n_kwredef: nullable TKwredef = null
- readable writable var _n_visibility: AVisibility
- readable writable var _n_kwtype: TKwtype
- readable writable var _n_id: TClassid
- readable writable var _n_type: AType
+ super APropdef
+ readable var _n_kwredef: nullable TKwredef = null
+ readable var _n_visibility: AVisibility
+ readable var _n_kwtype: TKwtype
+ readable var _n_id: TClassid
+ readable var _n_type: AType
end
-class AAble special Prod
- readable writable var _n_kwredef: nullable TKwredef = null
+class AAble super Prod
+ readable var _n_visibility: nullable AVisibility = null
+ readable var _n_kwredef: nullable TKwredef = null
end
class AReadAble
-special AAble
- readable writable var _n_kwreadable: TKwreadable
+ super AAble
+ readable var _n_kwreadable: TKwreadable
end
class AWriteAble
-special AAble
- readable writable var _n_kwwritable: TKwwritable
+ super AAble
+ readable var _n_kwwritable: TKwwritable
end
-class AMethid special Prod end
+class AMethid super Prod end
class AIdMethid
-special AMethid
- readable writable var _n_id: TId
+ super AMethid
+ readable var _n_id: TId
end
class APlusMethid
-special AMethid
- readable writable var _n_plus: TPlus
+ super AMethid
+ readable var _n_plus: TPlus
end
class AMinusMethid
-special AMethid
- readable writable var _n_minus: TMinus
+ super AMethid
+ readable var _n_minus: TMinus
end
class AStarMethid
-special AMethid
- readable writable var _n_star: TStar
+ super AMethid
+ readable var _n_star: TStar
end
class ASlashMethid
-special AMethid
- readable writable var _n_slash: TSlash
+ super AMethid
+ readable var _n_slash: TSlash
end
class APercentMethid
-special AMethid
- readable writable var _n_percent: TPercent
+ super AMethid
+ readable var _n_percent: TPercent
end
class AEqMethid
-special AMethid
- readable writable var _n_eq: TEq
+ super AMethid
+ readable var _n_eq: TEq
end
class ANeMethid
-special AMethid
- readable writable var _n_ne: TNe
+ super AMethid
+ readable var _n_ne: TNe
end
class ALeMethid
-special AMethid
- readable writable var _n_le: TLe
+ super AMethid
+ readable var _n_le: TLe
end
class AGeMethid
-special AMethid
- readable writable var _n_ge: TGe
+ super AMethid
+ readable var _n_ge: TGe
end
class ALtMethid
-special AMethid
- readable writable var _n_lt: TLt
+ super AMethid
+ readable var _n_lt: TLt
end
class AGtMethid
-special AMethid
- readable writable var _n_gt: TGt
+ super AMethid
+ readable var _n_gt: TGt
+end
+class ALlMethid
+ super AMethid
+ readable writable var _n_ll: TLl
+end
+class AGgMethid
+ super AMethid
+ readable writable var _n_gg: TGg
end
class ABraMethid
-special AMethid
- readable writable var _n_obra: TObra
- readable writable var _n_cbra: TCbra
+ super AMethid
+ readable var _n_obra: TObra
+ readable var _n_cbra: TCbra
end
class AStarshipMethid
-special AMethid
- readable writable var _n_starship: TStarship
+ super AMethid
+ readable var _n_starship: TStarship
end
class AAssignMethid
-special AMethid
- readable writable var _n_id: TId
- readable writable var _n_assign: TAssign
+ super AMethid
+ readable var _n_id: TId
+ readable var _n_assign: TAssign
end
class ABraassignMethid
-special AMethid
- readable writable var _n_obra: TObra
- readable writable var _n_cbra: TCbra
- readable writable var _n_assign: TAssign
+ super AMethid
+ readable var _n_obra: TObra
+ readable var _n_cbra: TCbra
+ readable var _n_assign: TAssign
end
class ASignature
-special Prod
- readable writable var _n_params: List[AParam] = new List[AParam]
- readable writable var _n_type: nullable AType = null
- readable writable var _n_closure_decls: List[AClosureDecl] = new List[AClosureDecl]
+ super Prod
+ readable var _n_params: List[AParam] = new List[AParam]
+ readable var _n_type: nullable AType = null
+ readable var _n_closure_decls: List[AClosureDecl] = new List[AClosureDecl]
end
class AParam
-special Prod
- readable writable var _n_id: TId
- readable writable var _n_type: nullable AType = null
- readable writable var _n_dotdotdot: nullable TDotdotdot = null
+ super Prod
+ readable var _n_id: TId
+ readable var _n_type: nullable AType = null
+ readable var _n_dotdotdot: nullable TDotdotdot = null
end
class AClosureDecl
-special Prod
- 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: ASignature
- readable writable var _n_expr: nullable AExpr = null
+ super Prod
+ readable var _n_kwbreak: nullable TKwbreak = null
+ readable var _n_bang: TBang
+ readable var _n_id: TId
+ readable var _n_signature: ASignature
+ readable var _n_expr: nullable AExpr = null
end
class AType
-special Prod
- readable writable var _n_kwnullable: nullable TKwnullable = null
- readable writable var _n_id: TClassid
- readable writable var _n_types: List[AType] = new List[AType]
+ super Prod
+ readable var _n_kwnullable: nullable TKwnullable = null
+ readable var _n_id: TClassid
+ readable var _n_types: List[AType] = new List[AType]
end
-class AExpr special Prod end
+class ALabel
+ super Prod
+ readable var _n_kwlabel: TKwlabel
+ readable var _n_id: TId
+end
+class AExpr super Prod end
class ABlockExpr
-special AExpr
- readable writable var _n_expr: List[AExpr] = new List[AExpr]
+ super AExpr
+ readable var _n_expr: List[AExpr] = new List[AExpr]
end
class AVardeclExpr
-special AExpr
- readable writable var _n_kwvar: TKwvar
- readable writable var _n_id: TId
- readable writable var _n_type: nullable AType = null
- readable writable var _n_assign: nullable TAssign = null
- readable writable var _n_expr: nullable AExpr = null
+ super AExpr
+ readable var _n_kwvar: TKwvar
+ readable var _n_id: TId
+ readable var _n_type: nullable AType = null
+ readable var _n_assign: nullable TAssign = null
+ readable var _n_expr: nullable AExpr = null
end
class AReturnExpr
-special AExpr
- readable writable var _n_kwreturn: TKwreturn
- readable writable var _n_expr: nullable AExpr = null
+ super AExpr
+ readable var _n_kwreturn: nullable TKwreturn = null
+ readable var _n_expr: nullable AExpr = null
+end
+class ALabelable
+ super Prod
+ readable var _n_label: nullable ALabel = null
end
class ABreakExpr
-special AExpr
- readable writable var _n_kwbreak: TKwbreak
- readable writable var _n_expr: nullable AExpr = null
+ super AExpr
+ super ALabelable
+ readable var _n_kwbreak: TKwbreak
+ readable var _n_expr: nullable AExpr = null
end
class AAbortExpr
-special AExpr
- readable writable var _n_kwabort: TKwabort
+ super AExpr
+ readable var _n_kwabort: TKwabort
end
class AContinueExpr
-special AExpr
- readable writable var _n_kwcontinue: TKwcontinue
- readable writable var _n_expr: nullable AExpr = null
+ super AExpr
+ super ALabelable
+ readable var _n_kwcontinue: nullable TKwcontinue = null
+ readable var _n_expr: nullable AExpr = null
end
class ADoExpr
-special AExpr
- readable writable var _n_kwdo: TKwdo
- readable writable var _n_block: nullable AExpr = null
+ super AExpr
+ super ALabelable
+ readable var _n_kwdo: TKwdo
+ readable var _n_block: nullable AExpr = null
end
class AIfExpr
-special AExpr
- readable writable var _n_kwif: TKwif
- readable writable var _n_expr: AExpr
- readable writable var _n_then: nullable AExpr = null
- readable writable var _n_else: nullable AExpr = null
+ super AExpr
+ readable var _n_kwif: TKwif
+ readable var _n_expr: AExpr
+ readable var _n_then: nullable AExpr = null
+ readable var _n_else: nullable AExpr = null
end
class AIfexprExpr
-special AExpr
- readable writable var _n_kwif: TKwif
- readable writable var _n_expr: AExpr
- readable writable var _n_kwthen: TKwthen
- readable writable var _n_then: AExpr
- readable writable var _n_kwelse: TKwelse
- readable writable var _n_else: AExpr
+ super AExpr
+ readable var _n_kwif: TKwif
+ readable var _n_expr: AExpr
+ readable var _n_kwthen: TKwthen
+ readable var _n_then: AExpr
+ readable var _n_kwelse: TKwelse
+ readable var _n_else: AExpr
end
class AWhileExpr
-special AExpr
- readable writable var _n_kwwhile: TKwwhile
- readable writable var _n_expr: AExpr
- readable writable var _n_kwdo: TKwdo
- readable writable var _n_block: nullable AExpr = null
+ super AExpr
+ super ALabelable
+ readable var _n_kwwhile: TKwwhile
+ readable var _n_expr: AExpr
+ readable var _n_kwdo: TKwdo
+ readable var _n_block: nullable AExpr = null
+end
+class ALoopExpr
+ super AExpr
+ super ALabelable
+ readable var _n_kwloop: TKwloop
+ readable var _n_block: nullable AExpr = null
end
class AForExpr
-special AExpr
- readable writable var _n_kwfor: TKwfor
- readable writable var _n_id: TId
- readable writable var _n_expr: AExpr
- readable writable var _n_kwdo: TKwdo
- readable writable var _n_block: nullable AExpr = null
+ super AExpr
+ super ALabelable
+ readable var _n_kwfor: TKwfor
+ readable var _n_ids: List[TId] = new List[TId]
+ readable var _n_expr: AExpr
+ readable var _n_kwdo: TKwdo
+ readable var _n_block: nullable AExpr = null
end
class AAssertExpr
-special AExpr
- readable writable var _n_kwassert: TKwassert
- readable writable var _n_id: nullable TId = null
- readable writable var _n_expr: AExpr
+ super AExpr
+ readable var _n_kwassert: TKwassert
+ readable var _n_id: nullable TId = null
+ readable var _n_expr: AExpr
+ readable var _n_else: nullable AExpr = null
end
class AAssignFormExpr
-special AExpr
- readable writable var _n_assign: TAssign
- readable writable var _n_value: AExpr
+ super AExpr
+ readable var _n_assign: TAssign
+ readable var _n_value: AExpr
end
class AReassignFormExpr
-special AExpr
- readable writable var _n_assign_op: AAssignOp
- readable writable var _n_value: AExpr
+ super AExpr
+ readable var _n_assign_op: AAssignOp
+ readable var _n_value: AExpr
end
class AOnceExpr
-special AProxyExpr
- readable writable var _n_kwonce: TKwonce
+ super AProxyExpr
+ readable var _n_kwonce: TKwonce
end
class ASendExpr
-special AExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
+ super AExpr
+ readable var _n_expr: AExpr
+ readable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
end
class ABinopExpr
-special ASendExpr
- readable writable var _n_expr2: AExpr
+ super ASendExpr
+ readable var _n_expr2: AExpr
end
class ABoolExpr
-special AExpr
+ super AExpr
end
class AOrExpr
-special ABoolExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_expr2: AExpr
+ super ABoolExpr
+ readable var _n_expr: AExpr
+ readable var _n_expr2: AExpr
end
class AAndExpr
-special ABoolExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_expr2: AExpr
+ super ABoolExpr
+ readable var _n_expr: AExpr
+ readable var _n_expr2: AExpr
+end
+class AOrElseExpr
+ super ABoolExpr
+ readable var _n_expr: AExpr
+ readable var _n_expr2: AExpr
end
class ANotExpr
-special ABoolExpr
- readable writable var _n_kwnot: TKwnot
- readable writable var _n_expr: AExpr
+ super ABoolExpr
+ readable var _n_kwnot: TKwnot
+ readable var _n_expr: AExpr
end
class AEqExpr
-special ABinopExpr
+ super ABinopExpr
end
class AEeExpr
-special ABoolExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_expr2: AExpr
+ super ABoolExpr
+ readable var _n_expr: AExpr
+ readable var _n_expr2: AExpr
end
class ANeExpr
-special ABinopExpr
+ super ABinopExpr
end
class ALtExpr
-special ABinopExpr
+ super ABinopExpr
end
class ALeExpr
-special ABinopExpr
+ super ABinopExpr
+end
+class ALlExpr
+ super ABinopExpr
end
class AGtExpr
-special ABinopExpr
+ super ABinopExpr
end
class AGeExpr
-special ABinopExpr
+ super ABinopExpr
+end
+class AGgExpr
+ super ABinopExpr
end
class AIsaExpr
-special ABoolExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_type: AType
+ super ABoolExpr
+ readable var _n_expr: AExpr
+ readable var _n_type: AType
end
class APlusExpr
-special ABinopExpr
+ super ABinopExpr
end
class AMinusExpr
-special ABinopExpr
+ super ABinopExpr
end
class AStarshipExpr
-special ABinopExpr
+ super ABinopExpr
end
class AStarExpr
-special ABinopExpr
+ super ABinopExpr
end
class ASlashExpr
-special ABinopExpr
+ super ABinopExpr
end
class APercentExpr
-special ABinopExpr
+ super ABinopExpr
end
class AUminusExpr
-special ASendExpr
- readable writable var _n_minus: TMinus
+ super ASendExpr
+ readable var _n_minus: TMinus
end
class ANewExpr
-special AExpr
- readable writable var _n_kwnew: TKwnew
- readable writable var _n_type: AType
- readable writable var _n_id: nullable TId = null
- readable writable var _n_args: List[AExpr] = new List[AExpr]
+ super AExpr
+ readable var _n_kwnew: TKwnew
+ readable var _n_type: AType
+ readable var _n_id: nullable TId = null
+ readable var _n_args: List[AExpr] = new List[AExpr]
end
class AAttrFormExpr
-special AExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_id: TAttrid
+ super AExpr
+ readable var _n_expr: AExpr
+ readable var _n_id: TAttrid
end
class AAttrExpr
-special AAttrFormExpr
+ super AAttrFormExpr
end
class AAttrAssignExpr
-special AAttrFormExpr
-special AAssignFormExpr
+ super AAttrFormExpr
+ super AAssignFormExpr
end
class ACallFormExpr
-special ASendExpr
- readable writable var _n_id: TId
- readable writable var _n_args: List[AExpr] = new List[AExpr]
+ super ASendExpr
+ readable var _n_id: TId
+ readable var _n_args: List[AExpr] = new List[AExpr]
end
class AAttrReassignExpr
-special AExpr
-special AAttrFormExpr
-special AReassignFormExpr
+ super AExpr
+ super AAttrFormExpr
+ super AReassignFormExpr
end
class ACallExpr
-special ACallFormExpr
+ super ACallFormExpr
end
class ACallAssignExpr
-special ACallFormExpr
-special AAssignFormExpr
+ super ACallFormExpr
+ super AAssignFormExpr
end
class ACallReassignExpr
-special AExpr
-special ACallFormExpr
-special AReassignFormExpr
+ super AExpr
+ super ACallFormExpr
+ super AReassignFormExpr
end
class ASuperExpr
-special AExpr
- readable writable var _n_qualified: nullable AQualified = null
- readable writable var _n_kwsuper: TKwsuper
- readable writable var _n_args: List[AExpr] = new List[AExpr]
+ super AExpr
+ readable var _n_qualified: nullable AQualified = null
+ readable var _n_kwsuper: TKwsuper
+ readable var _n_args: List[AExpr] = new List[AExpr]
end
class AInitExpr
-special ASendExpr
- readable writable var _n_kwinit: TKwinit
- readable writable var _n_args: List[AExpr] = new List[AExpr]
+ super ASendExpr
+ readable var _n_kwinit: TKwinit
+ readable var _n_args: List[AExpr] = new List[AExpr]
end
class ABraFormExpr
-special ASendExpr
- readable writable var _n_args: List[AExpr] = new List[AExpr]
+ super ASendExpr
+ readable var _n_args: List[AExpr] = new List[AExpr]
end
class ABraExpr
-special ABraFormExpr
+ super ABraFormExpr
end
class ABraAssignExpr
-special ABraFormExpr
-special AAssignFormExpr
+ super ABraFormExpr
+ super AAssignFormExpr
end
class AVarFormExpr
-special AExpr
- readable writable var _n_id: TId
+ super AExpr
+ readable var _n_id: TId
end
class ABraReassignExpr
-special ABraFormExpr
-special AReassignFormExpr
+ super ABraFormExpr
+ super AReassignFormExpr
end
class AClosureCallExpr
-special AExpr
- readable writable var _n_id: TId
- readable writable var _n_args: List[AExpr] = new List[AExpr]
- readable writable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
+ super AExpr
+ readable var _n_id: TId
+ readable var _n_args: List[AExpr] = new List[AExpr]
+ readable var _n_closure_defs: List[AClosureDef] = new List[AClosureDef]
end
class AVarExpr
-special AVarFormExpr
+ super AVarFormExpr
end
class AVarAssignExpr
-special AVarFormExpr
-special AAssignFormExpr
+ super AVarFormExpr
+ super AAssignFormExpr
end
class AVarReassignExpr
-special AVarFormExpr
-special AReassignFormExpr
+ super AVarFormExpr
+ super AReassignFormExpr
end
class ARangeExpr
-special AExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_expr2: AExpr
+ super AExpr
+ readable var _n_expr: AExpr
+ readable var _n_expr2: AExpr
end
class ACrangeExpr
-special ARangeExpr
+ super ARangeExpr
end
class AOrangeExpr
-special ARangeExpr
+ super ARangeExpr
end
class AArrayExpr
-special AExpr
- readable writable var _n_exprs: List[AExpr] = new List[AExpr]
+ super AExpr
+ readable var _n_exprs: List[AExpr] = new List[AExpr]
end
class ASelfExpr
-special AExpr
- readable writable var _n_kwself: nullable TKwself
+ super AExpr
+ readable var _n_kwself: nullable TKwself
end
class AImplicitSelfExpr
-special ASelfExpr
+ super ASelfExpr
end
class ATrueExpr
-special ABoolExpr
- readable writable var _n_kwtrue: TKwtrue
+ super ABoolExpr
+ readable var _n_kwtrue: TKwtrue
end
class AFalseExpr
-special ABoolExpr
- readable writable var _n_kwfalse: TKwfalse
+ super ABoolExpr
+ readable var _n_kwfalse: TKwfalse
end
class ANullExpr
-special AExpr
- readable writable var _n_kwnull: TKwnull
+ super AExpr
+ readable var _n_kwnull: TKwnull
end
class AIntExpr
-special AExpr
- readable writable var _n_number: TNumber
+ super AExpr
+ readable var _n_number: TNumber
end
class AFloatExpr
-special AExpr
- readable writable var _n_float: TFloat
+ super AExpr
+ readable var _n_float: TFloat
end
class ACharExpr
-special AExpr
- readable writable var _n_char: TChar
+ super AExpr
+ readable var _n_char: TChar
end
class AStringFormExpr
-special AExpr
+ super AExpr
end
class AStringExpr
-special AStringFormExpr
- readable writable var _n_string: TString
+ super AStringFormExpr
+ readable var _n_string: TString
end
class AStartStringExpr
-special AStringFormExpr
- readable writable var _n_string: TStartString
+ super AStringFormExpr
+ readable var _n_string: TStartString
end
class AMidStringExpr
-special AStringFormExpr
- readable writable var _n_string: TMidString
+ super AStringFormExpr
+ readable var _n_string: TMidString
end
class AEndStringExpr
-special AStringFormExpr
- readable writable var _n_string: TEndString
+ super AStringFormExpr
+ readable var _n_string: TEndString
end
class ASuperstringExpr
-special AExpr
- readable writable var _n_exprs: List[AExpr] = new List[AExpr]
+ super AExpr
+ readable var _n_exprs: List[AExpr] = new List[AExpr]
end
class AParExpr
-special AProxyExpr
+ super AProxyExpr
end
class AProxyExpr
-special AExpr
- readable writable var _n_expr: AExpr
+ super AExpr
+ readable var _n_expr: AExpr
end
class AAsCastExpr
-special AExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_kwas: TKwas
- readable writable var _n_type: AType
+ super AExpr
+ readable var _n_expr: AExpr
+ readable var _n_kwas: TKwas
+ readable var _n_type: AType
end
class AAsNotnullExpr
-special AExpr
- readable writable var _n_expr: AExpr
- readable writable var _n_kwas: TKwas
- readable writable var _n_kwnot: TKwnot
- readable writable var _n_kwnull: TKwnull
+ super AExpr
+ readable var _n_expr: AExpr
+ readable var _n_kwas: TKwas
+ readable var _n_kwnot: TKwnot
+ readable var _n_kwnull: TKwnull
end
class AIssetAttrExpr
-special AAttrFormExpr
- readable writable var _n_kwisset: TKwisset
+ super AAttrFormExpr
+ readable var _n_kwisset: TKwisset
end
-class AAssignOp special Prod end
+class AAssignOp super Prod end
class APlusAssignOp
-special AAssignOp
- readable writable var _n_pluseq: TPluseq
+ super AAssignOp
+ readable var _n_pluseq: TPluseq
end
class AMinusAssignOp
-special AAssignOp
- readable writable var _n_minuseq: TMinuseq
+ super AAssignOp
+ readable var _n_minuseq: TMinuseq
end
class AClosureDef
+ super ALabelable
+ readable var _n_bang: TBang
+ readable var _n_id: AClosureId
+ readable var _n_ids: List[TId] = new List[TId]
+ readable var _n_kwdo: nullable TKwdo = null
+ readable var _n_expr: nullable AExpr = null
+end
+class AClosureId
+ super Prod
+end
+class ASimpleClosureId
+ super AClosureId
+ readable var _n_id: TId
+end
+class ABreakClosureId
+ super AClosureId
+ readable var _n_kwbreak: TKwbreak
+end
+class AModuleName
special Prod
- 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 AExpr = null
+ readable var _n_quad: nullable TQuad = null
+ readable var _n_path: List[TId] = new List[TId]
+ readable var _n_id: TId
end
class AQualified
-special Prod
- readable writable var _n_id: List[TId] = new List[TId]
- readable writable var _n_classid: nullable TClassid = null
+ super Prod
+ readable var _n_quad: nullable TQuad = null
+ readable var _n_id: List[TId] = new List[TId]
+ readable var _n_classid: nullable TClassid = null
end
class ADoc
-special Prod
- readable writable var _n_comment: List[TComment] = new List[TComment]
+ super Prod
+ readable var _n_comment: List[TComment] = new List[TComment]
end
class Start
-special Prod
- readable writable var _n_base: nullable AModule
- readable writable var _n_eof: EOF
+ super Prod
+ readable var _n_base: nullable AModule
+ readable var _n_eof: EOF
end