magickwand, encapsulating error throwing added by retroj on Sun Apr 29 01:51:31 2012

(define-syntax define-magick-image-op
  (syntax-rules ()
    ((define-magick-image-op (scheme-name object . rest)
                             (c-name . c-args))
     (define (scheme-name object . rest)
       (unless ((foreign-lambda bool c-name . c-args)
                object . rest)
         (abort (magick-get-exception object))
         #t)))))

(define-magick-image-op (magick-read-image wand filename)
  (MagickReadImage magickwand (const c-string)))