class STR < $TEXT_STRING{CHAR,FSTR,STR}, $OPTION, $EXTERNAL_REF, $ANCHORED_FMT
****

________This_class_provides_a_string_implementation_in_which_each_character
___has_a_single_encoding.__The_strings_are_provided_with_immutable_semantics.
___Any_literal_strings_used_in_the_program_text_are_of_this_class.

___NOTE_1.___Where_the_local_environment_encoding_differs_from_that_in_the
________compilation_environment_then_literal_text_strings_are_unlikely_to_be
________meaningful_-_except_by_happenstance!

________2.___This_class_may_be_used_for_any_encoding_for_which_there_are_no
________combining_characters.__However,_it_is_primarily_intended_for
________characters_as_known_in_the_program_execution_environment.__The
________classes_OCT_STR,_HEX_STR_and_QUAD_STR_are_available_for_other_string
________manipulations_as_required_-_although_they_do_not_embody_value
________conversions_to_or_from_text_representations.


Flattened version is here

Ancestors
$ANCHORED_FMT $FMT $STR $EXTERNAL_REF
$REFERENCE $OPTION $TEXT_STRING{_,_,_} $BINARY
$SEARCH{_,_} $STRINGS $HASH $IS_EQ
$NIL $IS_NIL $TEXT_STRING{_} $STRING{_}
$LISTS{_} $ARR{_} $RO_ARR{_} $CONTAINER{_}
$COPY $FILTERS{_} $ELT{_} $ELT



Public


Readable Attributes
attr width : CARD ;
**** the width as determined from OS

Features
aget(index : CARD) : CHAR
as_literal : STR
aset(index : CARD, elem : CHAR)
binstr : BINSTR
char(index : CARD) : CHAR
convert(lib : LIBCHARS) : SAME
create(sz : CARD) : SAME
****
__This_routine_is_the_version_of_creation_which_assumes_the_default
__cultural_repertoire_and_environment.
create(sz : CARD, lib : LIBCHARS) : SAME
****
__This_routine_is_the_'general'_creation_one_which_is_called_by_all_of
__the_others_in_which_the_size_is_expected_to_be_the_number_of_character__codes!
create(ch : CHAR) : SAME
****
__This_routine_creates_and_then_returns_a_single_element_character_string.
create(ch : CHAR, lib : LIBCHARS) : SAME
****
__This_routine_creates_and_then_returns_a_single_element_character_string.
create(ch_code : CHAR_CODE) : SAME
****
__This_routine_creates_a_new_single_character_string_from_the_argument.
create(lib : LIBCHARS) : SAME
****
__This_routine_returns_an_empty_character_string.
create(rns : RUNES) : SAME
create : SAME
****
__This_routine_returns_an_empty_character_string.
create_from_external_string(str_ref : REFERENCE) : SAME
create_from_external_string(str_ref : REFERENCE, lib : LIBCHARS) : SAME
cursor : STR_CURSOR
default_lib : SAME
escape(esc : CHAR, elist : SAME) : SAME
from_fstr(fstr : FSTR) : SAME
pretty : STR
raw_create(length : CARD) : SAME
****
__This_routine_must_NOT_be_used_outside_the_required_library_where_it
__has_a_special_function_in_determining_the_local_character_sizes.
replace(set : SAME, new_ch : CHAR) : SAME
size : CARD

Iters
separate!(str : SAME) : SAME
split!(once ch : CHAR) : SAME


Private

buffer_scan
****
__This_is_a_do-nothing_dummy_to_satisfy_some_of_the_common_TEXT_STRING_requirements
do_replace(old_ch, new_ch : CHAR) : SAME
****
__This_routine_returns_a_copy_of_self_which_has_had_every_occurrence_of
__old_ch_replaced_by_new_ch.
store_index(elem_index : CARD) : CARD
attr width : CARD ;
**** the width as determined from OS

The Sather Home Page