Top
BOOLEAN
CHARACTER_CONSTANTS
expanded class interface CHARACTER
--
-- Note: An Eiffel CHARACTER is mapped as a C unsigned char or as a Java Byte.
--
feature(s) from HASHABLE hash_code: INTEGER
-- The hash-code value of Current.
ensure
good_hash_value: Result >= 0
feature(s) from COMPARABLE is_equal (other: like Current): BOOLEAN
-- Is other attached to an object considered equal to
-- current object ?
require
other /= Void
ensure
trichotomy: Result = (not (Current < other) and not (other < Current));
generating_type = other.generating_type implies Result = other.is_equal(Current)
infix "<" (other: CHARACTER): BOOLEAN
-- Comparison using code.
require
other_exists: other /= Void
ensure
asymmetric: Result implies not (other < Current)
infix "<=" (other: CHARACTER): BOOLEAN
-- Comparison using code.
require
other_exists: other /= Void
ensure
definition: Result = (Current < other or is_equal(other))
infix ">" (other: CHARACTER): BOOLEAN
-- Comparison using code.
require
other_exists: other /= Void
ensure
definition: Result = (other < Current)
infix ">=" (other: CHARACTER): BOOLEAN
-- Comparison using code.
require
other_exists: other /= Void
ensure
definition: Result = (other <= Current)
in_range (lower, upper: like Current): BOOLEAN
-- Return true if Current is in range [lower..upper]
ensure
Result = (Current >= lower and Current <= upper)
compare (other: like Current): INTEGER
-- If current object equal to other, 0
-- if smaller, -1; if greater, 1.
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)
three_way_comparison (other: like Current): INTEGER
-- If current object equal to other, 0
-- if smaller, -1; if greater, 1.
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)
min (other: like Current): like Current
-- Minimum of Current and other.
require
other /= Void
ensure
Result <= Current and then Result <= other;
compare(Result) = 0 or else other.compare(Result) = 0
max (other: like Current): like Current
-- Maximum of Current and other.
require
other /= Void
ensure
Result >= Current and then Result >= other;
compare(Result) = 0 or else other.compare(Result) = 0
feature(s) from CHARACTER to_integer: INTEGER_8
-- Sign-extended conversion.
code: INTEGER_16
-- ASCII code of Current. (No Sign-extended conversion.)
ensure
Result.in_range(minimum_character_code,maximum_character_code)
value: INTEGER_8
-- Gives the value of a decimal digit.
require
is_digit
ensure
Result.in_range(0,9)
decimal_value: INTEGER_8
-- Gives the value of a decimal digit.
require
is_digit
ensure
Result.in_range(0,9)
binary_value: INTEGER_8
-- Gives the value of a binary digit.
require
is_binary_digit
ensure
Result.in_range(0,1)
octal_value: INTEGER_8
-- Gives the value of an octal digit.
require
is_octal_digit
ensure
Result.in_range(0,7)
hexadecimal_value: INTEGER_8
-- Gives the value of an hexadecimal digit.
require
is_hexadecimal_digit
ensure
Result.in_range(0,15)
same_as (other: CHARACTER): BOOLEAN
-- Case insensitive comparison.
-- No difference between upper/lower case letters.
ensure
Result implies to_lower = other or to_upper = other
to_upper: CHARACTER
-- Conversion to the corresponding upper case.
to_lower: CHARACTER
-- Conversion to the corresponding lower case.
is_letter: BOOLEAN
-- Is it a letter ('a' .. 'z' or 'A' .. 'Z') ?
ensure
Result = in_range('A','Z') or in_range('a','z')
is_digit: BOOLEAN
-- Belongs to '0'..'9'.
ensure
Result = in_range('0','9')
is_decimal_digit: BOOLEAN
-- Belongs to '0'..'9'.
ensure
Result = in_range('0','9')
is_binary_digit: BOOLEAN
-- Belongs to '0'..'1'.
ensure
Result = in_range('0','1')
is_octal_digit: BOOLEAN
-- Belongs to '0'..'7'.
ensure
Result = in_range('0','7')
is_hexadecimal_digit: BOOLEAN
-- Is it one character of "0123456789abcdefABCDEF" ?
ensure
Result = (once "0123456789abcdefABCDEF").has(Current)
is_lower: BOOLEAN
-- Is it some lowercase letter ('a'..'z')?
is_upper: BOOLEAN
-- Is it some uppercase letter ('A'..'Z')?
is_separator: BOOLEAN
-- True when character is a separator.
is_letter_or_digit: BOOLEAN
-- Is it a letter (see is_letter) or a digit (see is_digit) ?
ensure
definition: Result = (is_letter or is_digit)
is_ascii: BOOLEAN
-- Is character a 8-bit ASCII character?
is_bit: BOOLEAN
-- True for 0 and 1.
next: CHARACTER
-- Give the next character (the following code)
previous: CHARACTER
-- Give the previous character (the code before)
require
code > 0
feature(s) from CHARACTER
-- Conversions:
to_bit: BIT_N character_bits
to_hexadecimal: STRING
-- Create a new STRING giving the code in hexadecimal.
-- For example :
-- (255).to_character.to_hexadecimal gives "FF".
-- Note: see to_hexadecimal_in to save memory.
ensure
Result.count = 2
to_hexadecimal_in (str: STRING)
-- Append the equivalent of to_hexadecimal at the end of
-- str. Thus you can save memory because no other
-- STRING is allocate for the job.
ensure
str.count = 2 + old str.count
feature(s) from CHARACTER
-- Object Printing:
out_in_tagged_out_memory
-- Append terse printable represention of current object
-- in tagged_out_memory.
ensure
not_cleared: tagged_out_memory.count >= old tagged_out_memory.count;
append_only: (old tagged_out_memory.twin).is_equal(tagged_out_memory.substring(1,old tagged_out_memory.count))
fill_tagged_out_memory
-- Append terse printable represention of current object
-- in tagged_out_memory.
feature(s) from CHARACTER
-- Miscellaneous:
is_alpha: BOOLEAN
-- See is_letter (yes this is just a call to is_letter).
-- Isn't is_letter better English ;-)
ensure
Result = is_letter
feature(s) from CHARACTER
-- For compatibility with the obsolete CHARACTER_REF style:
item: CHARACTER
set_item (item_value: like item)
ensure
item = item_value
end of expanded CHARACTER
All classes inherit from ANY, ANY inherits from
PLATFORM
and PLATFORM inherits from GENERAL.
Generated by short -html_deb on 31 March 2005.