note
	description: "References to special objects, for direct access to arrays and strings"
	library: "Free implementation of ELKS library"
	status: "See notice at end of class."
	legal: "See notice at end of class."
	date: "$Date: 2017-03-23 19:18:26 +0000 (Thu, 23 Mar 2017) $"
	revision: "$Revision: 100033 $"

class interface
	TO_SPECIAL [T]

create 
	make_empty_area,
	make_filled_area

feature -- Access

	area: SPECIAL [T]
			-- Special data zone.

	item alias "[]" (i: INTEGER_32): T assign put
			-- Entry at index i, if in index interval.
			-- Was declared in TO_SPECIAL as synonym of at.
		require
			valid_index: valid_index (i)

	at alias "@" (i: INTEGER_32): T assign put
			-- Entry at index i, if in index interval.
			-- Was declared in TO_SPECIAL as synonym of item.
		require
			valid_index: valid_index (i)
	
feature -- Status report

	valid_index (i: INTEGER_32): BOOLEAN
			-- Is i within the bounds of Current?
	
feature -- Element change

	put (v: T; i: INTEGER_32)
			-- Replace i-th entry, if in index interval, by v.
		require
			valid_index: valid_index (i)
		ensure
			inserted: item (i) = v
	
note
	copyright: "Copyright (c) 1984-2017, 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 TO_SPECIAL

Generated by ISE EiffelStudio