;;;; type-errors-structured.impl.scm -*- Scheme -*- ;;;; Kon Lovett, Jul '18 ;; (define-error-type procedure) (define error-closure error-procedure) (define-error-type input-port) (define-error-type output-port) (define-error-type list) (define-error-type plist "property-list") (define-error-type alist "association-list") (define-error-type pair) (define-error-type blob) (define-error-type vector) (define-error-type string) (define (*error-structure loc obj kndnam tag argnam) ;kndnam & tag are symbol | string | ... (error-argument-type loc obj (conc kndnam " " tag) argnam) ) (define (error-structure loc obj tag #!optional argnam) (*error-structure loc obj "structure" tag argnam) ) (define (error-record loc obj tag #!optional argnam) (*error-structure loc obj "record" tag argnam) ) (define (error-record-type loc obj tag #!optional argnam) (*error-structure loc obj "record-type" tag argnam) )