[ Obsolete | Reference Manual | Alphabetic Index ]
make_local_array(++Array)
Creates an array or global variable Array visible only in the context
module.
- Array
- Atom or Ground compound term with integer arguments.
This built-in predicate is obsolete!
Description
If Array is an atom, a global variable only visible from the context
module is created. Its value is initialised to a free variable.
If Array is a compound term, a local array of type prolog is created,
its dimension is the arity of the term Array and the size of each
dimension is specified by the corresponding argument of the term Array.
The elements of arrays of type prolog are initialised to free variables.
Note
make_local_array(A) is equivalent to make_local_array(A, prolog).
Modes and Determinism
- make_local_array(++) is det
Modules
This predicate is sensitive to its module context (tool predicate, see @/2).
Exceptions
- (4) instantiation fault
- Array is not ground.
- (5) type error
- Array is not an atom or a structure with integer arguments.
- (6) out of range
- The ground structure Array has arguments that are integers not greater than 0.
- (42) redefining an existing array
- A local array with the same name and dimension as Array already exists.
Examples
Success:
make_local_array(a).
make_local_array(a(1)).
make_local_array(a(4)).
make_local_array(b(2,3)).
make_local_array(a(4)), make_local_array(a(4,1)).
make_local_array(a), make_local_array(a(1)).
Error:
make_local_array(X). (Error 4).
make_local_array(a(6.0)). (Error 5).
make_local_array(a(0)). (Error 6).
make_local_array(a(-2)). (Error 6).
make_local_array(a(4)),
make_local_array(a(5)). (Error 42).
See Also
array / 1, current_array / 2, decval / 1, incval / 1, make_array / 1, make_array / 2, make_local_array / 2, getval / 2, setval / 2