;;;; 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) (include-relative "message-digest-primitive.types") (: sha256-primitive (--> message-digest-primitive)) (define sha256-primitive (let ((the-sha256-primitive (the (or false 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