Difference between revisions of "NAMESPACE"

From Recital Documentation Wiki
Jump to: navigation, search
 
Line 15: Line 15:
  
 
The currently active namespace can be determined using the NAMESPACE() function.
 
The currently active namespace can be determined using the NAMESPACE() function.
 +
  
 
==Example==
 
==Example==
Line 38: Line 39:
 
</code>
 
</code>
  
 +
''output''
 
<pre>
 
<pre>
 
Namespaces:                                                                     
 
Namespaces:                                                                     

Revision as of 13:05, 5 July 2011

Purpose

Declare a namespace to which all public memory variable will be attached while the namespace is active


Syntax

NAMESPACE <namespace name>


See Also

ARRAY(), DECLARE, DIMENSION, LOCAL, NAMESPACE(), PARAMETERS, PRIVATE, PUBLIC, SET COMPATIBLE, SET STRICT, STORE


Description

The NAMESPACE command declares a namespace and creates 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.

The currently active namespace can be determined using the NAMESPACE() function.


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
?

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


Products

Recital, Recital Server