elogger API
Overview Classes Cluster Class Index          Top Features

ise.base.kernel

Class NATURAL_32


Direct ancestors

NATURAL_32_REF

Creation

Features

Invariants

indexing

description

Unsigned integer values coded on 32 bits.

legal

See notice at end of class.

status

See notice at end of class.

external_name

System.UInt32

assembly

mscorlib

frozen expanded class NATURAL_32

inherit

NATURAL_32_REF
NUMERIC
DEBUG_OUTPUT
COMPARABLE
HASHABLE

create

default_create

-- Process instances of classes with no creation clause.
-- (Default: do nothing.)
-- (From ANY)

make_from_reference (v: NATURAL_32_REF)

-- Initialize Current with v.item.
-- (From NATURAL_32_REF)

require

v_not_void: v /= Void

ensure

item_set: item = v.item

convert

make_from_reference ({NATURAL_32_REF}),
to_real_32: {REAL},
to_real_64: {DOUBLE},
to_integer_64: {INTEGER_64},
to_natural_64: {NATURAL_64}

feature -- Access

ascii_char: CHARACTER

-- Returns corresponding ASCII character to item value.
-- (From NATURAL_32_REF)

obsolete

Use to_character_8 instead

require

valid_character_code: is_valid_character_8_code

hash_code: INTEGER

-- Hash code value
-- (From HASHABLE)

ensure

good_hash_value: Result >= 0

item: NATURAL_32

-- Integer value
-- (From NATURAL_32_REF)

Max_value: NATURAL_32

-- Minimum and Maximum value hold in item.
-- (From NATURAL_32_REF)

Min_value: NATURAL_32

-- (From NATURAL_32_REF)

one: like Current

-- Neutral element for "*" and "/"
-- (From NUMERIC)

ensure

result_exists: Result /= Void

sign: INTEGER

-- Sign value (0, -1 or 1)
-- (From NATURAL_32_REF)

ensure

three_way: Result = three_way_comparison (zero)

zero: like Current

-- Neutral element for "+" and "-"
-- (From NUMERIC)

ensure

result_exists: Result /= Void

feature -- Comparison

infix "<=" (other: like Current): BOOLEAN

-- Is current object less than or equal to other?
-- (From PART_COMPARABLE)

require

other_exists: other /= Void

ensure then

definition: Result = ((Current < other) or is_equal (other))

infix ">" (other: like Current): BOOLEAN

-- Is current object greater than other?
-- (From PART_COMPARABLE)

require

other_exists: other /= Void

ensure then

definition: Result = (other < Current)

infix ">=" (other: like Current): BOOLEAN

-- Is current object greater than or equal to other?
-- (From PART_COMPARABLE)

require

other_exists: other /= Void

ensure then

definition: Result = (other <= Current)

max (other: like Current): like Current

-- The greater of current object and other
-- (From COMPARABLE)

require

other_exists: other /= Void

ensure

current_if_not_smaller: Current >= other implies Result = Current
other_if_smaller: Current < other implies Result = other

min (other: like Current): like Current

-- The smaller of current object and other
-- (From COMPARABLE)

require

other_exists: other /= Void

ensure

current_if_not_greater: Current <= other implies Result = Current
other_if_greater: Current > other implies Result = other

three_way_comparison (other: like Current): INTEGER

-- If current object equal to other, 0;
-- if smaller, -1; if greater, 1
-- (From COMPARABLE)

require

other_exists: other /= Void

ensure

equal_zero: (Result = 0) = is_equal (other)
smaller_negative: (Result = -1) = (Current < other)
greater_positive: (Result = 1) = (Current > other)

infix "<" (other: like Current): BOOLEAN

-- Is current integer less than other?
-- (From PART_COMPARABLE)

require

other_exists: other /= Void

ensure then

asymmetric: Result implies not (other < Current)

is_equal (other: like Current): BOOLEAN

-- Is other attached to an object of the same type
-- as current object and identical to it?
-- (From ANY)

require

other_not_void: other /= Void

ensure

symmetric: Result implies other.is_equal (Current)
consistent: standard_is_equal (other) implies Result

feature -- Status report

divisible (other: NATURAL_32_REF): BOOLEAN

-- May current object be divided by other?
-- (From NUMERIC)

require

other_exists: other /= Void

ensure then

value: Result = (other.item /= 0)

exponentiable (other: NUMERIC): BOOLEAN

-- May current object be elevated to the power other?
-- (From NUMERIC)

require

other_exists: other /= Void

ensure then

safe_values: ((other.conforms_to (0) and item /= 0) or (other.conforms_to (0.0) and item > 0)) implies Result

is_hashable: BOOLEAN

-- May current object be hashed?
-- (True if it is not its type's default.)
-- (From HASHABLE)

ensure

ok_if_not_default: Result implies (Current /= default)

is_valid_character_32_code: BOOLEAN

-- Does current object represent a CHARACTER_32?
-- (From NATURAL_32_REF)

is_valid_character_8_code: BOOLEAN

-- Does current object represent a CHARACTER_8?
-- (From NATURAL_32_REF)

is_valid_character_code: BOOLEAN

-- Does current object represent a CHARACTER_8?
-- (From NATURAL_32_REF)

obsolete

feature -- Element change

set_item (i: NATURAL_32)

-- Make i the item value.
-- (From NATURAL_32_REF)

ensure

item_set: item = i

feature -- Conversion

frozen as_integer_16: INTEGER_16

-- Convert item into an INTEGER_16 value.
-- (From NATURAL_32_REF)

frozen as_integer_32: INTEGER

-- Convert item into an INTEGER_32 value.
-- (From NATURAL_32_REF)

frozen as_integer_64: INTEGER_64

-- Convert item into an INTEGER_64 value.
-- (From NATURAL_32_REF)

frozen as_integer_8: INTEGER_8

-- Convert item into an INTEGER_8 value.
-- (From NATURAL_32_REF)

frozen as_natural_16: NATURAL_16

-- Convert item into an NATURAL_16 value.
-- (From NATURAL_32_REF)

frozen as_natural_32: NATURAL_32

-- Convert item into an NATURAL_32 value.
-- (From NATURAL_32_REF)

frozen as_natural_64: NATURAL_64

-- Convert item into an NATURAL_64 value.
-- (From NATURAL_32_REF)

frozen as_natural_8: NATURAL_8

-- Convert item into an NATURAL_8 value.
-- (From NATURAL_32_REF)

frozen to_boolean: BOOLEAN

-- True if not zero.
-- (From NATURAL_32_REF)

to_character: CHARACTER

-- Returns corresponding ASCII character to item value.
-- (From NATURAL_32_REF)

obsolete

Use to_character_8 instead.

require

valid_character: is_valid_character_8_code

to_character_32: CHARACTER_32

-- Returns corresponding CHARACTER_32 to item value.
-- (From NATURAL_32_REF)

require

valid_character: is_valid_character_32_code

to_character_8: CHARACTER

-- Returns corresponding ASCII character to item value.
-- (From NATURAL_32_REF)

require

valid_character: is_valid_character_8_code

to_hex_character: CHARACTER

-- Convert item into an hexadecimal character.
-- (From NATURAL_32_REF)

require

in_bounds: 0 <= item and item <= 15

ensure

valid_character: ("0123456789ABCDEF").has (Result)

to_hex_string: STRING

-- Convert item into an hexadecimal string.
-- (From NATURAL_32_REF)

ensure

Result_not_void: Result /= Void
Result_valid_count: Result.count = (create {PLATFORM}).Integer_bits // 4

frozen to_integer_16: INTEGER_16

-- Convert item into an INTEGER_16 value.
-- (From NATURAL_32_REF)

require

frozen to_integer_32: INTEGER

-- Convert item into an INTEGER_32 value.
-- (From NATURAL_32_REF)

require

not_too_big: item <= {INTEGER}.Max_value.to_natural_32

frozen to_integer_64: INTEGER_64

-- Convert item into an INTEGER_64 value.
-- (From NATURAL_32_REF)

frozen to_integer_8: INTEGER_8

-- Convert item into an INTEGER_8 value.
-- (From NATURAL_32_REF)

require

frozen to_natural_16: NATURAL_16

-- Convert item into an NATURAL_16 value.
-- (From NATURAL_32_REF)

require

not_too_big: item <= {NATURAL_16}.Max_value

frozen to_natural_32: NATURAL_32

-- Convert item into an NATURAL_32 value.
-- (From NATURAL_32_REF)

frozen to_natural_64: NATURAL_64

-- Convert item into an NATURAL_64 value.
-- (From NATURAL_32_REF)

frozen to_natural_8: NATURAL_8

-- Convert item into an NATURAL_8 value.
-- (From NATURAL_32_REF)

require

not_too_big: item <= {NATURAL_8}.Max_value

frozen to_real_32: REAL

-- Convert item into a REAL_32
-- (From NATURAL_32_REF)

frozen to_real_64: DOUBLE

-- Convert item into a REAL_64
-- (From NATURAL_32_REF)

to_reference: NATURAL_32_REF

-- Associated reference of Current
-- (From NATURAL_32_REF)

ensure

to_reference_not_void: Result /= Void

feature -- Basic operations

infix "*" (other: like Current): like Current

-- Product by other
-- (From NUMERIC)

require

other_exists: other /= Void

ensure

result_exists: Result /= Void

infix "+" (other: like Current): like Current

-- Sum with other
-- (From NUMERIC)

require

other_exists: other /= Void

ensure

result_exists: Result /= Void
commutative: equal (Result, other + Current)

infix "-" (other: like Current): like Current

-- Result of subtracting other
-- (From NUMERIC)

require

other_exists: other /= Void

ensure

result_exists: Result /= Void

infix "/" (other: like Current): DOUBLE

-- Division by other
-- (From NATURAL_32_REF)

require

other_exists: other /= Void
good_divisor: divisible (other)

infix "//" (other: like Current): like Current

-- Integer division of Current by other
-- (From NUMERIC)

require

other_exists: other /= Void
good_divisor: divisible (other)

ensure

result_exists: Result /= Void

infix "\\" (other: like Current): like Current

-- Remainder of the integer division of Current by other
-- (From NATURAL_32_REF)

require

other_exists: other /= Void
good_divisor: divisible (other)

ensure

result_exists: Result /= Void

infix "^" (other: DOUBLE): DOUBLE

-- Integer power of Current by other
-- (From NATURAL_32_REF)

prefix "+" : like Current

-- Unary plus
-- (From NUMERIC)

ensure

result_exists: Result /= Void

unapplicable_minus_prefix: like Current

-- Unary minus
-- (From NUMERIC)

ensure

result_exists: Result /= Void

ensure then

not_applicable: False

feature -- Bit operations

frozen bit_and (i: like Current): like Current

-- Bitwise and between Current' and i.
-- (From NATURAL_32_REF)

require

i_not_void: i /= Void

ensure

bitwise_and_not_void: Result /= Void

frozen bit_not: like Current

-- One's complement of Current.
-- (From NATURAL_32_REF)

ensure

bit_not_not_void: Result /= Void

frozen bit_or (i: like Current): like Current

-- Bitwise or between Current' and i.
-- (From NATURAL_32_REF)

require

i_not_void: i /= Void

ensure

bitwise_or_not_void: Result /= Void

frozen bit_shift (n: INTEGER): NATURAL_32

-- Shift Current from n position to right if n positive,
-- to left otherwise.
-- (From NATURAL_32_REF)

require

n_less_or_equal_to_32: n <= 32
n_greater_or_equal_to_minus_32: n >= -32

frozen bit_shift_left (n: INTEGER): like Current

-- Shift Current from n position to left.
-- (From NATURAL_32_REF)

require

n_nonnegative: n >= 0
n_less_or_equal_to_32: n <= 32

ensure

bit_shift_left_not_void: Result /= Void

frozen bit_shift_right (n: INTEGER): like Current

-- Shift Current from n position to right.
-- (From NATURAL_32_REF)

require

n_nonnegative: n >= 0
n_less_or_equal_to_32: n <= 32

ensure

bit_shift_right_not_void: Result /= Void

frozen bit_test (n: INTEGER): BOOLEAN

-- Test n-th position of Current.
-- (From NATURAL_32_REF)

require

n_nonnegative: n >= 0
n_less_than_32: n < 32

frozen bit_xor (i: like Current): like Current

-- Bitwise xor between Current' and i.
-- (From NATURAL_32_REF)

require

i_not_void: i /= Void

ensure

bitwise_xor_not_void: Result /= Void

frozen infix "&" (i: like Current): like Current

-- Bitwise and between Current' and i.
-- (From NATURAL_32_REF)

require

i_not_void: i /= Void

ensure

bitwise_and_not_void: Result /= Void

frozen infix "|" (i: like Current): like Current

-- Bitwise or between Current' and i.
-- (From NATURAL_32_REF)

require

i_not_void: i /= Void

ensure

bitwise_or_not_void: Result /= Void

frozen infix "|<<" (n: INTEGER): like Current

-- Shift Current from n position to left.
-- (From NATURAL_32_REF)

require

n_nonnegative: n >= 0
n_less_or_equal_to_32: n <= 32

ensure

bit_shift_left_not_void: Result /= Void

frozen infix "|>>" (n: INTEGER): like Current

-- Shift Current from n position to right.
-- (From NATURAL_32_REF)

require

n_nonnegative: n >= 0
n_less_or_equal_to_32: n <= 32

ensure

bit_shift_right_not_void: Result /= Void

frozen set_bit (b: BOOLEAN; n: INTEGER): NATURAL_32

-- Copy of current with n-th position
-- set to 1 if b, 0 otherwise.
-- (From NATURAL_32_REF)

require

n_nonnegative: n >= 0
n_less_than_32: n < 32

frozen set_bit_with_mask (b: BOOLEAN; m: NATURAL_32): NATURAL_32

-- Copy of current with all 1 bits of m set to 1
-- if b, 0 otherwise.
-- (From NATURAL_32_REF)

feature -- Output

out: STRING

-- Printable representation of integer value
-- (From DEBUG_OUTPUT)

ensure

result_not_void: Result /= Void

invariant


-- From NUMERIC

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

-- From COMPARABLE
irreflexive_comparison: not (Current < Current)

indexing

library

EiffelBase: Library of reusable components for Eiffel.

copyright

Copyright (c) 1984-2006, Eiffel Software and others

license

Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)

source

Eiffel Software
356 Storke Road, Goleta, CA 93117 USA
Telephone 805-685-1006, Fax 805-685-6869
Website http://www.eiffel.com
Customer support http://support.eiffel.com


Documentation generated by edoc