Eiffel Media API
Overview Cluster Class Classes Index      Previous Next      Top Features

structure.list

Class DS_NESTED_LIST_FLATTENER



Creation

Features

Invariants

indexing

description

Nested list flatteners: machines that make sure %
%that all items accessible remotely in some given %
%nested lists are also kept locally. The nested %
%list flatteners take care of possible cycles in %
%the di-graph of nested lists.

library

Gobo Eiffel Structure Library

copyright

Copyright (c) 1998, Eric Bezault and others

license

Eiffel Forum License v2 (see forum.txt)

date

$Date: 2005/07/13 17:52:13 $

revision

$Revision: 1.10 $

class

DS_NESTED_LIST_FLATTENER [G]

create

make

-- Create a new nested list flattener.

feature -- Basic operations

flatten (nested_lists: DS_LINEAR [DS_NESTED_LIST [G]])

-- Make sure that for each list in nested_lists
-- all items are held locally, even those that
-- could be accessed remotely.

require
nested_lists_not_void: nested_lists /= Void
no_void_nested_list: not nested_lists.has (Void)

invariant

-- From ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)

end