/[eiffelstudio]/FreeELKS/trunk/library/structures/access/active.e
ViewVC logotype

Contents of /FreeELKS/trunk/library/structures/access/active.e

Parent Directory Parent Directory | Revision Log Revision Log


Revision 91424 - (show annotations)
Tue Oct 26 18:39:32 2004 UTC (15 years, 2 months ago) by manus_eiffel
File size: 2033 byte(s)
Initial revision

1 indexing
2
3 description: "[
4 ``Active'' data structures, which at every stage have
5 a possibly undefined ``current item''.
6 Basic access and modification operations apply to the current item.
7 ]"
8
9 status: "See notice at end of class"
10 names: active, access
11 access: membership
12 contents: generic
13 date: "$Date$"
14 revision: "$Revision$"
15
16 deferred class ACTIVE [G] inherit
17
18 BAG [G]
19
20 feature -- Access
21
22 item: G is
23 -- Current item
24 require
25 readable: readable
26 deferred
27 end
28
29 feature -- Status report
30
31 readable: BOOLEAN is
32 -- Is there a current item that may be read?
33 deferred
34 end
35
36 writable: BOOLEAN is
37 -- Is there a current item that may be modified?
38 deferred
39 end
40
41 feature -- Element change
42
43 replace (v: G) is
44 -- Replace current item by `v'.
45 require
46 writable: writable
47 deferred
48 ensure
49 item_replaced: item = v
50 end
51
52 feature -- Removal
53
54 remove is
55 -- Remove current item.
56 require
57 prunable: prunable
58 writable: writable
59 deferred
60 end
61
62 invariant
63
64 writable_constraint: writable implies readable
65 empty_constraint: is_empty implies (not readable) and (not writable)
66
67 indexing
68
69 library: "[
70 EiffelBase: Library of reusable components for Eiffel.
71 ]"
72
73 status: "[
74 Copyright 1986-2001 Interactive Software Engineering (ISE).
75 For ISE customers the original versions are an ISE product
76 covered by the ISE Eiffel license and support agreements.
77 ]"
78
79 license: "[
80 EiffelBase may now be used by anyone as FREE SOFTWARE to
81 develop any product, public-domain or commercial, without
82 payment to ISE, under the terms of the ISE Free Eiffel Library
83 License (IFELL) at http://eiffel.com/products/base/license.html.
84 ]"
85
86 source: "[
87 Interactive Software Engineering Inc.
88 ISE Building
89 360 Storke Road, Goleta, CA 93117 USA
90 Telephone 805-685-1006, Fax 805-685-6869
91 Electronic mail <info@eiffel.com>
92 Customer support http://support.eiffel.com
93 ]"
94
95 info: "[
96 For latest info see award-winning pages: http://eiffel.com
97 ]"
98
99 end -- class ACTIVE
100
101
102

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23