Automatic generation produced by ISE Eiffel

Classes Clusters Cluster hierarchy Chart Relations Text Flat Contracts Flat contracts Go to:
indexing description: "References to objects meant to be exchanged with non-Eiffel software." status: "See notice at end of class" date: "$Date: 2001-11-16 20:32:23 +0000 (Fri, 16 Nov 2001) $" revision: "$Revision: 51435 $" expanded class POINTER feature -- Access hash_code: INTEGER is -- Hash code value -- (from POINTER_REF) do Result := (c_hashcode (item)).abs ensure -- from HASHABLE good_hash_value: Result >= 0 end item: POINTER -- Pointer value -- (from POINTER_REF) feature -- Status report is_hashable: BOOLEAN is -- May current object be hashed? -- (True if it is not its type's default.) -- (from POINTER_REF) do Result := item /= default_pointer ensure -- from HASHABLE ok_if_not_default: Result implies (Current /= default) end feature -- Element change set_item (p: POINTER) is -- Make p the item value. -- (from POINTER_REF) do item := p end feature {NONE} -- Implementation c_hashcode (p: POINTER): INTEGER is -- Hash code value of p -- (from POINTER_REF) external "C [macro %"eif_misc.h%"]" alias "conv_pi" end c_memcpy (destination, source: POINTER; count: INTEGER) is -- C memcpy -- (from POINTER_REF) external "C (void *, const void *, size_t) | <string.h>" alias "memcpy" end c_memmove (destination, source: POINTER; count: INTEGER) is -- C memmove -- (from POINTER_REF) external "C (void *, const void *, size_t) | <string.h>" alias "memmove" end c_memset (source: POINTER; val: INTEGER; count: INTEGER) is -- C memset -- (from POINTER_REF) external "C (void *, int, size_t) | <string.h>" alias "memset" end c_offset_pointer (p: POINTER; o: INTEGER): POINTER is -- Pointer moved by an offset of o bytes from p. -- (from POINTER_REF) external "C [macro %"eif_macros.h%"]" alias "RTPOF" end c_outp (p: POINTER): STRING is -- Printable representation of pointer value -- (from POINTER_REF) external "C | %"eif_out.h%"" end feature -- Memory copy memory_copy (a_source: POINTER; a_size: INTEGER) is -- Copy a_size bytes from a_source to Current. -- a_source and Current should not overlap. -- (from POINTER_REF) require -- from POINTER_REF valid_size: a_size >= 0 valid_source: a_source /= default_pointer do c_memcpy (item, a_source, a_size) end memory_move (a_source: POINTER; a_size: INTEGER) is -- Copy a_size bytes from a_source to Current. -- a_source and Current can overlap. -- (from POINTER_REF) require -- from POINTER_REF valid_size: a_size >= 0 valid_source: a_source /= default_pointer do c_memmove (item, a_source, a_size) end memory_set (val, n: INTEGER) is -- Fill first n bytes of the memory pointed by Current -- with constant val. -- (from POINTER_REF) require -- from POINTER_REF valid_val: val >= 0 valid_n: n >= 0 do c_memset (item, val, n) end feature -- Operations infix "+" (offset: INTEGER): like Current is -- Pointer moved by an offset of offset bytes. -- (from POINTER_REF) do create Result Result.set_item (c_offset_pointer (item, offset)) end feature -- Output out: STRING is -- Printable representation of pointer value -- (from POINTER_REF) do Result := c_outp (item) end invariant -- from ANY reflexive_equality: standard_is_equal (Current) reflexive_conformance: conforms_to (Current) indexing library: "[ EiffelBase: Library of reusable components for Eiffel. ]" status: "[ Copyright 1986-2001 Interactive Software Engineering (ISE). For ISE customers the original versions are an ISE product covered by the ISE Eiffel license and support agreements. ]" license: "[ EiffelBase may now be used by anyone as FREE SOFTWARE to develop any product, public-domain or commercial, without payment to ISE, under the terms of the ISE Free Eiffel Library License (IFELL) at http://eiffel.com/products/base/license.html. ]" source: "[ Interactive Software Engineering Inc. ISE Building 360 Storke Road, Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Electronic mail <info@eiffel.com> Customer support http://support.eiffel.com ]" info: "[ For latest info see award-winning pages: http://eiffel.com ]" end -- class POINTER
Classes Clusters Cluster hierarchy Chart Relations Text Flat Contracts Flat contracts Go to:

-- Generated by ISE Eiffel --
For more details: www.eiffel.com