From 5fa2eaf16254da95981ea32de817f9090ea21009 Mon Sep 17 00:00:00 2001 Message-Id: <5fa2eaf16254da95981ea32de817f9090ea21009.1716834552.git.mdw@distorted.org.uk> From: Mark Wooding Date: Tue, 2 Jan 2007 15:20:32 +0000 Subject: [PATCH] Added alien type specifier OPTIMIZED-DOUBLE-FLOAT Organization: Straylight/Edgeware From: espen --- gffi/basic-types.lisp | 8 +++++++- gffi/defpackage.lisp | 4 ++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gffi/basic-types.lisp b/gffi/basic-types.lisp index b21fbd3..9b3695e 100644 --- a/gffi/basic-types.lisp +++ b/gffi/basic-types.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: basic-types.lisp,v 1.4 2006-09-06 10:15:34 espen Exp $ +;; $Id: basic-types.lisp,v 1.5 2007-01-02 15:20:32 espen Exp $ (in-package "GFFI") @@ -514,6 +514,12 @@ (define-type-method reader-function ((type double-float) &key ref (inlined t)) #+(or cmu sbcl)(sap-ref-double location offset) #+clisp(ffi:memory-as location 'double-float offset))) +(deftype optimized-double-float () 'double-float) + +(define-type-method to-alien-form ((type optimized-double-float) form &optional copy-p) + (declare (ignore type copy-p)) + form) + ;;; Character diff --git a/gffi/defpackage.lisp b/gffi/defpackage.lisp index 6eb9c55..4ff995d 100644 --- a/gffi/defpackage.lisp +++ b/gffi/defpackage.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: defpackage.lisp,v 1.6 2006-12-21 16:38:19 espen Exp $ +;; $Id: defpackage.lisp,v 1.7 2007-01-02 15:20:32 espen Exp $ (defpackage "GFFI" (:use "COMMON-LISP" "AUTOEXPORT" "PKG-CONFIG" "CLG-UTILS") @@ -65,7 +65,7 @@ (defpackage "GFFI" "READER-FUNCTION" "WRITER-FUNCTION" "GETTER-FUNCTION" "PEEK-FUNCTION" "DESTROY-FUNCTION" "UNBOUND-VALUE" "COPY-FUNCTION" "ASSERT-INLINED" "ASSERT-NOT-INLINED" - "UTF8-LENGTH") + "UTF8-LENGTH" "OPTIMIZED-DOUBLE-FLOAT") ;; Symbols from vector.lisp (:export "MAKE-C-VECTOR" "MAP-C-VECTOR" "WITH-C-VECTOR" "COUNTED-VECTOR" "NULL-TERMINATED-VECTOR") -- [mdw]