1 <?xml version="1.0" encoding="UTF-8"?>
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) 2008 - INRIA
6 * Copyright (C) 2012 - 2016 - Scilab Enterprises
8 * This file is hereby licensed under the terms of the GNU GPL v2.0,
9 * pursuant to article 5.3.4 of the CeCILL v.2.1.
10 * This file was originally licensed under the terms of the CeCILL v2.1,
11 * and continues to be available under such terms.
12 * For more information, see the COPYING file which you should have received
13 * along with this program.
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ru" xml:id="resume">
18 <refname>resume</refname>
19 <refpurpose>выполнение возврата или возобновление и копирование некоторых локальных переменных</refpurpose>
22 <title>Синтаксис</title>
25 [x1, ..., xn] = resume(a1, ..., an)
29 <title>Аргументы</title>
32 <term>x1, ..., xn</term>
34 <para>переменные в вызывающем окружении</para>
38 <term>a1, ..., an</term>
40 <para>локальные переменные</para>
46 <title>Описание</title>
48 Внутри функции инструкция <literal>resume</literal>
49 останавливает исполнение функции;
50 <literal>[x1, ..., xn] = resume(a1, ..., an)</literal>
51 останавливает исполнение функции и передаёт локальные
52 переменные <literal>ai</literal> в вызывающее окружение под
53 именами <literal>xi</literal>.
56 В режиме <literal>pause</literal>, можно вернуться на более
58 <literal>[x1, ..., xn] = resume(a1, ..., an)</literal>
59 возвращает на верхний уровень и передаёт локальные
60 переменные <literal>ai</literal> под именами
61 <literal>xi</literal>.
64 В <literal>execstr</literal>, вызванной функцией,
65 <literal>[x1, ..., xn] = resume(a1, ..., an)</literal>
66 прекращает исполнение функции и выдаёт локальные переменные
67 <literal>ai</literal> в вызывающее окружение под именами
68 <literal>xi</literal>.
71 Инструкция <literal>resume</literal> эквивалентна инструкции <literal>return</literal>.
75 Примечание: использование этой возможности может усложнить код. Вместо этого рекомендуется синтаксис <code>function b = foo()</code>.
80 <title>Примеры</title>
81 <programlisting role="example"><![CDATA[
89 assert_checkequal(b,43);
93 <programlisting role="example"><![CDATA[
95 // при наличии нескольких вызовов функции
100 [x, y, z] = resume(a, b, c)
109 // x, y и z здесь не существуют
112 <refsection role="see also">
113 <title>Смотрите также</title>
114 <simplelist type="inline">
116 <link linkend="abort">abort</link>
119 <link linkend="break">break</link>
122 <link linkend="quit">quit</link>
125 <link linkend="pause">pause</link>
128 <link linkend="return">return</link>
131 <link linkend="execstr">execstr</link>
135 <refsection role="history">
136 <title>История</title>
139 <revnumber>6.0.0</revnumber>
141 <literal>resume</literal> теперь защищена:
142 Присвоения, такие как <literal>resume=1</literal>, более не возможны.