class
	UC_STRING

General
	cluster: kernel
	description: "Unicode strings"
	create: make, make_empty, make_from_string, make_from_utf8, make_filled, make_filled_code, make_filled_unicode, make_from_substring, make_from_utf16, make_from_utf16le, make_from_utf16be, make_from_string_general, make_from_substring_general

Ancestors
	ANY
	DEBUG_OUTPUT*
	KI_TEXT_OUTPUT_STREAM*
	KL_COMPARABLE*
	KL_IMPORTED_ANY_ROUTINES
	KL_IMPORTED_INTEGER_ROUTINES
	KL_SHARED_PLATFORM
	KL_STRING
	KL_STRING
	UC_IMPORTED_UNICODE_ROUTINES
	UC_IMPORTED_UTF16_ROUTINES
	UC_IMPORTED_UTF32_ROUTINES
	UC_IMPORTED_UTF8_ROUTINES
	UC_STRING_HANDLER

Queries
	adapt (s: STRING_8): [like Current] UC_STRING
	additional_space: INTEGER_32
	Any_: KL_ANY_ROUTINES
	as_lower: [like Current] UC_STRING
	as_string: STRING_8
	as_string_32: STRING_32
	as_string_8: STRING_8
	as_upper: [like Current] UC_STRING
	at alias "@" (i: INTEGER_32): CHARACTER_8
	byte_capacity: INTEGER_32
	byte_count: INTEGER_32
	byte_index (i: INTEGER_32): INTEGER_32
	case_insensitive_hash_code: INTEGER_32
	Changeable_comparison_criterion: BOOLEAN
	character_32_has (c: [like character_32_item] CHARACTER_32): BOOLEAN
	character_32_index_of (c: [like character_32_item] CHARACTER_32; start_index: INTEGER_32): INTEGER_32
	character_32_item (i: INTEGER_32): CHARACTER_32
	character_32_last_index_of (c: [like character_32_item] CHARACTER_32; start_index_from_end: INTEGER_32): INTEGER_32
	character_32_occurrences (c: CHARACTER_32): INTEGER_32
	character_item_at_byte_index (i: INTEGER_32): CHARACTER_8
	cloned_string: [like Current] UC_STRING
	code_occurrences (a_code: INTEGER_32): INTEGER_32
	count: INTEGER_32
	current_string: STRING_8
	debug_output: STRING_8
	ends_with (s: READABLE_STRING_8): BOOLEAN
	ends_with_general (s: READABLE_STRING_GENERAL): BOOLEAN
	Eol: STRING_8
	Extendible: BOOLEAN
	False_constant: STRING_8
	full: BOOLEAN
	fuzzy_index (other: READABLE_STRING_GENERAL; start, fuzz: INTEGER_32): INTEGER_32
	Growth_percentage: INTEGER_32
	has (c: CHARACTER_8): BOOLEAN
	has_item_code (a_code: INTEGER_32): BOOLEAN
	has_substring (other: STRING_8): BOOLEAN
	has_unicode (c: UC_CHARACTER): BOOLEAN
	has_unicode_substring (other: READABLE_STRING_GENERAL): BOOLEAN
	hash_code: INTEGER_32
	head (n: INTEGER_32): [like Current] UC_STRING
	index_of (c: CHARACTER_8; start_index: INTEGER_32): INTEGER_32
	index_of_item_code (a_code, start_index: INTEGER_32): INTEGER_32
	index_of_unicode (c: UC_CHARACTER; start_index: INTEGER_32): INTEGER_32
	Integer_: KL_INTEGER_ROUTINES
	is_ascii: BOOLEAN
	is_boolean: BOOLEAN
	is_case_insensitive_equal_general (other: READABLE_STRING_GENERAL): BOOLEAN
	is_closable: BOOLEAN
	is_double: BOOLEAN
	is_empty: BOOLEAN
	is_encoded_first_byte (i: INTEGER_32): BOOLEAN
	is_equal (other: [like Current] UC_STRING): BOOLEAN
	is_greater alias ">" (other: [like Current] UC_STRING): BOOLEAN
	is_greater_equal alias ">=" (other: [like Current] UC_STRING): BOOLEAN
	is_hashable: BOOLEAN
	is_immutable: BOOLEAN
	is_inserted (v: CHARACTER_8): BOOLEAN
	is_integer: BOOLEAN
	is_integer_16: BOOLEAN
	is_integer_32: BOOLEAN
	is_integer_64: BOOLEAN
	is_integer_8: BOOLEAN
	is_less alias "<" (other: [like Current] UC_STRING): BOOLEAN
	is_less_equal alias "<=" (other: [like Current] UC_STRING): BOOLEAN
	is_natural: BOOLEAN
	is_natural_16: BOOLEAN
	is_natural_32: BOOLEAN
	is_natural_64: BOOLEAN
	is_natural_8: BOOLEAN
	is_number_sequence: BOOLEAN
	is_open_write: BOOLEAN
	is_real: BOOLEAN
	is_real_32: BOOLEAN
	is_real_64: BOOLEAN
	is_real_sequence: BOOLEAN
	Is_string_32: BOOLEAN
	Is_string_8: BOOLEAN
	is_substring_whitespace (start_index, end_index: INTEGER_32): BOOLEAN
	Is_valid_as_string_8: BOOLEAN
	is_whitespace: BOOLEAN
	item (i: INTEGER_32): CHARACTER_8
	item_code (i: INTEGER_32): INTEGER_32
	item_code_at_byte_index (i: INTEGER_32): INTEGER_32
	last_index_of (c: CHARACTER_8; start_index_from_end: INTEGER_32): INTEGER_32
	last_index_of_code (c: [like code] NATURAL_32; start_index_from_end: INTEGER_32): INTEGER_32
	linear_representation: LINEAR [CHARACTER_8]
	Lower: INTEGER_32
	max (other: [like Current] UC_STRING): [like Current] UC_STRING
	min (other: [like Current] UC_STRING): [like Current] UC_STRING
	Minimal_increase: INTEGER_32
	mirrored: [like Current] UC_STRING
	Mismatch_information: MISMATCH_INFORMATION
	Name: STRING_8
	new_character_32_cursor: STRING_ITERATION_CURSOR
	new_cursor: STRING_8_ITERATION_CURSOR
	new_empty_string (suggested_capacity: INTEGER_32): [like Current] UC_STRING
	next_byte_index (i: INTEGER_32): INTEGER_32
	object_comparison: BOOLEAN
	occurrences (c: CHARACTER_8): INTEGER_32
	old_infix_less (other: [like Current] UC_STRING): BOOLEAN
	old_is_empty: BOOLEAN
	old_is_equal (other: [like Current] UC_STRING): BOOLEAN
	out: STRING_8
	Platform: KL_PLATFORM
	plus alias "+" (other: READABLE_STRING_8): [like Current] UC_STRING
	prefixed_string (other: STRING_8): [like Current] UC_STRING
	prunable: BOOLEAN
	resizable: BOOLEAN
	same_caseless_characters (other: READABLE_STRING_8; start_pos, end_pos, index_pos: INTEGER_32): BOOLEAN
	same_caseless_characters_general (other: READABLE_STRING_GENERAL; start_pos, end_pos, index_pos: INTEGER_32): BOOLEAN
	same_characters (other: READABLE_STRING_8; start_pos, end_pos, index_pos: INTEGER_32): BOOLEAN
	same_characters_general (other: READABLE_STRING_GENERAL; start_pos, end_pos, index_pos: INTEGER_32): BOOLEAN
	same_string (other: READABLE_STRING_8): BOOLEAN
	same_string_general (other: READABLE_STRING_GENERAL): BOOLEAN
	same_unicode_string (other: READABLE_STRING_GENERAL): BOOLEAN
	shifted_byte_index (i, n: INTEGER_32): INTEGER_32
	split (a_separator: CHARACTER_32): LIST [[like Current] UC_STRING]
	starts_with (s: READABLE_STRING_8): BOOLEAN
	starts_with_general (s: READABLE_STRING_GENERAL): BOOLEAN
	string: STRING_8
	string_representation: STRING_8
	substring (start_index, end_index: INTEGER_32): [like Current] UC_STRING
	substring_index (other: STRING_8; start_index: INTEGER_32): INTEGER_32
	substring_index_in_bounds (other: READABLE_STRING_GENERAL; start_pos, end_pos: INTEGER_32): INTEGER_32
	tail (n: INTEGER_32): [like Current] UC_STRING
	three_way_comparison (other: [like Current] UC_STRING): INTEGER_32
	three_way_unicode_comparison (other: STRING_8): INTEGER_32
	to_boolean: BOOLEAN
	to_c: ANY
	to_cil: SYSTEM_STRING
	to_double: REAL_64
	to_integer: INTEGER_32
	to_integer_16: INTEGER_16
	to_integer_32: INTEGER_32
	to_integer_64: INTEGER_64
	to_integer_8: INTEGER_8
	to_natural: NATURAL_32
	to_natural_16: NATURAL_16
	to_natural_32: NATURAL_32
	to_natural_64: NATURAL_64
	to_natural_8: NATURAL_8
	to_real: REAL_32
	to_real_32: REAL_32
	to_real_64: REAL_64
	to_string_8: STRING_8
	to_utf16_be: STRING_8
	to_utf16_le: STRING_8
	to_utf32_be: STRING_8
	to_utf32_le: STRING_8
	to_utf8: STRING_8
	True_constant: STRING_8
	Unicode: UC_UNICODE_ROUTINES
	unicode_item (i: INTEGER_32): UC_CHARACTER
	unicode_occurrences (c: UC_CHARACTER): INTEGER_32
	unicode_substring_index (other: READABLE_STRING_GENERAL; start_index: INTEGER_32): INTEGER_32
	Utf16: UC_UTF16_ROUTINES
	Utf32: UC_UTF32_ROUTINES
	Utf8: UC_UTF8_ROUTINES
	valid_index (i: INTEGER_32): BOOLEAN

Commands
	adapt_size
	adjust
	append (a_string: READABLE_STRING_8)
	append_boolean (b: BOOLEAN)
	append_character (c: CHARACTER_8)
	append_double (d: REAL_64)
	append_integer (i: INTEGER_32)
	append_integer_16 (i: INTEGER_16)
	append_integer_64 (i: INTEGER_64)
	append_integer_8 (i: INTEGER_8)
	append_item_code (a_code: INTEGER_32)
	append_natural_16 (i: NATURAL_16)
	append_natural_32 (i: NATURAL_32)
	append_natural_64 (i: NATURAL_64)
	append_natural_8 (i: NATURAL_8)
	append_real (r: REAL_32)
	append_stream (an_input_stream: KI_INPUT_STREAM [CHARACTER_8])
	append_string (s: detachable READABLE_STRING_8)
	append_string_general (s: READABLE_STRING_GENERAL)
	append_substring (s: READABLE_STRING_8; start_index, end_index: INTEGER_32)
	append_substring_general (s: READABLE_STRING_GENERAL; start_index, end_index: INTEGER_32)
	append_unicode_character (c: UC_CHARACTER)
	append_utf16 (s: STRING_8)
	append_utf16be (s: STRING_8)
	append_utf16le (s: STRING_8)
	append_utf8 (s: STRING_8)
	automatic_grow
	center_justify
	character_justify (pivot: CHARACTER_8; position: INTEGER_32)
	close
	compare_objects
	compare_references
	copy (other: [like Current] UC_STRING)
	correct_mismatch
	extend (c: CHARACTER_8)
	fill (other: CONTAINER [CHARACTER_8])
	fill_blank
	fill_character (c: CHARACTER_8)
	fill_with (c: CHARACTER_8)
	fill_with_code (a_code: INTEGER_32)
	fill_with_unicode (c: UC_CHARACTER)
	flush
	from_c (c_string: POINTER)
	from_c_substring (c_string: POINTER; start_pos, end_pos: INTEGER_32)
	gobo_append_substring (a_string: STRING_8; s, e: INTEGER_32)
	grow (newsize: INTEGER_32)
	insert_character (c: CHARACTER_8; i: INTEGER_32)
	insert_code (a_code, i: INTEGER_32)
	insert_string (a_string: READABLE_STRING_8; i: INTEGER_32)
	insert_unicode_character (c: UC_CHARACTER; i: INTEGER_32)
	keep_head (n: INTEGER_32)
	keep_tail (n: INTEGER_32)
	left_justify
	make (suggested_capacity: INTEGER_32)
	make_from_c (c_string: POINTER)
	make_from_c_substring (c_string: POINTER; start_pos, end_pos: INTEGER_32)
	make_from_cil (a_system_string: detachable SYSTEM_STRING)
	make_from_string (a_string: STRING_8)
	multiply (n: INTEGER_32)
	precede (c: CHARACTER_8)
	prepend (s: READABLE_STRING_8)
	prepend_boolean (b: BOOLEAN)
	prepend_character (c: CHARACTER_8)
	prepend_double (d: REAL_64)
	prepend_integer (i: INTEGER_32)
	prepend_real (r: REAL_32)
	prepend_string (s: detachable STRING_8)
	prepend_string_general (s: READABLE_STRING_GENERAL)
	prepend_substring (s: READABLE_STRING_8; start_index, end_index: INTEGER_32)
	prepend_substring_general (s: READABLE_STRING_GENERAL; start_index, end_index: INTEGER_32)
	prune (c: CHARACTER_8)
	prune_all (c: CHARACTER_8)
	prune_all_leading (c: CHARACTER_8)
	prune_all_trailing (c: CHARACTER_8)
	put (c: CHARACTER_8; i: INTEGER_32)
	put_boolean (b: BOOLEAN)
	put_integer (i: INTEGER_32)
	put_integer_16 (i: INTEGER_16)
	put_integer_32 (i: INTEGER_32)
	put_integer_64 (i: INTEGER_64)
	put_integer_8 (i: INTEGER_8)
	put_item_code (a_code, i: INTEGER_32)
	put_line (a_string: STRING_8)
	put_natural_16 (i: NATURAL_16)
	put_natural_32 (i: NATURAL_32)
	put_natural_64 (i: NATURAL_64)
	put_natural_8 (i: NATURAL_8)
	put_new_line
	put_string (a_string: STRING_8)
	put_substring (a_string: STRING_8; s, e: INTEGER_32)
	put_unicode (c: UC_CHARACTER; i: INTEGER_32)
	remove (i: INTEGER_32)
	remove_head (n: INTEGER_32)
	remove_substring (start_index, end_index: INTEGER_32)
	remove_tail (n: INTEGER_32)
	replace_blank
	replace_substring (a_string: STRING_8; start_index, end_index: INTEGER_32)
	replace_substring_all (original, new: [like Current] UC_STRING)
	replace_substring_by_string (a_string: STRING_8; start_index, end_index: INTEGER_32)
	resize (newsize: INTEGER_32)
	right_justify
	set (t: READABLE_STRING_8; n1, n2: INTEGER_32)
	subcopy (other: READABLE_STRING_8; start_pos, end_pos, index_pos: INTEGER_32)
	to_lower
	to_upper
	trim
	wipe_out

Constraints
	non negative byte count
	byte count small enough
	count small enough


Generated by ISE EiffelStudio