Namespace
Associated Constructors
New Namespace
Syntax: ns = New Namespace( <name>, <list of expressions> )
Description: Creates a namespace where all functions and variables created are defined only within the specified name.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
Item Messages
Contains
Syntax: obj << Contains( string )
Description: Returns a 1 if the namespace contains the specified string expression, or a 0 otherwise.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Contains( "nObs" );
Delete Namespace
Syntax: nsref << Delete Namespace( < Force( boolean ) > )
Description: Deletes this namespace.
JMP Version Added: 14
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
nsref << Delete Namespace;
Show( nsref );
First
Syntax: obj << First
Description: Returns the string expression for the first item in this namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << First;
Get Contents
Syntax: obj << Get Contents
Description: Returns a list of items within this namespace, where each element is a two item list containing a key and its associated value.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Get Contents;
Get Keys
Syntax: obj << Get Keys
Description: Returns a list of keys within this namespace, where a key is string representation of an individual item contained in the namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Get Keys;
Get Name
Syntax: obj << Get Name
Description: Returns the name of this namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
space name = nsref << Get Name;
Get Value
Syntax: obj << Get Value( string )
Description: Returns the value of the specified item within this namespace. The "string" is the key to the item.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Get Value( "nObs" );
Get Values
Syntax: obj << Get Values
Description: Returns a list of values corresponding to each item within this namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Get Values;
Insert
Syntax: obj << Insert( string, value )
Description: Inserts a string expression, with the specified value into this namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
nsref << Insert( "X", 25 );
Show( nsref );
Lock Namespace
Syntax: obj << Lock Namespace( <string, | {string, ...}>* )
Description: Locks all variables or specified named variables in this namespace and prevents variables from being added, changed, or removed.
JMP Version Added: 14
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
nsref << Lock Namespace;
Try( Add Class:nObs = 40, "Add Class is locked." );
N Items
Syntax: obj << N Items
Description: Returns the number of items contains in this namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
n = nsref << N Items;
Next
Syntax: obj << Next( string )
Description: Returns the string expression for the next item following the key specified in this namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Next( "addition" );
Remove
Syntax: obj << Remove( <string | {string, ...}>* )
Description: Removes the specified string expression from the namespace.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
nsref << Remove( "nObs" );
Show( nsref );
Show Contents
Syntax: obj << Show Contents
Description: Shows the contents of a namespace in the JMP log.
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
result = nsref << Show Contents;
Unlock Namespace
Syntax: obj << Unlock Namespace( <string | {string, ...}>* )
Description: Unlocks a previously locked namespace with all variables locked in this namespace and prevented variables from being added, changed, or removed.
JMP Version Added: 14
nsref = New Namespace(
"Add Class"
);
Add Class:nObs = 20;
Add Class:addition = Function( {x, y}, x + y );
Add Class:append = Function( {a, b},
Char( a ) || " + " || Char( b )
);
nsref << Lock Namespace( "nObs" );
Try( Add Class:nObs = 30, Show( "Add Class is locked." ) );
//Try again after unlocking.
nsref << Unlock Namespace( "nObs" );
Try( Add Class:nObs = 40, Show( "Add Class is locked." ) );