Revision of Russian help page for resume function after commit 040712019dd358ba8f06b4...
[scilab.git] / scilab / modules / core / help / ru_RU / control_flow / resume.xml
index bc35e10..8de1702 100644 (file)
 <?xml version="1.0" encoding="UTF-8"?>
-<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" version="5.0-subset Scilab" xml:lang="ru" xml:id="resume">
-  <info>
-    <pubdate>$LastChangedDate$</pubdate>
-  </info>
-  <refnamediv>
-    <refname>resume</refname>
-    <refpurpose>выполнение возврата или возобновление и копирование некоторых локальных переменных</refpurpose>
-  </refnamediv>
-  <refsynopsisdiv>
-    <title>Последовательность вызова</title>
-    <synopsis>resume
-      [x1,..,xn]=resume(a1,..,an)
-    </synopsis>
-  </refsynopsisdiv>
-  <refsection>
-    <title>Аргументы</title>
-    <variablelist>
-      <varlistentry>
-        <term>x1,..,xn</term>
-        <listitem>
-          <para>переменные в вызывающем окружении</para>
-        </listitem>
-      </varlistentry>
-      <varlistentry>
-        <term>a1,..,an</term>
-        <listitem>
-          <para>локальные переменные</para>
-        </listitem>
-      </varlistentry>
-    </variablelist>
-  </refsection>
-  <refsection>
-    <title>Описание</title>
-    <para>
-      Внутри функции инструкция <literal>resume</literal> останавливает исполнение функции;
-      <literal>[x1,..,xn]=resume(a1,..,an)</literal> останавливает исполнение функции и 
-      передаёт локальные переменные <literal>ai</literal> в вызывающее окружение под именами 
-      <literal>xi</literal>.
-    </para>
-    <para>
-      В режиме <literal>pause</literal>, можно вернуться на более высокий уровень.
-      <literal>[x1,..,xn]=resume(a1,..,an)</literal> возвращает на верхний уровень и передаёт локальные переменные 
-      <literal>ai</literal> под именами <literal>xi</literal>.
-    </para>
-    <para>
-      В <literal>execstr</literal>, вызванной функцией <literal>[x1,..,xn]=resume(a1,..,an)</literal> 
-      прекращает исполнение функции и выдаёт локальные переменные <literal>ai</literal> 
-      в вызывающее окружение под именами <literal>xi</literal>.      
-    </para>
-    <para>
-      Инструкция <literal>resume</literal> эквивалентна инструкции <literal>return</literal>.
-    </para>
-  </refsection>
-  <refsection role="see also">
-    <title>Смотрите также</title>
-    <simplelist type="inline">
-      <member>
-        <link linkend="abort">abort</link>
-      </member>
-      <member>
-        <link linkend="break">break</link>
-      </member>
-      <member>
-        <link linkend="quit">quit</link>
-      </member>
-      <member>
-        <link linkend="pause">pause</link>
-      </member>
-      <member>
-        <link linkend="return">return</link>
-      </member>
-      <member>
-        <link linkend="execstr">execstr</link>
-      </member>
-    </simplelist>
-  </refsection>
-</refentry>
+<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">
+    <refnamediv>
+        <refname>resume</refname>
+        <refpurpose>выполнение возврата или возобновление и копирование некоторых локальных переменных</refpurpose>
+    </refnamediv>
+    <refsynopsisdiv>
+        <title>Последовательность вызова</title>
+        <synopsis>resume
+            [x1, ..., xn] = resume(a1, ..., an)
+        </synopsis>
+    </refsynopsisdiv>
+    <refsection>
+        <title>Аргументы</title>
+        <variablelist>
+            <varlistentry>
+                <term>x1, ..., xn</term>
+                <listitem>
+                    <para>переменные в вызывающем окружении</para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>a1, ..., an</term>
+                <listitem>
+                    <para>локальные переменные</para>
+                </listitem>
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection>
+        <title>Описание</title>
+        <para>
+            Внутри функции инструкция <literal>resume</literal>
+            останавливает исполнение функции;
+            <literal>[x1, ..., xn] = resume(a1, ..., an)</literal>
+            останавливает исполнение функции и передаёт локальные
+            переменные <literal>ai</literal> в вызывающее окружение под
+            именами <literal>xi</literal>.
+        </para>
+        <para>
+            В режиме <literal>pause</literal>, можно вернуться на более
+            высокий уровень.
+            <literal>[x1, ..., xn] = resume(a1, ..., an)</literal>
+            возвращает на верхний уровень и передаёт локальные
+            переменные <literal>ai</literal> под именами
+            <literal>xi</literal>.
+        </para>
+        <para>
+            В <literal>execstr</literal>, вызванной функцией,
+            <literal>[x1, ..., xn] = resume(a1, ..., an)</literal>
+            прекращает исполнение функции и выдаёт локальные переменные
+            <literal>ai</literal> в вызывающее окружение под именами
+            <literal>xi</literal>.
+        </para>
+        <para>
+            Инструкция <literal>resume</literal> эквивалентна инструкции <literal>return</literal>.
+        </para>
+        <para>
+            <note>
+                Примечание: использование этой возможности может усложнить код. Вместо этого рекомендуется синтаксис <code>function b = foo()</code>.
+            </note>
+        </para>
+    </refsection>
+    <refsection>
+        <title>Examples</title>
+        <programlisting role="example"><![CDATA[
+function foo(a)
+         a=a+1
+         b=resume(a)
+         c=52
+endfunction
+
+foo(42);
+assert_checkequal(b,43);
+// c не существует
+
+]]></programlisting>
+       <programlisting role="example"><![CDATA[
 
+// при наличии нескольких вызовов функции
+function foo1()
+  a=1;
+  b=2;
+  c=3;
+  [x, y, z] = resume(a, b, c)
+endfunction
+
+function foo2()
+  foo1()
+  x, y, z // объявлены
+endfunction
+
+foo2()
+// x, y и z здесь не существуют
+]]></programlisting>
+    </refsection>
+    <refsection role="see also">
+        <title>Смотрите также</title>
+        <simplelist type="inline">
+            <member>
+                <link linkend="abort">abort</link>
+            </member>
+            <member>
+                <link linkend="break">break</link>
+            </member>
+            <member>
+                <link linkend="quit">quit</link>
+            </member>
+            <member>
+                <link linkend="pause">pause</link>
+            </member>
+            <member>
+                <link linkend="return">return</link>
+            </member>
+            <member>
+                <link linkend="execstr">execstr</link>
+            </member>
+        </simplelist>
+    </refsection>
+</refentry>