;;;; sha256-primitive.scm -*- Scheme -*- ;;;; Kon Lovett, Jul '18 (module sha256-primitive (;export sha256-primitive) (import scheme (chicken base) (chicken type) message-digest-primitive sha256-api) (: sha256-primitive (-> (struct message-digest-primitive))) (define sha256-primitive (let ((the-sha256-primitive (the (or false (struct message-digest-primitive)) #f))) (lambda () (unless the-sha256-primitive (set! the-sha256-primitive (make-message-digest-primitive context-size digest-length init update final #:block-length block-length #:raw-update raw-update #:name name)) ) the-sha256-primitive ) ) ) ) ;module sha256-primitive