<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>

<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 2.0">
<title>Class DS_BILINKABLE</title>
</head>

<body bgcolor="#FFFFFF">

<table border="0" width="100%">
    <tr>
        <td><font size="6"><strong>Class DS_BILINKABLE</strong></font></td>
        <td align="right"><a href="ds_bilinear_cursor.html"><img
        src="../../image/previous.gif" alt="Previous" border="0"
        width="40" height="40"></a><a
        href="ds_bilinked_list.html"><img
        src="../../image/next.gif" alt="Next" border="0"
        width="40" height="40"></a></td>
    </tr>
</table>

<hr size="1">

<pre><font color="#000080"><em><strong>note</strong></em></font></pre>

<blockquote>
    <pre><em>description</em>:

<font color="#800000"><em>    &quot;Linkable cells with a reference to their left and right neighbors&quot;

</em></font><em>library:    </em><font color="#800000"><em>&quot;Gobo Eiffel Structure Library&quot;
</em></font><em>author:     </em><font color="#800000"><em>&quot;Eric Bezault &lt;</em></font><a
href="mailto:ericb@gobosoft.com"><font color="#800000"><em>ericb@gobosoft.com</em></font></a><font
color="#800000"><em>&gt;&quot;
</em></font><em>copyright:  </em><font color="#800000"><em>&quot;Copyright (c) 1999, Eric Bezault and others&quot;
</em></font><em>license:   </em><font color="#800000"><em> &quot;MIT License&quot;</em></font></pre>
</blockquote>

<pre><font color="#000080"><em><strong>class interface</strong></em></font></pre>

<blockquote>
    <pre><em>DS_BILINKABLE </em>[<em>G</em>]</pre>
</blockquote>

<pre><font color="#000080"><em><strong>inherit</strong></em></font></pre>

<blockquote>
    <pre><a href="ds_linkable.html"><em>DS_LINKABLE</em></a><em> </em>[<em>G</em>]
    <a href="ds_cell.html"><em>DS_CELL</em></a><em> </em>[<em>G</em>]</pre>
</blockquote>

<pre><font color="#000080"><em><strong>create</strong></em></font></pre>

<blockquote>
    <pre><a name="make"><em>make</em></a><em> </em>(<em>v</em>:<em> G</em>)<em>
        </em><font color="#008000">-- Insert </font><em>v</em><font
color="#008000"> in cell.</font><em>
</em><font color="#008000">        -- (From </font><a
href="ds_cell.html#make"><font color="#008000"><em>DS_CELL</em></font></a><font
color="#008000">.)</font><em>
    </em><font color="#000080"><em><strong>ensure</strong></em></font><em>
        inserted</em>:<em> </em><a href="#item"><em>item</em></a><em> </em>=<em> v</em></pre>
</blockquote>

<pre><font color="#000080"><em><strong>feature</strong></em></font><font
color="#008000"> -- Access</font></pre>

<blockquote>
    <pre><a name="item"><em>item</em></a>:<em> G
       </em><font color="#008000"> -- Content of cell
        -- (From </font><a href="ds_cell.html#item"><font
color="#008000"><em>DS_CELL</em></font></a><font color="#008000">.)</font></pre>
    <pre><a name="right"><em>right</em></a>:<em> </em><font
color="#000080"><em><strong>like</strong></em></font><em> </em><font
color="#008080"><em>Current</em></font><font color="#008000">
        -- Right neighbor
        -- (From </font><a href="ds_linkable.html#right"><font
color="#008000"><em>DS_LINKABLE</em></font></a><font
color="#008000">.)</font></pre>
    <pre><a name="left"><em>left</em></a>:<em> </em><font
color="#000080"><em><strong>like</strong></em></font><em> </em><font
color="#008080"><em>Current</em></font><font color="#008000">
        -- Left neighbor</font></pre>
</blockquote>

<pre><font color="#000080"><em><strong>feature </strong></em></font><font
color="#008000">-- Element change</font></pre>

<blockquote>
    <pre><a name="put"><em>put</em></a><em>, make </em>(<em>v</em>:<em> G</em>)<em>
        </em><font color="#008000">-- Insert </font><em>v</em><font
color="#008000"> in cell.</font><em>
</em><font color="#008000">        -- (From </font><a
href="ds_cell.html#put"><font color="#008000"><em>DS_CELL</em></font></a><font
color="#008000">.)</font><em>
    </em><font color="#000080"><em><strong>ensure</strong></em></font><em>
        inserted</em>:<em> </em><a href="#item"><em>item</em></a><em> </em>=<em> v</em></pre>
    <pre><a name="put_right"><em>put_right</em></a><em> </em>(<em>other</em>: <font
color="#000080"><em><strong>like</strong></em></font><em> </em><font
color="#008080"><em>Current</em></font>)<em>
        </em><font color="#008000">-- Put </font><em>other</em><font
color="#008000"> to right of cell.
        -- Make sure that link is bidirectional.</font><em>
</em><font color="#008000">        -- (From </font><a
href="ds_linkable.html#put_right"><font color="#008000"><em>DS_LINKABLE</em></font></a><font
color="#008000">.)</font><em>
    </em><font color="#000080"><em><strong>require</strong></em></font><em>
        other_not_void</em>:<em> other </em>/=<em> </em><font
color="#008080"><em>Void</em></font><em>
    </em><font color="#000080"><em><strong>ensure</strong></em></font><em>
        linked</em>:<em> </em><a href="#right"><em>right</em></a><em> </em>= <em>other
        bilinked</em>:<em> other</em>.<a href="#left"><em>left</em></a><em> </em>=<em> </em><font
color="#008080"><em>Current</em></font></pre>
    <pre><a name="put_left"><em>put_left</em></a><em> </em>(<em>other</em>: <font
color="#000080"><em><strong>like</strong></em></font><em> </em><font
color="#008080"><em>Current</em></font>)<em>
        </em><font color="#008000">-- Put </font><em>other</em><font
color="#008000"> to left of cell.
        -- Make sure that link is bidirectional.</font><em>
    </em><font color="#000080"><em><strong>require</strong></em></font><em>
        other_not_void</em>:<em> other </em>/=<em> </em><font
color="#008080"><em>Void</em></font><em>
    </em><font color="#000080"><em><strong>ensure</strong></em></font><em>
        linked</em>:<em> </em><a href="#left"><em>left</em></a><em> </em>= <em>other
        bilinked</em>:<em> other</em>.<a href="#right"><em>right</em></a><em> </em>= <font
color="#008080"><em>Current</em></font></pre>
    <pre><a name="forget_right"><em>forget_right</em></a><em>
        </em><font color="#008000">-- Remove right neighbor.</font><em>
</em><font color="#008000">        -- (From </font><a
href="ds_linkable.html#forget_right"><font color="#008000"><em>DS_LINKABLE</em></font></a><font
color="#008000">.)</font><em>
    </em><font color="#000080"><em><strong>ensure</strong></em></font><em>
        forgotten</em>:<em> </em><a href="#right"><em>right</em></a><em> </em>=<em> </em><font
color="#008080"><em>Void</em></font></pre>
    <pre><a name="forget_left"><em>forget_left</em></a><em>
        </em><font color="#008000">-- Remove left neighbor.</font><em>
    </em><font color="#000080"><em><strong>ensure</strong></em></font><em>
        forgotten</em>:<em> </em><a href="#left"><em>left</em></a><em> </em>=<em> </em><font
color="#008080"><em>Void</em></font></pre>
</blockquote>

<pre><font color="#000080"><em><strong>end</strong></em></font><font
color="#008000"> -- class DS_BILINKABLE</font></pre>

<hr size="1">

<table border="0" width="100%">
    <tr>
        <td><address>
            <font size="2"><b>Copyright © 1999</b></font><font
            size="1"><b>, </b></font><font size="2"><strong>Eric
            Bezault</strong></font><strong> </strong><font
            size="2"><br>
            <strong>mailto:</strong></font><a
            href="mailto:ericb@gobosoft.com"><font size="2">ericb@gobosoft.com</font></a><font
            size="2"><br>
            <strong>http:</strong></font><a
            href="http://www.gobosoft.com"><font size="2">//www.gobosoft.com</font></a><font
            size="2"><br>
            <strong>Last Updated:</strong> 8 August 1999</font><br>
            <!--webbot bot="PurpleText"
            preview="
$Date$
$Revision$"
            -->
        </address>
        </td>
        <td align="right" valign="top"><a
        href="http://www.gobosoft.com"><img
        src="../../image/home.gif" alt="Home" border="0"
        width="40" height="40"></a><a href="index.html"><img
        src="../../image/toc.gif" alt="Toc" border="0" width="40"
        height="40"></a><a href="ds_bilinear_cursor.html"><img
        src="../../image/previous.gif" alt="Previous" border="0"
        width="40" height="40"></a><a
        href="ds_bilinked_list.html"><img
        src="../../image/next.gif" alt="Next" border="0"
        width="40" height="40"></a></td>
    </tr>
</table>
</body>
</html>
