Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語 -
Справка Scilab >> Scilab > Отладка > where

where

получение текущей инструкции дерева вызова

Синтаксис

[linenum, callername] = where()

Аргументы

linenum

вектор-столбец целых чисел

callername

вектор-столбец строк

Описание

[linenum, callername] = where() возвращает такие номер строки linenum и имя callername, что текущая инструкция была вызвана в строке linenum(1) функции callername(1), а callername(1) была вызвана в строке linenum(2) функции callername(2) и так далее.

callername(i) - это, в общем, имя функции, но это может быть также "exec" или "execstr", если инструкция лежит в сценарии, исполняемом функцией exec, или строковом аргументе функции execstr.

Примеры

function foo()
    c = 1
    [a,b] = where()
    disp("Строка")
    disp(a);
    disp("Функция:")
    disp(b);
endfunction

function test()
    function beer()
        foo()
    endfunction
    beer()
endfunction

test()
--> test()
 Строка:
   3.
   2.
   5.

 Функция:
!foo   !
!beer  !
!test  !

Смотрите также

  • whereami — выводит на экран текущую инструкцию дерева вызова
  • recursionlimit — get or set the current or maximal allowed depth of nested calls
  • pause — режим паузы, вызов клавиатуры
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Feb 14 15:04:47 CET 2019