Renaming permissive? to permissive-xexprs based on Matthias suggestion
svn: r15237
This commit is contained in:
parent
685c964a3e
commit
ad53d3e60d
|
@ -52,8 +52,8 @@
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(let* ([source-name (get-source-name editor)]
|
(let* ([source-name (get-source-name editor)]
|
||||||
[port (open-input-text-editor editor 0 'end (xml-snip-filter editor) source-name)]
|
[port (open-input-text-editor editor 0 'end (xml-snip-filter editor) source-name)]
|
||||||
[xml (parameterize ([permissive? #t]) (read-xml port))]
|
[xml (parameterize ([permissive-xexprs #t]) (read-xml port))]
|
||||||
[xexpr (parameterize ([permissive? #t]) (xml->xexpr (document-element xml)))]
|
[xexpr (parameterize ([permissive-xexprs #t]) (xml->xexpr (document-element xml)))]
|
||||||
[clean-xexpr (if eliminate-whitespace-in-empty-tags?
|
[clean-xexpr (if eliminate-whitespace-in-empty-tags?
|
||||||
(eliminate-whitespace-in-empty-tags xexpr)
|
(eliminate-whitespace-in-empty-tags xexpr)
|
||||||
xexpr)]
|
xexpr)]
|
||||||
|
|
|
@ -566,7 +566,7 @@ END
|
||||||
; XXX correct-xexpr?
|
; XXX correct-xexpr?
|
||||||
|
|
||||||
(test-suite
|
(test-suite
|
||||||
"permissive?"
|
"permissive-xexprs"
|
||||||
(test-exn
|
(test-exn
|
||||||
"Non-permissive"
|
"Non-permissive"
|
||||||
(lambda (exn)
|
(lambda (exn)
|
||||||
|
@ -577,7 +577,7 @@ END
|
||||||
|
|
||||||
(test-false
|
(test-false
|
||||||
"Permissive"
|
"Permissive"
|
||||||
(parameterize ([permissive? #t])
|
(parameterize ([permissive-xexprs #t])
|
||||||
(xml->xexpr #f))))))
|
(xml->xexpr #f))))))
|
||||||
|
|
||||||
(local
|
(local
|
||||||
|
|
|
@ -54,19 +54,19 @@
|
||||||
; Comment = (make-comment String)
|
; Comment = (make-comment String)
|
||||||
(define-struct comment (text))
|
(define-struct comment (text))
|
||||||
|
|
||||||
; permissive? : parameter bool
|
; permissive-xexprs : parameter bool
|
||||||
(define permissive? (make-parameter #f))
|
(define permissive-xexprs (make-parameter #f))
|
||||||
|
|
||||||
(define permissive/c
|
(define permissive/c
|
||||||
(make-proj-contract 'permissive/c
|
(make-proj-contract 'permissive/c
|
||||||
(lambda (pos neg src-info name)
|
(lambda (pos neg src-info name)
|
||||||
(lambda (v)
|
(lambda (v)
|
||||||
(if (permissive?)
|
(if (permissive-xexprs)
|
||||||
v
|
v
|
||||||
(raise-contract-error
|
(raise-contract-error
|
||||||
v src-info pos name "not in permissive mode"))))
|
v src-info pos name "not in permissive mode"))))
|
||||||
(lambda (v)
|
(lambda (v)
|
||||||
(permissive?))))
|
(permissive-xexprs))))
|
||||||
|
|
||||||
; content? : TST -> Bool
|
; content? : TST -> Bool
|
||||||
(define content/c
|
(define content/c
|
||||||
|
@ -112,7 +112,7 @@
|
||||||
[stop location/c]
|
[stop location/c]
|
||||||
[name symbol?]
|
[name symbol?]
|
||||||
[value (or/c string? permissive/c)]))
|
[value (or/c string? permissive/c)]))
|
||||||
[permissive? (parameter/c boolean?)]
|
[permissive-xexprs (parameter/c boolean?)]
|
||||||
[permissive/c contract?]
|
[permissive/c contract?]
|
||||||
[content/c contract?]
|
[content/c contract?]
|
||||||
(struct (pcdata source) ([start location/c]
|
(struct (pcdata source) ([start location/c]
|
||||||
|
|
|
@ -91,7 +91,7 @@
|
||||||
(car x))
|
(car x))
|
||||||
(current-continuation-marks)
|
(current-continuation-marks)
|
||||||
x)))))
|
x)))))
|
||||||
[(permissive?) (true)]
|
[(permissive-xexprs) (true)]
|
||||||
(else (false
|
(else (false
|
||||||
(make-exn:invalid-xexpr
|
(make-exn:invalid-xexpr
|
||||||
(format (string-append
|
(format (string-append
|
||||||
|
@ -132,7 +132,7 @@
|
||||||
(if (symbol? (car attr))
|
(if (symbol? (car attr))
|
||||||
(if (pair? (cdr attr))
|
(if (pair? (cdr attr))
|
||||||
(if (or (string? (cadr attr))
|
(if (or (string? (cadr attr))
|
||||||
(permissive?))
|
(permissive-xexprs))
|
||||||
(true)
|
(true)
|
||||||
(false (make-exn:invalid-xexpr
|
(false (make-exn:invalid-xexpr
|
||||||
(format "Expected a string, given ~a" (cadr attr))
|
(format "Expected a string, given ~a" (cadr attr))
|
||||||
|
@ -189,7 +189,7 @@
|
||||||
[(entity? x) (entity-text x)]
|
[(entity? x) (entity-text x)]
|
||||||
[(or (comment? x) (p-i? x) (cdata? x)) x]
|
[(or (comment? x) (p-i? x) (cdata? x)) x]
|
||||||
[(document? x) (error 'xml->xexpr "Expected content, given ~e\nUse document-element to extract the content." x)]
|
[(document? x) (error 'xml->xexpr "Expected content, given ~e\nUse document-element to extract the content." x)]
|
||||||
[(permissive?) x]
|
[(permissive-xexprs) x]
|
||||||
[else (error 'xml->xexpr "Expected content, given ~e" x)]))))
|
[else (error 'xml->xexpr "Expected content, given ~e" x)]))))
|
||||||
|
|
||||||
;; attribute->srep : Attribute -> Attribute-srep
|
;; attribute->srep : Attribute -> Attribute-srep
|
||||||
|
|
|
@ -106,7 +106,7 @@ Represents an attribute within an element.}
|
||||||
}
|
}
|
||||||
|
|
||||||
@defthing[permissive/c contract?]{
|
@defthing[permissive/c contract?]{
|
||||||
If @scheme[(permissive?)] is @scheme[#t], then equivalent to @scheme[any/c], otherwise equivalent to @scheme[(make-none/c 'permissive)]}
|
If @scheme[(permissive-xexprs)] is @scheme[#t], then equivalent to @scheme[any/c], otherwise equivalent to @scheme[(make-none/c 'permissive)]}
|
||||||
|
|
||||||
@defstruct[(entity source) ([text (or/c symbol? exact-nonnegative-integer?)])]{
|
@defstruct[(entity source) ([text (or/c symbol? exact-nonnegative-integer?)])]{
|
||||||
|
|
||||||
|
@ -246,7 +246,7 @@ like @scheme[display-xml].}
|
||||||
|
|
||||||
@section{XML and X-expression Conversions}
|
@section{XML and X-expression Conversions}
|
||||||
|
|
||||||
@defboolparam[permissive? v]{
|
@defboolparam[permissive-xexprs v]{
|
||||||
If this is set to non-false, then @scheme[xml->xexpr] will allow
|
If this is set to non-false, then @scheme[xml->xexpr] will allow
|
||||||
non-XML objects, such as other structs, in the content of the converted XML
|
non-XML objects, such as other structs, in the content of the converted XML
|
||||||
and leave them in place in the resulting ``@tech{X-expression}''.
|
and leave them in place in the resulting ``@tech{X-expression}''.
|
||||||
|
@ -255,7 +255,7 @@ like @scheme[display-xml].}
|
||||||
@defproc[(xml->xexpr [content content/c]) xexpr/c]{
|
@defproc[(xml->xexpr [content content/c]) xexpr/c]{
|
||||||
|
|
||||||
Converts document content into an @tech{X-expression}, using
|
Converts document content into an @tech{X-expression}, using
|
||||||
@scheme[permissive?] to determine if foreign objects are allowed.}
|
@scheme[permissive-xexprs] to determine if foreign objects are allowed.}
|
||||||
|
|
||||||
@defproc[(xexpr->xml [xexpr xexpr/c]) content/c]{
|
@defproc[(xexpr->xml [xexpr xexpr/c]) content/c]{
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user