aboutsummaryrefslogtreecommitdiff
path: root/pnm
diff options
context:
space:
mode:
authorMasaya Tojo <masaya@tojo.tokyo>2024-08-04 18:54:53 +0900
committerMasaya Tojo <masaya@tojo.tokyo>2024-08-04 18:54:53 +0900
commit29807e054b3457a46d4b51225fc29a3c0c126939 (patch)
tree7be5aaacd8fda7d806f3293aa43cfefb75a6cc21 /pnm
parent5c88bd5fba768dc88738401990c4ad43fc141f59 (diff)
Refactor to add pnm-parse-error procedure
Diffstat (limited to 'pnm')
-rw-r--r--pnm/read.scm44
1 files changed, 17 insertions, 27 deletions
diff --git a/pnm/read.scm b/pnm/read.scm
index 55e5068..e277a32 100644
--- a/pnm/read.scm
+++ b/pnm/read.scm
@@ -18,8 +18,7 @@
(define-library (pnm read)
(export image-read
- pnm-parse-error?
- pnm-parse-error-type)
+ pnm-parse-error?)
(import (scheme base)
(scheme write)
(pnm image)
@@ -217,40 +216,31 @@
((digit? u8)
(read-u8 in)
(loop (+ (* number 10) (u8->integer u8))))
- (else number))))))))
+ (else number)))))))
+
+ (define (unexpected-magic-number-error)
+ (raise (pnm-parse-error "(pnm read) image-read: Not supported magic number")))
+ (define (unexpected-eof-error)
+ (raise (pnm-parse-error "(pnm read) image-read: Unexpected end of file")))
+ (define (unexpected-character-error)
+ (raise (pnm-parse-error "(pnm read) image-read: Unexpected character"))))
(cond-expand
((library (srfi 35))
(import (srfi 35))
(begin
(define-condition-type &pnm-parse-error &error
- pnm-parse-error?
- (type pnm-parse-error-type))
+ pnm-parse-error?)
- (define (unexpected-magic-number-error)
- (raise (condition (&pnm-parse-error
- (type 'unexpected-magic-number-error))
- (&message
- (message "(pnm read) image-read: Not supported magic number")))))
- (define (unexpected-eof-error)
- (raise (condition (&pnm-parse-error
- (type 'unexpected-eof-error))
- (&message
- (message "(pnm read) image-read: Unexpected end of file")))))
- (define (unexpected-character-error)
- (raise (condition (&pnm-parse-error
- (type 'unexpected-character-error))
+ (define (pnm-parse-error msg)
+ (raise (condition (&pnm-parse-error)
(&message
- (message "(pnm read) image-read: Unexpected character")))))))
+ (message msg)))))))
(r7rs
(begin
(define-record-type <pnm-parse-error>
- (make-pnm-parse-error type)
+ (make-pnm-parse-error message)
pnm-parse-error?
- (type pnm-parse-error-type))
+ (message pnm-parse-error-message))
- (define (unexpected-magic-number-error)
- (raise (make-pnm-parse-error 'unexpected-magic-number-error)))
- (define (unexpected-eof-error)
- (raise (make-pnm-parse-error 'unexpected-eof-error)))
- (define (unexpected-character-error)
- (raise (make-pnm-parse-error 'unexpected-character-error)))))))
+ (define (pnm-parse-error msg)
+ (raise (make-pnm-parse-error msg)))))))