assocs.extras vocabulary
Factor handbook ยป Vocabulary index


Summary

Metadata
Parents:assocs
Tags:collections, assocs


Words

Tuple classes
ClassSuperclassSlots
key-exists tuplevalue key assoc


Generic words
WordStack effect
delete-value-at( value assoc -- )


Ordinary words
WordStack effect
?1array( obj -- seq )
?change-of( ..a assoc key quot: ( ..a value -- ..b newvalue ) -- ..b assoc )
?delete-of( assoc key -- assoc value/key ? )
?set-once-at( value key assoc -- value' first-time? )
any-multi-key?( assoc -- ? )
any-multi-value?( assoc -- ? )
assoc-collapse( seq quot: ( value1 value2 -- new-value ) -- assoc )
assoc-collapse!( assoc seq quot: ( value1 value2 -- new-value ) -- assoc )
assoc-collapse-as( seq quot: ( value1 value2 -- new-value ) exemplar -- assoc )
assoc-collect( assoc1 assoc2 -- newassoc )
assoc-collect!( assoc1 assoc2 -- assoc1 )
assoc-each*( ... assoc quot: ( ... value key -- ... ) -- ... )
assoc-interleave( ... assoc between quot: ( ... key value -- ... ) -- ... )
assoc-invert( assoc -- newassoc )
assoc-invert-as( assoc exemplar -- newassoc )
assoc-merge( assoc1 assoc2 quot: ( value1 value2 -- new-value ) -- new-assoc )
assoc-merge!( assoc1 assoc2 quot: ( value1 value2 -- new-value ) -- assoc1' )
assoc-operator*( assoc quot -- alist quot' )
assoc>object( assoc map-quot insert-quot exemplar -- object )
assoc>object!( assoc seq map-quot: ( x -- ..y ) insert-quot: ( ..y assoc -- ) -- object )
change-of( ..a assoc key quot: ( ..a value -- ..b newvalue ) -- ..b assoc )
collect-assoc-by( ... input-assoc quot: ( ... key value -- ... key value ) -- ... assoc )
collect-assoc-by!( ... assoc input-assoc quot: ( ... key value -- ... key' value' ) -- ... assoc )
collect-assoc-by-multi( ... assoc quot: ( ... key value -- ... new-keys value' ) -- ... assoc )
collect-assoc-by-multi!( ... assoc input-assoc quot: ( ... key value -- ... new-keys value' ) -- ... assoc )
collect-by-multi( ... seq quot: ( ... obj -- ... new-keys ) -- ... assoc )
collect-by-multi!( ... assoc seq quot: ( ... obj -- ... new-keys ) -- ... assoc )
collect-index-by( ... seq quot: ( ... obj -- ... key ) -- ... assoc )
collect-index-by!( ... assoc seq quot: ( ... obj -- ... key ) -- ... assoc )
collect-key-by( ... input-assoc quot: ( ... key value -- ... new-key ) -- ... assoc )
collect-key-by!( ... assoc input-assoc quot: ( ... key value -- ... new-key ) -- ... assoc )
collect-key-by-multi( ... assoc quot: ( ... key -- ... new-keys ) -- ... assoc )
collect-key-by-multi!( ... assoc input-assoc quot: ( ... key value -- ... new-keys ) -- ... assoc )
collect-value-by( ... input-assoc quot: ( ... key value -- ... new-key ) -- ... assoc )
collect-value-by!( ... assoc input-assoc quot: ( ... key value -- ... new-key ) -- ... assoc )
collect-value-by-multi( ... assoc quot: ( ... value -- ... new-keys ) -- ... assoc )
collect-value-by-multi!( ... assoc input-assoc quot: ( ... key value -- ... new-keys ) -- ... assoc )
counts( seq elts -- counts )
deep-change-of( assoc seq quot -- )
deep-of( assoc seq -- value/f )
deep-of-but-last( assoc seq -- obj key )
deep-set-of( assoc seq elt -- )
delete-keys-of( assoc keys -- assoc )
delete-of( assoc key -- assoc )
delete-of*( assoc key -- assoc value/f ? )
expand-keys-push( assoc -- hashtable' )
expand-keys-push-as( assoc exemplar -- hashtable' )
expand-keys-push-at( assoc -- hashtable' )
expand-keys-push-at-as( assoc exemplar -- hashtable' )
expand-keys-set-at( assoc -- hashtable' )
expand-keys-set-at-as( assoc exemplar -- hashtable' )
expand-values-push( assoc -- sequence )
expand-values-push-as( assoc exemplar -- assoc )
expand-values-push-at( assoc -- assoc )
expand-values-push-at-as( assoc exemplar -- hashtable' )
expand-values-set-at( assoc -- hashtable' )
expand-values-set-at-as( assoc exemplar -- hashtable' )
flatten-keys( assoc -- assoc' )
flatten-values( assoc -- assoc' )
histogram-diff( hashtable1 hashtable2 -- hashtable3 )
if-assoc-empty( ..a assoc quot1: ( ..a -- ..b ) quot2: ( ..a assoc -- ..b ) -- ..b )
inc-of( assoc key -- assoc )
inc-of*( assoc key -- assoc old new )
intersect-keys( assoc seq -- elts )
intersect-keys-as( assoc seq exemplar -- elts )
key-exists( value key assoc -- * )
key-of?( assoc key -- ? )
kv-with( obj assoc quot -- assoc curried )
maybe-set-of( assoc key value -- assoc changed? )
of*( assoc key -- value/f ? )
of+( assoc key n -- assoc )
of+*( assoc key n -- assoc old new )
push-at-each( value keys assoc -- )
push-of( assoc key value -- assoc )
rekey-assoc( assoc keys -- assoc )
rekey-new-assoc( assoc keys -- newassoc )
rename-of( assoc key newkey -- assoc )
sequence-index>assoc( seq map-quot insert-quot exemplar -- assoc )
sequence-index>hashtable( seq map-quot insert-quot -- hashtable )
sequence>assoc( seq map-quot insert-quot exemplar -- assoc )
sequence>assoc!( assoc seq map-quot: ( x -- ..y ) insert-quot: ( ..y assoc -- ) -- assoc )
sequence>hashtable( seq map-quot insert-quot -- hashtable )
set-of( assoc key value -- assoc )
set-once-at( value key assoc -- )
substitute!( seq assoc -- seq )
values-of( assoc seq -- seq' )


Class predicate words
WordStack effect
key-exists?( object -- ? )


Files


Metadata files