599
((3) 0 () 2 ((q lib "json/main.rkt") (c submod c (? . 0) q for-extension)) () (h ! (equal) ((c def c (c (? . 0) q jsexpr->bytes)) q (996 . 9)) ((c def c (c (? . 0) q bytes->jsexpr)) q (1967 . 4)) ((c def c (c (? . 0) q write-json)) q (193 . 11)) ((c def c (c (? . 0) q json-null)) q (108 . 4)) ((c def c (c (? . 0) q read-json)) q (1355 . 9)) ((c def c (c (? . 0) q jsexpr->string)) q (632 . 9)) ((c def c (c (? . 1) q read-json*)) q (3530 . 19)) ((c def c (c (? . 1) q write-json*)) q (2085 . 29)) ((c def c (c (? . 0) q jsexpr?)) q (0 . 4)) ((c def c (c (? . 0) q string->jsexpr)) q (1847 . 4))))
procedure
(jsexpr? x [#:null jsnull]) -> boolean?
  x : any/c
  jsnull : any/c = (json-null)
parameter
(json-null) -> any/c
(json-null jsnull) -> void?
  jsnull : any/c
procedure
(write-json  x                     
            [out                   
             #:null jsnull         
             #:encode encode       
             #:indent indent]) -> void?
  x : jsexpr?
  out : output-port? = (current-output-port)
  jsnull : any/c = (json-null)
  encode : (or/c 'control 'all) = 'control
  indent : (or/c #f #\tab natural-number/c) = #f
procedure
(jsexpr->string  x                     
                [#:null jsnull         
                 #:encode encode       
                 #:indent indent]) -> string?
  x : jsexpr?
  jsnull : any/c = (json-null)
  encode : (or/c 'control 'all) = 'control
  indent : (or/c #f #\tab natural-number/c) = #f
procedure
(jsexpr->bytes  x                     
               [#:null jsnull         
                #:encode encode       
                #:indent indent]) -> bytes?
  x : jsexpr?
  jsnull : any/c = (json-null)
  encode : (or/c 'control 'all) = 'control
  indent : (or/c #f #\tab natural-number/c) = #f
procedure
(read-json                                                                
           [in                                                            
            #:null jsnull                                                 
            #:replace-malformed-surrogate? replace-malformed-surrogate?]) 
 -> (or/c jsexpr? eof-object?)
  in : input-port? = (current-input-port)
  jsnull : any/c = (json-null)
  replace-malformed-surrogate? : any/c = #f
procedure
(string->jsexpr str [#:null jsnull]) -> jsexpr?
  str : string?
  jsnull : any/c = (json-null)
procedure
(bytes->jsexpr str [#:null jsnull]) -> jsexpr?
  str : bytes?
  jsnull : any/c = (json-null)
procedure
(write-json* who                                          
             x                                            
             out                                          
             #:null jsnull                                
             #:encode encode                              
             #:indent indent                              
             #:object-rep? object-rep?                    
             #:object-rep->hash object-rep->hash          
             #:list-rep? list-rep?                        
             #:list-rep->list list-rep->list              
             #:key-rep? key-rep?                          
             #:key-rep->string key-rep->string            
             #:string-rep? string-rep?                    
             #:string-rep->string string-rep->string) -> void?
  who : symbol?
  x : any/c
  out : output-port?
  jsnull : any/c
  encode : (or/c 'control 'all)
  indent : (or/c #f #\tab natural-number/c)
  object-rep? : (-> any/c boolean?)
  object-rep->hash : (-> any/c hash?)
  list-rep? : (-> any/c boolean?)
  list-rep->list : (-> any/c list?)
  key-rep? : (-> any/c boolean?)
  key-rep->string : (-> any/c string?)
  string-rep? : (-> any/c boolean?)
  string-rep->string : (-> any/c string?)
procedure
(read-json*                                                             
            who                                                         
            in                                                          
            #:replace-malformed-surrogate? replace-malformed-surrogate? 
            #:null jsnull                                               
            #:make-object make-object-rep                               
            #:make-list make-list-rep                                   
            #:make-key make-key-rep                                     
            #:make-string make-string-rep)                              
 -> any/c
  who : symbol?
  in : input-port?
  replace-malformed-surrogate? : any/c
  jsnull : any/c
  make-object-rep : (-> (listof pair?) any/c)
  make-list-rep : (-> list? any/c)
  make-key-rep : (-> string? any/c)
  make-string-rep : (-> string? any/c)
