listener: extract a loaded-vocab? word.
parent
7082246447
commit
6bf3470e62
|
@ -1,10 +1,10 @@
|
||||||
! Copyright (C) 2003, 2009 Slava Pestov.
|
! Copyright (C) 2003, 2009 Slava Pestov.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors colors colors.constants compiler.units
|
USING: accessors colors colors.constants
|
||||||
continuations debugger fry io io.styles kernel lexer locals
|
combinators.short-circuit compiler.units continuations debugger
|
||||||
math math.parser namespaces parser parser.notes prettyprint
|
fry io io.styles kernel lexer locals math math.parser namespaces
|
||||||
sequences sets source-files.errors vocabs vocabs.loader
|
parser parser.notes prettyprint sequences sets
|
||||||
vocabs.parser ;
|
source-files.errors vocabs vocabs.loader vocabs.parser ;
|
||||||
IN: listener
|
IN: listener
|
||||||
|
|
||||||
GENERIC: stream-read-quot ( stream -- quot/f )
|
GENERIC: stream-read-quot ( stream -- quot/f )
|
||||||
|
@ -188,14 +188,18 @@ SYMBOL: interactive-vocabs
|
||||||
"words"
|
"words"
|
||||||
} interactive-vocabs set-global
|
} interactive-vocabs set-global
|
||||||
|
|
||||||
: use-loaded-vocabs ( vocabs -- )
|
: loaded-vocab? ( vocab-spec -- ? )
|
||||||
[ lookup-vocab ] filter
|
{
|
||||||
[
|
|
||||||
lookup-vocab
|
|
||||||
[ find-vocab-root not ]
|
[ find-vocab-root not ]
|
||||||
[ source-loaded?>> +done+ eq? ] bi or
|
[ source-loaded?>> +done+ eq? ]
|
||||||
] filter
|
} 1|| ;
|
||||||
[ use-vocab ] each ;
|
|
||||||
|
: use-loaded-vocabs ( vocabs -- )
|
||||||
|
[
|
||||||
|
lookup-vocab [
|
||||||
|
dup loaded-vocab? [ use-vocab ] [ drop ] if
|
||||||
|
] when*
|
||||||
|
] each ;
|
||||||
|
|
||||||
: with-interactive-vocabs ( quot -- )
|
: with-interactive-vocabs ( quot -- )
|
||||||
[
|
[
|
||||||
|
|
Loading…
Reference in New Issue