{ } [
changed-vocabs get-global
f changed-vocabs set-global
- [ t ] [ "kernel" changed-vocab-by-name? ] unit-test
+ { t } [ "kernel" changed-vocab? ] unit-test
[ "kernel" changed-vocab ] [ changed-vocabs set-global ] [ ] cleanup
] unit-test
SYMBOL: changed-vocabs
-: changed-vocab ( vocab -- )
+: changed-vocab ( vocab-name -- )
dup lookup-vocab changed-vocabs get and
[ changed-vocabs get adjoin ] [ drop ] if ;
: mark-unchanged-vocabs ( vocab-names -- )
[ mark-unchanged-vocab ] each ;
-: changed-vocab-by-name? ( vocab -- ? )
+: changed-vocab? ( vocab-name -- ? )
changed-vocabs get [ in? ] [ drop t ] if* ;
: (to-refresh) ( vocab-name loaded? path -- ? )
[
swap [
- swap changed-vocab-by-name? [
+ swap changed-vocab? [
source-modified?
] [ drop f ] if
] [ 2drop t ] if
[
[ [ lookup-vocab f >>source-loaded? drop ] each ]
[ [ lookup-vocab f >>docs-loaded? drop ] each ] bi*
- ]
- [
+ ] [
union
[ mark-unchanged-vocabs ]
[ require-all ] bi