2009-01-03 10:37:28 -05:00
|
|
|
! Copyright (C) 2008, 2009 Jose Antonio Ortega Ruiz.
|
2008-12-05 22:34:25 -05:00
|
|
|
! See http://factorcode.org/license.txt for BSD license.
|
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
USING: assocs compiler.units fuel.eval fuel.help fuel.remote fuel.xref
|
|
|
|
help.topics io.pathnames kernel namespaces parser sequences
|
|
|
|
tools.scaffold vocabs.loader ;
|
2008-12-05 22:34:25 -05:00
|
|
|
|
|
|
|
IN: fuel
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
! Evaluation
|
2008-12-08 20:36:55 -05:00
|
|
|
|
|
|
|
: fuel-eval-restartable ( -- )
|
|
|
|
t fuel-eval-res-flag set-global ; inline
|
|
|
|
|
|
|
|
: fuel-eval-non-restartable ( -- )
|
|
|
|
f fuel-eval-res-flag set-global ; inline
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-eval-in-context ( lines in usings -- )
|
|
|
|
(fuel-eval-in-context) ;
|
2008-12-05 22:34:25 -05:00
|
|
|
|
|
|
|
: fuel-eval-set-result ( obj -- )
|
2008-12-08 20:36:55 -05:00
|
|
|
clone fuel-eval-result set-global ; inline
|
2008-12-05 22:34:25 -05:00
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-retort ( -- ) fuel-send-retort ; inline
|
2008-12-05 22:34:25 -05:00
|
|
|
|
2008-12-23 16:37:25 -05:00
|
|
|
! Loading files
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
<PRIVATE
|
|
|
|
|
2008-12-30 22:05:34 -05:00
|
|
|
SYMBOL: :uses
|
|
|
|
|
|
|
|
: fuel-set-use-hook ( -- )
|
|
|
|
[ amended-use get clone :uses prefix fuel-eval-set-result ]
|
|
|
|
print-use-hook set ;
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: (fuel-get-uses) ( lines -- )
|
|
|
|
[ parse-fresh drop ] curry with-compilation-unit ; inline
|
|
|
|
|
|
|
|
PRIVATE>
|
|
|
|
|
2008-12-30 22:05:34 -05:00
|
|
|
: fuel-run-file ( path -- )
|
|
|
|
[ fuel-set-use-hook run-file ] curry with-scope ; inline
|
2008-12-18 09:38:40 -05:00
|
|
|
|
2009-01-03 20:36:58 -05:00
|
|
|
: fuel-with-autouse ( ... quot: ( ... -- ... ) -- ... )
|
2009-01-03 10:37:28 -05:00
|
|
|
[ auto-use? on fuel-set-use-hook call ] curry with-scope ; inline
|
2008-12-23 16:37:25 -05:00
|
|
|
|
|
|
|
: fuel-get-uses ( lines -- )
|
|
|
|
[ (fuel-get-uses) ] curry fuel-with-autouse ;
|
|
|
|
|
2008-12-17 18:49:01 -05:00
|
|
|
! Edit locations
|
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-get-word-location ( word -- )
|
|
|
|
word-location fuel-eval-set-result ;
|
2008-12-21 21:07:45 -05:00
|
|
|
|
2008-12-22 00:58:20 -05:00
|
|
|
: fuel-get-vocab-location ( vocab -- )
|
2009-01-22 10:11:44 -05:00
|
|
|
vocab-location fuel-eval-set-result ;
|
2009-01-11 18:52:31 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-get-doc-location ( word -- )
|
|
|
|
doc-location fuel-eval-set-result ;
|
2008-12-20 19:43:28 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-get-article-location ( name -- )
|
|
|
|
article-location fuel-eval-set-result ;
|
2009-01-03 20:36:58 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-get-vocabs ( -- )
|
|
|
|
get-vocabs fuel-eval-set-result ;
|
2008-12-15 17:44:13 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-get-vocabs/prefix ( prefix -- )
|
|
|
|
get-vocabs/prefix fuel-eval-set-result ;
|
2008-12-15 20:09:18 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-get-words ( prefix names -- )
|
|
|
|
get-vocabs-words/prefix fuel-eval-set-result ;
|
2008-12-15 17:44:13 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
! Cross-references
|
2008-12-15 17:44:13 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-callers-xref ( word -- ) callers-xref fuel-eval-set-result ;
|
2009-01-11 18:52:31 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-callees-xref ( word -- ) callees-xref fuel-eval-set-result ;
|
2009-01-11 18:52:31 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-apropos-xref ( str -- ) apropos-xref fuel-eval-set-result ;
|
2009-01-11 18:52:31 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-vocab-xref ( vocab -- ) vocab-xref fuel-eval-set-result ;
|
2008-12-05 22:34:25 -05:00
|
|
|
|
2009-01-22 15:13:38 -05:00
|
|
|
: fuel-vocab-uses-xref ( vocab -- ) vocab-uses-xref fuel-eval-set-result ;
|
|
|
|
|
|
|
|
: fuel-vocab-usage-xref ( vocab -- ) vocab-usage-xref fuel-eval-set-result ;
|
|
|
|
|
2009-01-03 10:37:28 -05:00
|
|
|
! Help support
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-get-article ( name -- ) article fuel-eval-set-result ;
|
2009-01-03 20:36:58 -05:00
|
|
|
|
2009-01-15 18:38:18 -05:00
|
|
|
: fuel-get-article-title ( name -- )
|
2009-01-11 18:52:31 -05:00
|
|
|
articles get at [ article-title ] [ f ] if* fuel-eval-set-result ;
|
2009-01-03 20:36:58 -05:00
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-word-help ( name -- ) (fuel-word-help) fuel-eval-set-result ;
|
2009-01-03 20:36:58 -05:00
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-word-see ( name -- ) (fuel-word-see) fuel-eval-set-result ;
|
2009-01-06 17:08:33 -05:00
|
|
|
|
2009-01-12 22:06:21 -05:00
|
|
|
: fuel-word-def ( name -- ) (fuel-word-def) fuel-eval-set-result ;
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-vocab-help ( name -- ) (fuel-vocab-help) fuel-eval-set-result ;
|
2009-01-06 17:08:33 -05:00
|
|
|
|
2009-02-18 19:33:47 -05:00
|
|
|
: fuel-word-synopsis ( word usings -- ) (fuel-word-synopsis) fuel-eval-set-result ;
|
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-vocab-summary ( name -- )
|
|
|
|
(fuel-vocab-summary) fuel-eval-set-result ;
|
2009-01-06 17:08:33 -05:00
|
|
|
|
2009-01-22 10:11:44 -05:00
|
|
|
: fuel-index ( quot -- ) call format-index fuel-eval-set-result ;
|
|
|
|
|
2009-01-06 17:08:33 -05:00
|
|
|
: fuel-get-vocabs/tag ( tag -- )
|
2009-01-11 08:15:26 -05:00
|
|
|
(fuel-get-vocabs/tag) fuel-eval-set-result ;
|
2009-01-06 17:08:33 -05:00
|
|
|
|
2009-01-11 18:52:31 -05:00
|
|
|
: fuel-get-vocabs/author ( author -- )
|
|
|
|
(fuel-get-vocabs/author) fuel-eval-set-result ;
|
|
|
|
|
2009-01-11 14:07:34 -05:00
|
|
|
! Scaffold support
|
|
|
|
|
|
|
|
: fuel-scaffold-vocab ( root name devname -- )
|
2009-01-11 16:29:11 -05:00
|
|
|
developer-name set dup [ scaffold-vocab ] dip
|
|
|
|
dup require vocab-source-path (normalize-path) fuel-eval-set-result ;
|
2009-01-11 14:07:34 -05:00
|
|
|
|
2009-01-11 14:22:08 -05:00
|
|
|
: fuel-scaffold-help ( name devname -- )
|
|
|
|
developer-name set
|
2009-01-11 14:07:34 -05:00
|
|
|
dup require dup scaffold-help vocab-docs-path
|
|
|
|
(normalize-path) fuel-eval-set-result ;
|
2009-01-11 20:10:13 -05:00
|
|
|
|
2009-01-12 22:06:21 -05:00
|
|
|
: fuel-scaffold-get-root ( name -- ) find-vocab-root fuel-eval-set-result ;
|
|
|
|
|
2009-01-20 20:37:32 -05:00
|
|
|
! Remote connection
|
|
|
|
|
|
|
|
MAIN: fuel-start-remote-listener*
|