Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - English


isdef

checks variable existence

Syntax

ve = isdef(name)
ve = isdef(name, where)

Arguments

name

matrix of strings: names of queried variables.

where

character string, can be 'l' (for "local"), 'n' (for "nolocal") or 'a' (for "all"). Default value is 'a'.

ve

a matrix with the same size as name with boolean values

Description

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.

Examples

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()

See also

  • exists — checks variable existence
  • isglobal — checks if a local variable has a global counterpart
  • whereis — Returns the name of the loaded library/module a given function belongs to
  • type — returns the type of a Scilab object
  • typeof — explicit type or overloading code of an object
  • clear — kills variables
Report an issue
<< global Variables isglobal >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 24 11:13:06 CEST 2024