]> gitweb.factorcode.org Git - factor.git/commitdiff
assocs.extras: adding deep-at.
authorJohn Benediktsson <mrjbq7@gmail.com>
Tue, 15 May 2012 00:04:52 +0000 (17:04 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Tue, 15 May 2012 00:04:52 +0000 (17:04 -0700)
extra/assocs/extras/extras-tests.factor [new file with mode: 0644]
extra/assocs/extras/extras.factor

diff --git a/extra/assocs/extras/extras-tests.factor b/extra/assocs/extras/extras-tests.factor
new file mode 100644 (file)
index 0000000..b70819b
--- /dev/null
@@ -0,0 +1,7 @@
+
+USING: assocs.extras tools.test ;
+
+IN: assocs.extras
+
+{ f } [ H{ } { 1 2 3 } deep-at ] unit-test
+{ 4 } [ H{ { 1 H{ { 2 H{ { 3 4 } } } } } } { 1 2 3 } deep-at ] unit-test
index 8fd267cbc83830e1988eeae3f6c280c6e3cde9fa..18b84780421a86e47be588e634c266ab87aa10e3 100644 (file)
@@ -11,3 +11,5 @@ IN: assocs.extras
 : assoc-sift ( assoc -- assoc' )
     [ nip ] assoc-filter ; inline
 
+: deep-at ( assoc seq -- value/f )
+    [ swap at ] each ;