class VSET{ETP} < $VSET{ETP}


Ancestors
$VSET{_} $VBAG{_} $HASH $IS_EQ
$RO_BAG{_} $CONTAINER{_} $STR $COPY
$FILTERS{_} $ELT{_} $ELT $RO_SET{_}



Public


Features
add( .. Included as add
array : ARRAY{ELT} .. Included as array
build( cursor : STR_CURSOR) : SAME .. Included as build
****
build(cursor : STR_CURSOR, start, finish : CHAR ) : SAME .. Included as build
concat( .. Included as concat
contains( .. Included as contains
map_copy : SAME .. Included as copy
count( .. Included as count
count_if( .. Included as count_if
create( .. Included as create
create( str : STR ) : SAME .. Included as create
****
create(str : STR, sep : CHAR ) : SAME .. Included as create
****
create( .. Included as create
create : SAME .. Included as create
**** This routine creates a new hash table which has a default size if
___self_is_void,_otherwise_half_the_size_of_self.
create_from( .. Included as create_from
delete( .. Included as delete
delete_all( .. Included as delete_all
delete_and_return( .. Included as delete_and_return
diff( .. Included as diff
elt_eq(first,second : ETP) : BOOL .. Included as elt_eq
**** This is the standard 'less than' predicate used in sorting routines.
___The_using_class_must_specify_an_equality_predicate_routine.
elt_hash(elem : $OB) : CARD .. Included as elt_hash
****
________This_routine_returns_a_hash_value_associated_with_an_element._This
___must_have_the_property_that_if_"elt_eq(first,second)"_then
___"elt_hash(first)=elt_hash(second)"._It_could_be_defined_always_to_return_0,
___but_many_routines_will_then_become_quadratic._This_uses_the_object_"id"_by
___default.___It_may_be_redefined_in_descendants.
elt_lt(first,second : ETP) : BOOL .. Included as elt_lt
****
________This_routine_is_the_standard_predicate_'less_than'_for_use_in
___sorting.___By_default_the_object_identity_components_are_compared.
___It_may_be_redefined_in_descendants.
elt_nil : ETP .. Included as elt_nil
****
________This_routine_returns_the_NIL_value.___If_the_element_class_is_a
___subclass_of_$NIL_then_it_returns_nil,_otherwise_void.
equals( .. Included as equals
every( .. Included as every
exists( .. Included as exists
exists( .. Included as exists
get( .. Included as get
hash : CARD .. Included as hash
insert( .. Included as insert
inspect:STR .. Included as inspect
**** This routine returns a string representation of the contents of self. K.Kodama
intersection( .. Included as intersection
intersection( .. Included as intersection
is_elt_nil( elem : ETP) : BOOL .. Included as is_elt_nil
**** This predicate returns true if and only if elem is NIL.
is_empty : BOOL .. Included as is_empty
is_eq(
is_subset_of( .. Included as is_subset_of
n_unique : CARD .. Included as n_unique
not_every( .. Included as not_every
not_exists( .. Included as not_exists
size : CARD .. Included as size
str( lib : LIBCHARS ) : STR .. Included as str
str(lib : LIBCHARS, sep : CHAR ) : STR .. Included as str
str : STR .. Included as str
****
__This_routine_returns_a_string_representation_of_the_contents_of_self
__in_the_default_repertoire_and_encoding.
sym_diff( .. Included as sym_diff
union( .. Included as union
union( .. Included as union

Iters
elt! : ELT .. Included as elt!
filter!( .. Included as filter!
not_filter!( .. Included as not_filter!
unique! : ETP .. Included as unique!


Private

const Default_Array_Size : CARD := 5 ; .. Included as Default_Array_Size
const Default_Size : CARD := 16 ; .. Included as Default_Size
attr asize : CARD ; .. Included as asize
**** This is the size of the fraction of store which is currently in use.
___Array_access_beyond_this_bound_is_illegal.
attr asize : CARD ; .. Included as asize
**** This is the size of the fraction of store which is currently in use.
___Array_access_beyond_this_bound_is_illegal.
attr bound : CARD ; .. Included as bound
**** This gives the upper bound for split_pos. Is always initial_size * 2.pow(doubles).
attr bound : CARD ; .. Included as bound
**** This gives the upper bound for split_pos. Is always initial_size * 2.pow(doubles).
bucket(index : CARD) : BKT .. Included as bucket
build(cursor : STR_CURSOR, sep : CHAR_CODE, start : CHAR, finish : CHAR ) : SAME .. Included as build
clear .. Included as clear
create_sized(initial_size : CARD) : SAME .. Included as create_sized
delete( .. Included as delete
attr doubles : CARD ; .. Included as doubles
**** The number of times the initial table size has been doubled.
attr doubles : CARD ; .. Included as doubles
**** The number of times the initial table size has been doubled.
elt_eq(first,second : ETP) : BOOL .. Included as elt_key_eq
**** This is the standard 'less than' predicate used in sorting routines.
___The_using_class_must_specify_an_equality_predicate_routine.
elt_hash(elem : $OB) : CARD .. Included as elt_key_hash
****
________This_routine_returns_a_hash_value_associated_with_an_element._This
___must_have_the_property_that_if_"elt_eq(first,second)"_then
___"elt_hash(first)=elt_hash(second)"._It_could_be_defined_always_to_return_0,
___but_many_routines_will_then_become_quadratic._This_uses_the_object_"id"_by
___default.___It_may_be_redefined_in_descendants.
elt_nil : ETP .. Included as elt_key_nil
****
________This_routine_returns_the_NIL_value.___If_the_element_class_is_a
___subclass_of_$NIL_then_it_returns_nil,_otherwise_void.
grow .. Included as grow
hash(elem : ELT) : CARD .. Included as hash
insert( .. Included as insert
insert_replace( .. Included as insert_replace
insert_replace( .. Included as insert_replace
shared lower_fill_ratio : FLT := 0.800 ; .. Included as lower_fill_ratio
shared lower_fill_ratio : FLT := 0.800 ; .. Included as lower_fill_ratio
attr minsize : CARD ; .. Included as minsize
**** This is the lower bound for the store size.
attr minsize : CARD ; .. Included as minsize
**** This is the lower bound for the store size.
attr n_inds : CARD ; .. Included as n_inds
**** This gives the number of elements (resp. indices) in the table.
attr n_inds : CARD ; .. Included as n_inds
**** This gives the number of elements (resp. indices) in the table.
set_bucket(index : CARD, bucket : BKT) .. Included as set_bucket
shrink .. Included as shrink
attr split_pos : CARD ; .. Included as split_pos
**** This is the position of the next bucket to split.
attr split_pos : CARD ; .. Included as split_pos
**** This is the position of the next bucket to split.
attr store : AREF{BKT} ; .. Included as store
**** The data being stored.
attr store : AREF{BKT} ; .. Included as store
**** The data being stored.
update_delete .. Included as update_delete
update_insert .. Included as update_insert
shared upper_fill_ratio : FLT := 1.000 ; .. Included as upper_fill_ratio
**** These two bounds are specified for efficient memory usage. For fast
___access_the_ratio_between_the_number_of_elements_and_the_number_of_cells
___should_be_low.___For_efficient_memory_usage_the_converse_is_true.___Unless
___the_list_is_really_small_the_ration_should_be_between_the_above_bounds.
shared upper_fill_ratio : FLT := 1.000 ; .. Included as upper_fill_ratio
**** These two bounds are specified for efficient memory usage. For fast
___access_the_ratio_between_the_number_of_elements_and_the_number_of_cells
___should_be_low.___For_efficient_memory_usage_the_converse_is_true.___Unless
___the_list_is_really_small_the_ration_should_be_between_the_above_bounds.

The Sather Home Page