note description: "Structures that may be traversed forward and backward" library: "Free implementation of ELKS library" legal: "See notice at end of class." status: "See notice at end of class." names: bidirectional, traversing access: cursor, membership contents: generic date: "$Date: 2018-10-03 13:31:49 +0000 (Wed, 03 Oct 2018) $" revision: "$Revision: 102257 $" deferred class BILINEAR [G] inherit LINEAR [G] redefine search, off end feature -- Access off: BOOLEAN -- Is there no current item? do Result := before or after end feature -- Cursor movement before: BOOLEAN -- Is there no valid position to the left of current one? deferred end back -- Move to previous position. require not_before: not before deferred end search (v: like item) -- Move to first position (at or after current -- position) where item and v are equal. -- If structure does not include v ensure that -- exhausted will be true. -- (Reference or object equality, -- based on object_comparison.) do if before and not is_empty then forth end Precursor (v) end invariant not_both: not (after and before) before_constraint: before implies off note copyright: "Copyright (c) 1984-2018, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class BILINEAR
Generated by ISE EiffelStudio