class REPERTOIRE |
---|
**** |
__This_class_implements_the_tables_needed_for_use_when_carrying_out ___ordering_in_accordance_with_ISO/IEC_14651/2_standards.___It_permits ___individual_weights_to_be_determined_by_some_ordering_mechanism,_in ___addition_to_providing_for_equality_testing. |
attr charmap : REP_MAP ; |
---|
attr maps : FLIST{ORDERING} ; |
---|
**** |
________At_repertoire_creation_time_these_maps_are_created,_keyed_on_the ___code_independent_character_tokens,_yielding_an_array_of_weights_which_is ___to_be_handled_in_accordance_with_the_ordering_rules. |
attr undefined : RANGE_ORDERING ; |
---|
**** | This provides a default order for a complete character code
___repertoire,_provided_that_a_token_is_not_found_in_any_other_rule! |
Leaf_Name_ref : STR |
---|
**** | This routine creates and returns the name of the default file name "order"
__in_the_Resources_sub-directory_as_a_reference_string. |
create(cult : CULTURE) : SAME |
---|
default : SAME |
---|
**** |
________This_routine_returns_a_default_object_-_which_may_involve_retrieving ___data_from_the_Operating_System_current_culture_specifications. |
earlier(low,high : CHAR) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_than ___second_in_the_collating_sequence_irrespective_of_their_encoding. |
earlier(low,high : CHAR_CODE) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_than ___second_in_the_collating_sequence_irrespective_of_their_encoding. |
earlier(low,high : CODE_STR) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_in_the ___collating_sequence_than_second,_irrespective_of_their_encoding. |
earlier(low,high : RUNE) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_than ___second_in_the_collating_sequence_irrespective_of_their_encoding. |
earlier(low,high : RUNES) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_in_the ___collating_sequence_than_second,_irrespective_of_their_encoding. |
earlier(low,high : STR) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_in_the ___collating_sequence_than_second,_irrespective_of_their_encoding. |
same(first,second : CHAR) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_than ___second_in_the_collating_sequence_irrespective_of_their_encoding. ___In_order_to_simplify_encoding_the_individual_characters_are_treated_as ___being_strings_of_single_characters. |
same(first,second : CHAR_CODE) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_the_same_character ___irrespective_of_their_encoding.__In_order_to_simplify_encoding_the ___individual_characters_are_treated_as_being_strings_of_single_characters. |
same(first,second : CODE_STR) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_and_second_are ___synonymous_characters_irrespective_of_their_encoding. |
same(first,second : RUNE) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_is_earlier_than ___second_in_the_collating_sequence_irrespective_of_their_encoding. ___In_order_to_simplify_encoding_they_individual_characters_are_treated_as ___being_strings_of_single_characters. |
same(first,second : RUNES) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_and_second_are ___synonymous_characters_irrespective_of_their_encoding. |
same(first,second : STR) : BOOL |
---|
**** |
________This_predicate_returns_true_if_and_only_if_first_and_second_are ___synonymous_characters_irrespective_of_their_encoding. |
weights(tok : TOKEN) : TUP{ARRAY{ORDER_WEIGHT},ARRAY{ORDER_RULE}} |
---|
build_a_map(index : BIN_CURSOR) : ORDERING |
---|
build_range_map(index : BIN_CURSOR, loc_rules : ARRAY{ORDER_RULE}) : RANGE_ORDERING |
---|
build_rules(cursor : BIN_CURSOR) : ARRAY{ORDER_RULE} |
---|
attr charmap : REP_MAP ; |
---|
compare(first,second : CODE_STR,equality : BOOL) : BOOL |
---|
**** | This predicate returns true if and only if first and second are
___either_equal_(if_equality_is_true)_or_first_is_less_than_second_if ___equality_is_false! |
init : SAME |
---|
**** |
________This_routine_returns_the_current_object_or_default_if_self_is_void. |
initialise : SAME |
---|
**** |
________This_routine_returns_the_default_repertoire_object_by_creating_it! |
make_tokens(str : CODE_STR) : FLIST{TOKEN} |
---|
make_weights(toks : FLIST{TOKEN},out rules : ARRAY{ORDER_RULE}) : FLIST{ARRAY{ORDER_WEIGHT}} |
---|
attr maps : FLIST{ORDERING} ; |
---|
**** |
________At_repertoire_creation_time_these_maps_are_created,_keyed_on_the ___code_independent_character_tokens,_yielding_an_array_of_weights_which_is ___to_be_handled_in_accordance_with_the_ordering_rules. |
one_pass(first : FLIST{ARRAY{ORDER_WEIGHT}},second : FLIST{ARRAY{ORDER_WEIGHT}},index : CARD,rule : ORDER_RULE,for_equality : BOOL) : BOOL |
---|
**** | This private predicate carries out a single pass through the two
___arrays_with_the_given_index_and_direction_-_either_for_equality_or_first ___being_earlier_than_second.__True_is_returned_if_and_only_if_the_required ___relation_is_satisfied_by_the_two_lists. |
shared priv_default : SAME ; |
---|
shared priv_default : SAME ; |
---|
attr undefined : RANGE_ORDERING ; |
---|
**** | This provides a default order for a complete character code
___repertoire,_provided_that_a_token_is_not_found_in_any_other_rule! |