diff --git a/collects/scribblings/scheme/scheme.scrbl b/collects/scribblings/scheme/scheme.scrbl index d66316d24a..7e2e2a98c4 100644 --- a/collects/scribblings/scheme/scheme.scrbl +++ b/collects/scribblings/scheme/scheme.scrbl @@ -1,21 +1,33 @@ #lang scribble/manual @(require (for-syntax racket) (for-label (only-in scheme/foreign unsafe! provide* define-unsafer) - (only-in racket/base make-base-namespace make-base-empty-namespace))) + (only-in scheme/base make-base-namespace make-base-empty-namespace) + scheme/gui/base + scheme/sandbox)) @(define-syntax-rule (def-extras unit-struct make-base-namespace-id - make-base-empty-namespace-id) + make-base-empty-namespace-id + sandbox-namespace-specs-id + make-evaluator-id + make-module-evaluator-id) (begin (require (for-label (only-in scheme struct) (only-in racket/base make-base-namespace - make-base-empty-namespace))) + make-base-empty-namespace) + racket/sandbox)) (define unit-struct (racket struct)) (define make-base-namespace-id (racket make-base-namespace)) - (define make-base-empty-namespace-id (racket make-base-empty-namespace)))) + (define make-base-empty-namespace-id (racket make-base-empty-namespace)) + (define sandbox-namespace-specs-id (racket sandbox-namespace-specs)) + (define make-evaluator-id (racket make-evaluator)) + (define make-module-evaluator-id (racket make-module-evaluator)))) @(def-extras unit-struct make-base-namespace-id - make-base-empty-namespace-id) + make-base-empty-namespace-id + sandbox-namespace-specs-id + make-evaluator-id + make-module-evaluator-id) @(define-syntax-rule (compat-except sid rid . rest) (begin @@ -114,7 +126,7 @@ must occur after all the @scheme[provide*] forms to which it refers.} @compat[scheme/mpair racket/mpair] @;------------------------------------------------------------------------ -@section[#:tag "nest"]{schememodname[scheme/nest]} +@section[#:tag "nest"]{@schememodname[scheme/nest]} @defmodule[scheme/nest] @@ -175,6 +187,42 @@ than a precise prose description: @compat[scheme/require-syntax racket/require-syntax] @compat[scheme/require-transform racket/require-transform] @compat[scheme/runtime-path racket/runtime-path] + +@; ---------------------------------------- + +@compat-except[scheme/sandbox racket/sandbox]{, except that +@|sandbox-namespace-specs-id|, @|make-evaluator-id|, and +@|make-module-evaluator-id| are replaced} + +@defparam[sandbox-namespace-specs spec (cons/c (-> namespace?) + (listof module-path?))]{ + +Like @|sandbox-namespace-specs-id| from +@racketmodname[racket/sandbox], but the default is @racket[(list +make-base-namespace)] if @racket[gui?] is @racket[#f], @racket[(list +make-gui-namespace)] if @racket[gui?] is @racket[#t].} + +@defproc*[([(make-evaluator [language (or/c module-path? + (list/c 'special symbol?) + (cons/c 'begin list?))] + [input-program any/c] ... + [#:requires requires (listof (or/c module-path? path?))] + [#:allow-read allow (listof (or/c module-path? path?))]) + (any/c . -> . any)] + [(make-module-evaluator [module-decl (or/c syntax? pair?)] + [#:language lang (or/c #f module-path?)] + [#:allow-read allow (listof (or/c module-path? path?))]) + (any/c . -> . any)])]{ + +Like @|make-evaluator-id| and @|make-module-evaluator-id| from +@racketmodname[racket/sandbox], but the value of the +@racket[sandbox-namespace-specs] parameter is installed as the +value of @|sandbox-namespace-specs-id| from +@racketmodname[racket/sandbox] before chaining to @|make-evaluator-id| +and @|make-module-evaluator-id| from @racketmodname[racket/sandbox].} + +@; ---------------------------------------- + @compat[scheme/serialize racket/serialize] @compat[scheme/set racket/set] @compat[scheme/signature racket/signature]