<?xml version="1.0" encoding="UTF-8"?>

<section xml:id="nest-stream-instruction" xmlns="http://docbook.org/ns/docbook"
    version="5.0" xml:lang="en" xmlns:xi="http://www.w3.org/2001/XInclude">
    <title>nest</title>
    <indexterm>
        <primary>nest</primary>
    </indexterm>
    <important>
        <para><emphasis>The <function>nest</function> instruction has been
            deprecated.</emphasis></para>
        <para>The <function>nest</function> instruction is no longer necessary, having been replaced
            by other streaming instructions (such as <link
                xmlns:xlink="http://www.w3.org/1999/xlink" linkend="blob-instruction"
                    ><function>blob</function></link>, <link
                xmlns:xlink="http://www.w3.org/1999/xlink" linkend="ack-instruction"
                    ><function>ack</function></link>, and <link
                xmlns:xlink="http://www.w3.org/1999/xlink" linkend="end-instruction"
                    ><function>end</function></link>). Code using the <function>nest</function>
            instruction should instead write instructions directly without wrapping those
            instructions within <function>nest</function>.</para>
    </important>
    <para>Encodes part of one or more instructions within a single instruction,
        associating that packet of data with a stream index. Future nest
        instructions with the same stream index will append their data to the
        same logical stream on the client side. Once nested data is received on
        the client side, the client immediately executes any completed
        instructions within the associated stream, in order.</para>
    <variablelist>
        <varlistentry>
            <term><parameter>index</parameter></term>
            <listitem>
                <para>The index of the stream this data should be appended to.
                    This index is completely arbitrary, and denotes only how
                    nested data should be reassembled.</para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>data</parameter></term>
            <listitem>
                <para>The protocol data, containing part of one or more
                    instructions.</para>
            </listitem>
        </varlistentry>
    </variablelist>
</section>