added front-end/finished-complete-program
svn: r11084
This commit is contained in:
parent
4b06568982
commit
7d8d1bc37b
|
@ -49,6 +49,7 @@
|
|||
|
||||
(define lang%
|
||||
(class* object% (drscheme:language:language<%>)
|
||||
(define/public (front-end/finished-complete-program settings) (void))
|
||||
(define/public (extra-repl-information settings port) (void))
|
||||
(define/public (get-reader-module) #f)
|
||||
(define/public (get-metadata a b) #f)
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
default-settings?
|
||||
|
||||
front-end/complete-program
|
||||
front-end/finished-complete-program
|
||||
front-end/interaction
|
||||
config-panel
|
||||
on-execute
|
||||
|
@ -480,6 +481,9 @@
|
|||
(inherit get-module get-transformer-module use-namespace-require/copy-from-setting?
|
||||
get-init-code use-mred-launcher get-reader)
|
||||
|
||||
(define/public (front-end/finished-complete-program settings) (void))
|
||||
(define/public (module-based-language->language-mixin settings) (void))
|
||||
|
||||
(define/pubment (capability-value s)
|
||||
(inner (get-capability-default s) capability-value s))
|
||||
|
||||
|
|
|
@ -1103,6 +1103,8 @@ TODO
|
|||
(update-running #f)
|
||||
(cleanup)
|
||||
(flush-output (get-value-port))
|
||||
(when complete-program?
|
||||
(send lang front-end/finished-complete-program settings))
|
||||
(queue-system-callback/sync
|
||||
(get-user-thread)
|
||||
(λ () ; =Kernel=, =Handler=
|
||||
|
|
|
@ -430,6 +430,7 @@
|
|||
(define (java-lang-mixin level name number one-line dyn? manual-dirname)
|
||||
(when dyn? (dynamic? #t))
|
||||
(class* object% (drscheme:language:language<%>)
|
||||
(define/public (front-end/finished-complete-program settings) (void))
|
||||
(define/public (extra-repl-information settings port) (void))
|
||||
(define/public (get-reader-module) #f)
|
||||
(define/public (get-metadata a b) #f)
|
||||
|
|
|
@ -682,19 +682,36 @@ or
|
|||
and the use of the expanded code dictates which applies.
|
||||
|
||||
See also
|
||||
@method[drscheme:language:language<%> front-end/interaction].
|
||||
@method[drscheme:language:language<%> front-end/interaction]
|
||||
and
|
||||
@method[drscheme:language:language<%> front-end/finished-complete-program].
|
||||
}
|
||||
|
||||
@defmethod[(front-end/finished-complete-program [settings settings]) any]{
|
||||
This method is called when @onscreen{Run} is clicked, but only after
|
||||
@method[drscheme:language:language<%> front-end/complete-program]
|
||||
has been called. Specifically,
|
||||
@method[drscheme:language:language<%> front-end/complete-program] is
|
||||
first called to get a thunk that reads from the program. That thunk
|
||||
is called some number of times, eventually returning @scheme[eof-object],
|
||||
or raising an exception. Then, this method is called.
|
||||
|
||||
This method is called on the user's main eventspace thread, and without
|
||||
a prompt or other control delimiter. It must return without raising an
|
||||
error, or else the DrScheme window will be wedged.
|
||||
}
|
||||
|
||||
@defmethod[(front-end/interaction [port input-port]
|
||||
[settings settings])
|
||||
(-> (or/c sexp/c syntax? eof-object?))]{
|
||||
This method is just like
|
||||
@method[drscheme:language:language<%> front-end/complete-program] except that it is called with program fragments,
|
||||
for example the expressions entered in the interactions
|
||||
window. It is also used in other contexts by
|
||||
tools to expand single expressions.
|
||||
@method[drscheme:language:language<%> front-end/complete-program]
|
||||
except that it is called with program fragments, for example the
|
||||
expressions entered in the interactions window. It is also used in
|
||||
other contexts by tools to expand single expressions.
|
||||
|
||||
See also
|
||||
@method[drscheme:langauge:language<%> front-end/finished-complete-program].
|
||||
}
|
||||
|
||||
@defmethod[(get-comment-character)
|
||||
|
|
Loading…
Reference in New Issue
Block a user