= moduledecl? [imports]:import* [extern_bodies]:extern_code_body* [classdefs]:topdef* implicit_main_class {-> New module(moduledecl, [imports.import], [extern_bodies.extern_code_block], [classdefs.classdef,implicit_main_class.classdef])};
moduledecl
- = [doc]:no kwmodule no module_name annotation_withend [n2]:n1 {-> New moduledecl(doc.doc, kwmodule, module_name, annotation_withend.annotations)};
+ = [doc]:no redef visibility kwmodule no module_name annotation_withend [n2]:n1 {-> New moduledecl(doc.doc, redef.kwredef, visibility, kwmodule, module_name, annotation_withend.annotations)};
import
= {std} [doc]:no redef visibility kwimport no module_name annotation_withend [n2]:n1 {-> New import.std(visibility, kwimport, module_name, annotation_withend.annotations)}
module = moduledecl? [imports]:import* [extern_code_blocks]:extern_code_block* [classdefs]:classdef*;
moduledecl
- = doc? kwmodule [name]:module_name annotations?;
+ = doc? kwredef? visibility kwmodule [name]:module_name annotations?;
import = {std} visibility kwimport [name]:module_name annotations?
| {no} visibility kwimport kwend
var _n_doc: nullable ADoc = null
fun n_doc: nullable ADoc do return _n_doc
fun n_doc=(n_doc: nullable ADoc) do _n_doc = n_doc
+ var _n_kwredef: nullable TKwredef = null
+ fun n_kwredef: nullable TKwredef do return _n_kwredef
+ fun n_kwredef=(n_kwredef: nullable TKwredef) do _n_kwredef = n_kwredef
+ var _n_visibility: AVisibility
+ fun n_visibility: AVisibility do return _n_visibility
+ fun n_visibility=(n_visibility: AVisibility) do _n_visibility = n_visibility
var _n_kwmodule: TKwmodule
fun n_kwmodule: TKwmodule do return _n_kwmodule
fun n_kwmodule=(n_kwmodule: TKwmodule) do _n_kwmodule = n_kwmodule