indexing
	description: "A position in a 2 dimensional space as INTEGERs (x, y)"
	status: "See notice at end of class"
	date: "$Date$"
	revision: "$Revision$"

class interface
	EV_COORDINATE

create 

	set (a_x, a_y: INTEGER)
			-- Assign a_x to x and a_y to y.
		ensure
			x_assigned: x = a_x
			y_assigned: y = a_y

feature -- Access

	x: INTEGER
			-- Horizontal position.

	y: INTEGER
			-- Vertical position.
	
feature -- Element change

	set (a_x, a_y: INTEGER)
			-- Assign a_x to x and a_y to y.
		ensure
			x_assigned: x = a_x
			y_assigned: y = a_y

	set_x (a_x: INTEGER)
			-- Assign a_x to x.
		ensure
			x_assigned: x = a_x

	set_y (a_y: INTEGER)
			-- Assign a_y to y.
		ensure
			y_assigned: y = a_y
	
feature -- Output

	out: STRING
			-- Textual representation.
	
invariant

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

end -- class EV_COORDINATE