immutable class CHAR_CODE < $ORDERED{CHAR_CODE}, $BINARY, $TEXT, $HASH
****

________This_class_provides_an_implementation_version_of_individual_character
___codes_as_they_may_appear_in_mapping_conversions,_etc.__This_class_is_for
___an_individual_code_and_should_not_be_confused_with_a_'code_sequence'_which
___may_be_needed_to_form_a_complete_character.


Flattened version is here

Ancestors
$HASH $IS_EQ $TEXT $STR
$BINARY $ORDERED{_} $IS_LT{_} $VALUE{_}
$NIL $IS_NIL



Public


Constants
const asize : CARD := 4 ;
const lib_check:BOOL:=false;
**** for debug

Features
X_invariant:BOOL
binstr : BINSTR
****
build(cursor : BIN_CURSOR) : SAME
card : CARD
****
char : CHAR
****
create(str : BINSTR,lib : LIBCHARS) : SAME
create( val : CARD,lib : LIBCHARS) : SAME
create(ch : CHAR,lib : LIBCHARS) : SAME
hash : CARD
inspect
inspect(lib:LIBCHARS)
invalid : SAME
**** This routine returns a code value which is greater than the maximumvalue (0x7FFFFFFF) to indicate some erroneous behaviour.
is_combining : BOOL
**** This predicate returns true if and only if self is a combining
___encoding_in_the_Unicode_domain.
is_eq(other : SAME) : BOOL
**** This predicate returns true if and only if self and other are the
___same,_otherwise_false.
is_eq_kind(other:SAME):BOOL
is_lt(other : SAME) : BOOL
is_nil : BOOL
**** This routine returns true if and only if the value of self is the
___nil_value,_otherwise_false.
is_valid(val : CARD,lib : LIBCHARS) : BOOL
**** This predicate is used to test if val will fit into the
___number_of_bits_available_for_codes_using_lib.___It_returns_true_if_and
___only_if_the_value_will_fit.
lib : LIBCHARS
**** This routine returns the actual repertoire and encoding used by
___this_class_object.
next : SAME
**** This successor routine is provided to enable simple sequential code
___operations_to_be_carried_out.__Note_that_the_successor_of_the_bit-pattern
___with_all_bits_set_is_that_with_no_bits_set_as_the_semantics_attributed_are
___those_of_the_closed_field_class_FIELD.
nil : SAME
**** This routine returns the nil value - which is an illegal code value.
null : SAME
**** This routine returns a null code as a means of initialising an object.
offset( cnt : INT) : SAME
raw_binstr : BINSTR
****
raw_build(cursor : BIN_CURSOR,lib : LIBCHARS) : SAME
rune : RUNE
valid_number(lib : LIBCHARS) : BOOL
**** This predicate is used to test if self CHAR_CODE will fit into the
___number_of_bits_available_for_codes_using_lib.
It returns true if and only if the value will fit.
valid_number: BOOL

Iters
octet!(once cnt : CARD) : OCTET
**** This iter yields cnt successive octets of self finishing at the least significant octet!
octet!: OCTET
**** This iter yields successive octets of self starting at the most significant octet!


Private

in_size(offset : CARD) : BOOL
**** This predicate calculates if the result of offsetting code by the
___given_POSITIVE_value_will_still_be_within_the_code_range_-_or_not!
priv_create(val : CARD,lib : LIBCHARS) : SAME
**** This private routine creates a new character code which has the
___value_given.____This_private_version_permits_the_creation_of_the
___'Invalid'_value!__Note_that_the_required_conversion_order_is_the_REVERSE
___of_binstr_(MSB_first)_order.
attr priv_lib : CARD ;
**** This is the index into the shared lib_list.
attr priv_lib : CARD ;
**** This is the index into the shared lib_list.

The Sather Home Page