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.


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
aget( .. Included as aget
aset( .. Included as aset
binstr : BINSTR
****
build(cursor : BIN_CURSOR) : SAME
build( .. Included as build
build_based( .. Included as build_based
card : CARD
****
char : CHAR
****
create(str : BINSTR) : SAME .. Included as create
create(str : BINSTR,lib : LIBCHARS) : SAME
create( val : CARD,lib : LIBCHARS) : SAME
create(ch : CHAR,lib : LIBCHARS) : SAME
create( .. Included as create
decimal_str( .. Included as decimal_str
decimal_str( .. Included as decimal_str
decimal_str( .. Included as decimal_str
decimal_str : STR .. Included as decimal_str
fmt( .. Included as fmt
fmt( .. Included as fmt
hash : CARD
hex_str( .. Included as hex_str
hex_str( .. Included as hex_str
hex_str( .. Included as hex_str
hex_str : STR .. Included as hex_str
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(other : $OB) : BOOL .. Included as is_eq
**** This is the generic equality predicate. c.f. the class $IS_EQ
is_eq_kind(other:SAME):BOOL
is_hex( .. Included as is_hex
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_octal( .. Included as is_octal
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.
is_whole( .. Included as is_whole
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.
oct_str( .. Included as oct_str
oct_str : STR .. Included as oct_str
offset( cnt : INT) : SAME
raw_binstr : BINSTR
****
raw_build(cursor : BIN_CURSOR,lib : LIBCHARS) : SAME
read(index : BIN_CURSOR) : SAME .. Included as read
rune : RUNE
str( .. Included as str
str : STR .. Included as str
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
write(fyle : BIN_FILE) .. Included as write

Iters
aelt!( .. Included as aelt!
aelt!( .. Included as aelt!
aelt!( .. Included as aelt!
aelt! : T .. Included as aelt!
aind! : CARD .. Included as aind!
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

const Decimal_Base : CARD := 10 ; .. Included as Decimal_Base
const Default_Base : CARD := Decimal_Base ; .. Included as Default_Base
const Hexadecimal_Base : CARD := 16 ; .. Included as Hexadecimal_Base
const Octal_Base : CARD := 8 ; .. Included as Octal_Base
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!
is_kind( .. Included as is_kind
is_legal_aelts_arg( .. Included as is_legal_aelts_arg
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.
scan( .. Included as scan
zero_filled( .. Included as zero_filled

The Sather Home Page