7253
((3) 0 () 21 ((q lib "xml/main.rkt") (q 1825 . 5) (q 0 . 6) (q lib "xml/private/xexpr-core.rkt") (q 2585 . 3) (q 529 . 4) (q 672 . 3) (q 1621 . 6) (q 281 . 5) (q 1446 . 6) (q 2236 . 4) (q 414 . 4) (q 971 . 4) (q 786 . 6) (q lib "xml/plist.rkt") (q 2347 . 4) (q 1254 . 6) (q lib "xml/path.rkt") (q 1072 . 5) (q 2108 . 4) (q 2456 . 4)) () (h ! (equal) ((c def c (c (? . 0) q document-element)) c (? . 9)) ((c def c (c (? . 3) q exn:xml)) c (? . 4)) ((c def c (c (? . 0) q attribute-name)) c (? . 1)) ((c def c (c (? . 0) q read-comments)) q (5195 . 4)) ((c def c (c (? . 0) q element)) c (? . 7)) ((c def c (c (? . 0) q permissive-xexprs)) q (4057 . 4)) ((c def c (c (? . 0) q eliminate-whitespace)) q (4421 . 5)) ((c def c (c (? . 0) q syntax:read-xml)) q (3042 . 3)) ((c def c (c (? . 0) q location?)) c (? . 2)) ((c def c (c (? . 0) q struct:attribute)) c (? . 1)) ((c def c (c (? . 0) q document-type-external)) c (? . 13)) ((c def c (c (? . 0) q comment-text)) c (? . 12)) ((c def c (c (? . 0) q make-external-dtd/system)) c (? . 6)) ((c def c (c (? . 0) q external-dtd)) c (? . 11)) ((c def c (c (? . 0) q source?)) c (? . 8)) ((c def c (c (? . 0) q location-char)) c (? . 2)) ((c def c (c (? . 3) q make-exn:xml)) c (? . 4)) ((c def c (c (? . 0) q struct:external-dtd/public)) c (? . 5)) ((c def c (c (? . 0) q read-xml)) q (2756 . 3)) ((c def c (c (? . 0) q xexpr-drop-empty-attributes)) q (5409 . 4)) ((c def c (c (? . 0) q make-external-dtd/public)) c (? . 5)) ((c def c (c (? . 3) q xexpr?)) q (2676 . 3)) ((c def c (c (? . 17) q se-path*/list)) q (5848 . 4)) ((c def c (c (? . 0) q xml-count-bytes)) q (5297 . 4)) ((c def c (c (? . 0) q external-dtd/system?)) c (? . 6)) ((c def c (c (? . 0) q element?)) c (? . 7)) ((c def c (c (? . 0) q struct:source)) c (? . 8)) ((c def c (c (? . 0) q read-xml/document)) q (2846 . 3)) ((c def c (c (? . 0) q prolog?)) c (? . 16)) ((c def c (c (? . 0) q make-pcdata)) c (? . 10)) ((c def c (c (? . 0) q make-document)) c (? . 9)) ((c def c (c (? . 0) q element-attributes)) c (? . 7)) ((c def c (c (? . 0) q string->xexpr)) q (4357 . 3)) ((c def c (c (? . 0) q make-source)) c (? . 8)) ((c def c (c (? . 0) q element-content)) c (? . 7)) ((c def c (c (? . 14) q read-plist)) q (5654 . 3)) ((c def c (c (? . 0) q pcdata?)) c (? . 10)) ((c def c (c (? . 0) q xml->xexpr)) q (4151 . 3)) ((c def c (c (? . 0) q location-offset)) c (? . 2)) ((c def c (c (? . 0) q struct:external-dtd)) c (? . 11)) ((c def c (c (? . 0) q source-stop)) c (? . 8)) ((c def c (c (? . 0) q element-name)) c (? . 7)) ((c def c (c (? . 0) q comment?)) c (? . 12)) ((c def c (c (? . 0) q struct:external-dtd/system)) c (? . 6)) ((c def c (c (? . 0) q misc/c)) q (1227 . 2)) ((c def c (c (? . 0) q entity-text)) c (? . 19)) ((c def c (c (? . 0) q display-xml)) q (3492 . 4)) ((c def c (c (? . 0) q document-type-name)) c (? . 13)) ((c def c (c (? . 0) q attribute-value)) c (? . 1)) ((c def c (c (? . 14) q plist-value?)) q (5531 . 3)) ((c def c (c (? . 0) q cdata-string)) c (? . 15)) ((c def c (c (? . 0) q attribute)) c (? . 1)) ((c def c (c (? . 0) q document-type)) c (? . 13)) ((c def c (c (? . 0) q pcdata)) c (? . 10)) ((c def c (c (? . 0) q document-type-inlined)) c (? . 13)) ((c def c (c (? . 0) q document-type?)) c (? . 13)) ((c def c (c (? . 0) q struct:document-type)) c (? . 13)) ((c def c (c (? . 0) q cdata?)) c (? . 15)) ((c def c (c (? . 0) q content/c)) q (1988 . 2)) ((c def c (c (? . 0) q make-location)) c (? . 2)) ((c def c (c (? . 0) q prolog)) c (? . 16)) ((c def c (c (? . 0) q collapse-whitespace)) q (5081 . 4)) ((c def c (c (? . 0) q p-i)) c (? . 18)) ((c def c (c (? . 0) q source)) c (? . 8)) ((c def c (c (? . 0) q external-dtd?)) c (? . 11)) ((c def c (c (? . 0) q attribute?)) c (? . 1)) ((c def c (c (? . 0) q document-misc)) c (? . 9)) ((c def c (c (? . 0) q make-external-dtd)) c (? . 11)) ((c def c (c (? . 0) q make-document-type)) c (? . 13)) ((c def c (c (? . 17) q se-path*)) q (5939 . 4)) ((c def c (c (? . 0) q external-dtd/public?)) c (? . 5)) ((c def c (c (? . 0) q html-empty-tags)) q (5037 . 2)) ((c def c (c (? . 0) q p-i-target-name)) c (? . 18)) ((c def c (c (? . 3) q validate-xexpr)) q (4616 . 3)) ((c def c (c (? . 0) q external-dtd/public-public)) c (? . 5)) ((c def c (c (? . 0) q struct:prolog)) c (? . 16)) ((c def c (c (? . 0) q external-dtd/system)) c (? . 6)) ((c def c (c (? . 14) q plist-dict?)) q (5593 . 3)) ((c def c (c (? . 0) q comment)) c (? . 12)) ((c def c (c (? . 0) q make-p-i)) c (? . 18)) ((c def c (c (? . 0) q exn:invalid-xexpr-code)) c (? . 20)) ((c def c (c (? . 0) q document)) c (? . 9)) ((c def c (c (? . 3) q xexpr/c)) q (2728 . 2)) ((c def c (c (? . 0) q write-xml)) q (3240 . 4)) ((c def c (c (? . 0) q external-dtd/public)) c (? . 5)) ((c def c (c (? . 0) q prolog-misc2)) c (? . 16)) ((c def c (c (? . 0) q make-attribute)) c (? . 1)) ((c def c (c (? . 0) q location-line)) c (? . 2)) ((c def c (c (? . 0) q write-xexpr)) q (3748 . 7)) ((c def c (c (? . 0) q struct:pcdata)) c (? . 10)) ((c def c (c (? . 0) q document?)) c (? . 9)) ((c def c (c (? . 0) q document-prolog)) c (? . 9)) ((c def c (c (? . 0) q struct:document)) c (? . 9)) ((c def c (c (? . 0) q prolog-dtd)) c (? . 16)) ((c def c (c (? . 0) q prolog-misc)) c (? . 16)) ((c def c (c (? . 0) q make-cdata)) c (? . 15)) ((c def c (c (? . 0) q make-element)) c (? . 7)) ((c def c (c (? . 0) q write-xml/content)) q (3358 . 4)) ((c def c (c (? . 17) q se-path?)) q (5819 . 2)) ((c def c (c (? . 0) q p-i?)) c (? . 18)) ((c def c (c (? . 0) q location)) c (? . 2)) ((c def c (c (? . 0) q syntax:read-xml/element)) q (3137 . 3)) ((c def c (c (? . 0) q location/c)) q (250 . 2)) ((c def c (c (? . 0) q entity?)) c (? . 19)) ((c def c (c (? . 0) q valid-char?)) q (2051 . 3)) ((c def c (c (? . 0) q make-comment)) c (? . 12)) ((c def c (c (? . 0) q display-xml/content)) q (3612 . 4)) ((c def c (c (? . 0) q external-dtd-system)) c (? . 11)) ((c def c (c (? . 0) q xexpr->string)) q (4289 . 3)) ((c def c (c (? . 0) q struct:cdata)) c (? . 15)) ((c def c (c (? . 0) q make-entity)) c (? . 19)) ((c def c (c (? . 0) q make-exn:invalid-xexpr)) c (? . 20)) ((c def c (c (? . 0) q struct:element)) c (? . 7)) ((c def c (c (? . 3) q struct:exn:xml)) c (? . 4)) ((c def c (c (? . 0) q struct:comment)) c (? . 12)) ((c def c (c (? . 0) q struct:exn:invalid-xexpr)) c (? . 20)) ((c def c (c (? . 0) q make-prolog)) c (? . 16)) ((c def c (c (? . 0) q exn:invalid-xexpr)) c (? . 20)) ((c def c (c (? . 0) q exn:xml?)) c (? . 4)) ((c def c (c (? . 0) q entity)) c (? . 19)) ((c def c (c (? . 0) q struct:entity)) c (? . 19)) ((c def c (c (? . 3) q correct-xexpr?)) q (4670 . 5)) ((c def c (c (? . 0) q pcdata-string)) c (? . 10)) ((c def c (c (? . 0) q p-i-instruction)) c (? . 18)) ((c def c (c (? . 0) q struct:p-i)) c (? . 18)) ((c def c (c (? . 0) q read-xml/element)) q (2945 . 3)) ((c def c (c (? . 14) q write-plist)) q (5722 . 4)) ((c def c (c (? . 0) q permissive/c)) q (2018 . 2)) ((c def c (c (? . 0) q cdata)) c (? . 15)) ((c def c (c (? . 0) q struct:location)) c (? . 2)) ((c def c (c (? . 0) q empty-tag-shorthand)) q (4827 . 5)) ((c def c (c (? . 0) q xexpr->xml)) q (4222 . 3)) ((c def c (c (? . 0) q source-start)) c (? . 8)) ((c def c (c (? . 0) q exn:invalid-xexpr?)) c (? . 20))))
struct
(struct location (line char offset)
    #:extra-constructor-name make-location)
  line : (or/c false/c exact-nonnegative-integer?)
  char : (or/c false/c exact-nonnegative-integer?)
  offset : exact-nonnegative-integer?
value
location/c : contract?
struct
(struct source (start stop)
    #:extra-constructor-name make-source)
  start : location/c
  stop : location/c
struct
(struct external-dtd (system)
    #:extra-constructor-name make-external-dtd)
  system : string?
struct
(struct external-dtd/public external-dtd (public)
    #:extra-constructor-name make-external-dtd/public)
  public : string?
struct
(struct external-dtd/system external-dtd ()
    #:extra-constructor-name make-external-dtd/system)
struct
(struct document-type (name external inlined)
    #:extra-constructor-name make-document-type)
  name : symbol?
  external : external-dtd?
  inlined : false/c
struct
(struct comment (text)
    #:extra-constructor-name make-comment)
  text : string?
struct
(struct p-i source (target-name instruction)
    #:extra-constructor-name make-p-i)
  target-name : symbol?
  instruction : string?
value
misc/c : contract?
struct
(struct prolog (misc dtd misc2)
    #:extra-constructor-name make-prolog)
  misc : (listof misc/c)
  dtd : (or/c document-type false/c)
  misc2 : (listof misc/c)
struct
(struct document (prolog element misc)
    #:extra-constructor-name make-document)
  prolog : prolog?
  element : element?
  misc : (listof misc/c)
struct
(struct element source (name attributes content)
    #:extra-constructor-name make-element)
  name : symbol?
  attributes : (listof attribute?)
  content : (listof content/c)
struct
(struct attribute source (name value)
    #:extra-constructor-name make-attribute)
  name : symbol?
  value : (or/c string? permissive/c)
value
content/c : contract?
value
permissive/c : contract?
procedure
(valid-char? x) -> boolean?
  x : any/c
struct
(struct entity source (text)
    #:extra-constructor-name make-entity)
  text : (or/c symbol? valid-char?)
struct
(struct pcdata source (string)
    #:extra-constructor-name make-pcdata)
  string : string?
struct
(struct cdata source (string)
    #:extra-constructor-name make-cdata)
  string : string?
struct
(struct exn:invalid-xexpr exn:fail (code)
    #:extra-constructor-name make-exn:invalid-xexpr)
  code : any/c
struct
(struct exn:xml exn:fail:read ()
    #:extra-constructor-name make-exn:xml)
procedure
(xexpr? v) -> boolean?
  v : any/c
value
xexpr/c : contract?
procedure
(read-xml [in]) -> document?
  in : input-port? = (current-input-port)
procedure
(read-xml/document [in]) -> document?
  in : input-port? = (current-input-port)
procedure
(read-xml/element [in]) -> element?
  in : input-port? = (current-input-port)
procedure
(syntax:read-xml [in]) -> syntax?
  in : input-port? = (current-input-port)
procedure
(syntax:read-xml/element [in]) -> syntax?
  in : input-port? = (current-input-port)
procedure
(write-xml doc [out]) -> void?
  doc : document?
  out : output-port? = (current-output-port)
procedure
(write-xml/content content [out]) -> void?
  content : content/c
  out : output-port? = (current-output-port)
procedure
(display-xml doc [out]) -> void?
  doc : document?
  out : output-port? = (current-output-port)
procedure
(display-xml/content content [out]) -> void?
  content : content/c
  out : output-port? = (current-output-port)
procedure
(write-xexpr  xe                                        
             [out                                       
              #:insert-newlines? insert-newlines?]) -> void?
  xe : xexpr/c
  out : output-port? = (current-output-port)
  insert-newlines? : any/c = #f
parameter
(permissive-xexprs) -> boolean?
(permissive-xexprs v) -> void?
  v : any/c
procedure
(xml->xexpr content) -> xexpr/c
  content : content/c
procedure
(xexpr->xml xexpr) -> content/c
  xexpr : xexpr/c
procedure
(xexpr->string xexpr) -> string?
  xexpr : xexpr/c
procedure
(string->xexpr str) -> xexpr/c
  str : string?
procedure
((eliminate-whitespace [tags choose]) elem) -> element?
  tags : (listof symbol?) = empty
  choose : (boolean? . -> . boolean?) = (λ (x) x)
  elem : element?
procedure
(validate-xexpr v) -> #t
  v : any/c
procedure
(correct-xexpr? v success-k fail-k) -> any/c
  v : any/c
  success-k : (-> any/c)
  fail-k : (exn:invalid-xexpr? . -> . any/c)
parameter
(empty-tag-shorthand)
 -> (or/c (one-of/c 'always 'never) (listof symbol?))
(empty-tag-shorthand shorthand) -> void?
  shorthand : (or/c (one-of/c 'always 'never) (listof symbol?))
value
html-empty-tags : (listof symbol?)
parameter
(collapse-whitespace) -> boolean?
(collapse-whitespace collapse?) -> void?
  collapse? : any/c
parameter
(read-comments) -> boolean?
(read-comments preserve?) -> void?
  preserve? : any/c
parameter
(xml-count-bytes) -> boolean?
(xml-count-bytes count-bytes?) -> void?
  count-bytes? : any/c
parameter
(xexpr-drop-empty-attributes) -> boolean?
(xexpr-drop-empty-attributes drop?) -> void?
  drop? : any/c
procedure
(plist-value? any/c) -> boolean?
  any/c : v
procedure
(plist-dict? any/c) -> boolean?
  any/c : v
procedure
(read-plist in) -> plist-value?
  in : input-port?
procedure
(write-plist dict out) -> void?
  dict : plist-value?
  out : output-port?
value
se-path? : contract?
procedure
(se-path*/list p xe) -> (listof any/c)
  p : se-path?
  xe : xexpr?
procedure
(se-path* p xe) -> any/c
  p : se-path?
  xe : xexpr?
