]> gitweb.factorcode.org Git - factor.git/blobdiff - core/assocs/assocs.factor
sequences: fix `from` words
[factor.git] / core / assocs / assocs.factor
index d3d870a94b312f81bff891b275871c05321f8424..4d168127a95b201d1738e71eeec530d8517d7ccd 100644 (file)
@@ -211,12 +211,16 @@ M: assoc values [ nip ] { } assoc>map ;
 
 : at+ ( n key assoc -- ) [ 0 or + ] change-at ; inline
 
+: at+* ( n key assoc -- old ) [ 0 or [ + ] keep swap ] change-at ; inline
+
 : inc-at ( key assoc -- ) [ 1 ] 2dip at+ ; inline
 
 : of+ ( assoc key n -- assoc ) '[ 0 or _ + ] change-of ; inline
 
 : inc-of ( assoc key -- assoc ) 1 of+ ; inline
 
+: inc-at* ( key assoc -- old ) [ 1 ] 2dip at+* ; inline
+
 : map>assoc ( ... seq quot: ( ... elt -- ... key value ) exemplar -- ... assoc )
     dup sequence? [
         [ [ 2array ] compose ] dip map-as