checks variable existence
ve = isdef(name [,where])
a matrix with the same size as name
with boolean values
a matrix of character strings
character string, can be 'l'
(for "local"
),
'n'
(for "nolocal"
) or
'a'
(for "all"
). Default value is
'a'
.
isdef(name)
returns %T
if the
variable named name
exists and %F
otherwise.
![]() | Caveats: a function which uses isdef may return a
result which depends on the environment! |
isdef(name, 'l')
returns %T
if the variable named name
exists in the local
environment of the current function and %F
otherwise.
isdef(name, 'n')
returns
%T
if the variable named name
exists
in the full calling environment (including the global level) of the
current function and %F
otherwise.
![]() | Note: only the first letter of option where is taken into account. |
A = 1; B = 2; C = 3; D = 4; isdef(['A', 'B'; 'C', 'D']) clear A B C D; isdef(['A', 'B'; 'C', 'D']) function level1() function level2() disp(isdef(["a", "b"], "a")); disp(isdef(["a", "b"], "l")); disp(isdef(["a", "b"], "n")); endfunction level2() endfunction function go() a = 1; level1() endfunction go() | ![]() | ![]() |