File tree Expand file tree Collapse file tree 2 files changed +12
-3
lines changed
Expand file tree Collapse file tree 2 files changed +12
-3
lines changed Original file line number Diff line number Diff line change 66 json-error?
77 (reason json-error-reason))
88
9+ (define (written obj )
10+ (call-with-port (open-output-string)
11+ (lambda (out ) (write obj out) (get-output-string out))))
12+
13+ (define (invalid-object-value obj )
14+ (raise (make-json-error
15+ (string-append " Invalid object value: " (written obj) " ." ))))
16+
917(define (json-whitespace? char )
1018 (assume (char? char))
1119 (case char
326334 ; ; continue!
327335 (lambda (obj )
328336 (read-object-maybe-continue callback obj k)))))
329- (else (raise (make-json-error " Invalid object value. " ) ))))
337+ (else (invalid- object- value obj ))))
330338
331339 (define (read-object-colon callback obj k )
332340 (if (eq? obj 'colon )
424432 type
425433 obj
426434 return))))))
427- (else (raise (make-json-error " Invalid object value. " ) ))))
435+ (else (invalid- object- value obj ))))
428436 ((json-value)
429437 (let ((value obj))
430438 (lambda (type obj ) (read-object-maybe-key (cons (cons key value) out)
431439 type
432440 obj
433441 return))))
434- (else (raise (make-json-error " Invalid object value" ) ))))
442+ (else (invalid- object- value obj ))))
435443
436444 (define (read-object-maybe-key out type obj return )
437445 (case type
Original file line number Diff line number Diff line change 1111 (scheme case-lambda)
1212 (scheme char)
1313 (scheme text)
14+ (scheme write)
1415 (check)
1516 (srfi 145 )
1617 (srfi 151 )
You can’t perform that action at this time.
0 commit comments