NAMESPACE()
Purpose
Function to return the currently active namespace, if any
Syntax
NAMESPACE()
See Also
ARRAY(), DECLARE, DIMENSION, LOCAL, NAMESPACE, PARAMETERS, PRIVATE, PUBLIC, SET COMPATIBLE, SET STRICT, STORE
Description
The NAMESPACE() function returns the name of the currently active namespace, or an empty string if no namespace is active.
Namespaces are declared using the NAMESPACE command, creating a dynamic array which can be referenced by the namespace name. After declaration of a namespace, any PUBLIC variables declared are attached to that namespace, becoming members of the array. This allows the creation of multiple PUBLIC variables with the same name, provided each belongs to a separate namespace.
Issuing NAMESPACE without a <namespace name> deactivates any current namespace.
Example
procedure proc1 namespace namespace1 messagebox("Namespace is " + namespace()) public pub1 = "Public variable declared in proc1" return procedure proc2 namespace namespace2 messagebox("Namespace is " + namespace()) public pub1 = "Public variable declared in proc2" return proc1() proc2() display memory ? namespace1.pub1 ? namespace2.pub1 namespace messagebox("Namespace is " + namespace()) public pub1 = "Public variable, no namespace active" ? pub1 ?
output
Namespaces: ------------------------ NAMESPACE1 Dynamic array (refcnt 2) .PUB1 Character 'Public variable declared in proc1' NAMESPACE2 Dynamic array (refcnt 2) .PUB1 Character 'Public variable declared in proc2' Memory Variables: ------------------------ ** Total of ** 4 variables defined and 298 bytes used. Public variable declared in proc1 Public variable declared in proc2 Public variable, no namespace active
Products
Recital, Recital Server