X-Git-Url: http://git.kpe.io/?p=cl-base64.git;a=blobdiff_plain;f=decode.lisp;h=beeba5c628ba621a845a4d2b8db1efaa1b3a0730;hp=3b618041374e5c3ecc44f14b74072c42f171b36f;hb=e34a016ebf2a676a297b5587cdd7e1029dbc1daf;hpb=82add2747ad25aafe558e51660b41286d1e39b77 diff --git a/decode.lisp b/decode.lisp index 3b61804..beeba5c 100644 --- a/decode.lisp +++ b/decode.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Dec 2002 ;;;; -;;;; $Id: decode.lisp,v 1.5 2003/05/06 16:21:06 kevin Exp $ +;;;; $Id: decode.lisp,v 1.6 2003/06/12 14:05:11 kevin Exp $ ;;;; ;;;; This file implements the Base64 transfer encoding algorithm as ;;;; defined in RFC 1521 by Borensten & Freed, September 1993. @@ -21,10 +21,6 @@ (in-package #:cl-base64) -(eval-when (:compile-toplevel) - (declaim (optimize (space 0) (speed 3) (safety 1) (compilation-speed 0)))) - - (declaim (inline whitespace-p)) (defun whitespace-p (c) "Returns T for a whitespace character." @@ -39,13 +35,13 @@ (defmacro def-base64-stream-to-* (output-type) `(defun ,(intern (concatenate 'string (symbol-name :base64-stream-to-) (symbol-name output-type))) - (input &key (uri nil) + (input &key (uri nil) ,@(when (eq output-type :stream) '(stream))) ,(concatenate 'string "Decode base64 stream to " (string-downcase (symbol-name output-type))) (declare (stream input) - (optimize (speed 3))) + (optimize (speed 3) (space 0) (safety 0))) (let ((pad (if uri *uri-pad-char* *pad-char*)) (decode-table (if uri *uri-decode-table* *decode-table*))) (declare (type decode-table decode-table) @@ -124,13 +120,13 @@ (defmacro def-base64-string-to-* (output-type) `(defun ,(intern (concatenate 'string (symbol-name :base64-string-to-) (symbol-name output-type))) - (input &key (uri nil) + (input &key (uri nil) ,@(when (eq output-type :stream) '(stream))) ,(concatenate 'string "Decode base64 string to " (string-downcase (symbol-name output-type))) (declare (string input) - (optimize (speed 3))) + (optimize (speed 3) (safety 0) (space 0))) (let ((pad (if uri *uri-pad-char* *pad-char*)) (decode-table (if uri *uri-decode-table* *decode-table*))) (declare (type decode-table decode-table) @@ -207,7 +203,7 @@ (defun base64-string-to-integer (string &key (uri nil)) "Decodes a base64 string to an integer" (declare (string string) - (optimize (speed 3))) + (optimize (speed 3) (safety 0) (space 0))) (let ((pad (if uri *uri-pad-char* *pad-char*)) (decode-table (if uri *uri-decode-table* *decode-table*))) (declare (type decode-table decode-table) @@ -235,7 +231,7 @@ (defun base64-stream-to-integer (stream &key (uri nil)) "Decodes a base64 string to an integer" (declare (stream stream) - (optimize (speed 3))) + (optimize (speed 3) (space 0) (safety 0))) (let ((pad (if uri *uri-pad-char* *pad-char*)) (decode-table (if uri *uri-decode-table* *decode-table*))) (declare (type decode-table decode-table)