:Namespace Statement

:Namespace <namespace name>
...
:EndNamespace

A Namespace Script may be used to define an entire namespace containing other namespaces, functions, variables and Classes.

A Namespace script must begin with a :Namespace statement and end with a :EndNamespace statement.

Sub-namespaces, which may be nested, are defined by pairs of :Namespace and :EndNamespace statements within the Namespace script.

Classes are defined by pairs of :Class and :EndClass statements within the Namespace script, and these too may be nested.

The names of Classes defined within a Namespace Script are visible both to one another and to code and expressions defined in the same script, regardless of the namespace hierarchy within it.

A Namespace script is therefore particularly useful to group together Classes that refer to one another where the use of nested classes is inappropriate.