]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/vocabs/hierarchy/hierarchy.factor
vocabs.loader: make require-all throw restarts.
[factor.git] / basis / vocabs / hierarchy / hierarchy.factor
index 5e0cbd6f95b49e48d87bd215458078077c537344..e4316710226765ade284ec35647aa66d140c279c 100644 (file)
@@ -3,7 +3,7 @@
 USING: accessors arrays assocs combinators.short-circuit fry
 io.directories io.files io.files.types io.pathnames kernel make
 memoize namespaces sequences sorting splitting vocabs sets
-vocabs.loader vocabs.metadata vocabs.errors ;
+vocabs.loader vocabs.metadata ;
 IN: vocabs.hierarchy
 
 TUPLE: vocab-prefix name ;
@@ -133,22 +133,22 @@ PRIVATE>
 : disk-vocabs-in-root ( root -- seq )
     "" disk-vocabs-in-root/prefix ;
 
-: (load-from-root) ( root prefix -- failures )
+<PRIVATE
+
+: vocabs-to-load ( root prefix -- seq )
     disk-vocabs-in-root/prefix
-    [ don't-load? ] reject no-prefixes
-    require-all ;
+    [ don't-load? ] reject no-prefixes ;
+
+PRIVATE>
 
 : load-from-root ( root prefix -- )
-    (load-from-root) load-failures. ;
+    vocabs-to-load require-all ;
 
 : load-root ( root -- )
     "" load-from-root ;
 
-: (load) ( prefix -- failures )
-    [ vocab-roots get ] dip '[ _ (load-from-root) ] map concat ;
-
 : load ( prefix -- )
-    (load) load-failures. ;
+    [ vocab-roots get ] dip '[ _ load-from-root ] each ;
 
 : load-all ( -- )
     "" load ;