Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - Русский


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 — временно приостанавливает выполнение и разрешает инструкции в консоли.
Report an issue
<< debug Отладка whereami >>

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:
Tue Mar 07 09:28:37 CET 2023