X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=uffi%2Fclsql-uffi.lisp;h=107aaebaacc3f63f8b61141cae5d61346e86dc98;hb=fcc62f5d5e41be500b36e545962be922d636ddd3;hp=f50682fa799b308300a9e4bb02c81cea8d9618a6;hpb=26f5250313d43508e4d22eb7f4f745cd50ffb17b;p=clsql.git diff --git a/uffi/clsql-uffi.lisp b/uffi/clsql-uffi.lisp index f50682f..107aaeb 100644 --- a/uffi/clsql-uffi.lisp +++ b/uffi/clsql-uffi.lisp @@ -7,7 +7,7 @@ ;;;; Programmers: Kevin M. Rosenberg ;;;; Date Started: Mar 2002 ;;;; -;;;; $Id: clsql-uffi.lisp,v 1.2 2002/12/13 12:21:54 kevin Exp $ +;;;; $Id: clsql-uffi.lisp,v 1.3 2003/03/29 22:29:29 kevin Exp $ ;;;; ;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg ;;;; @@ -83,10 +83,15 @@ (defmacro split-64-bit-integer (int64) `(values (ash ,int64 -32) (logand ,int64 +2^32-1+))) +(defconstant +ascii-n-value+ (char-char #\N)) + +(uffi:def-type char-ptr-def (* :unsigned-char)) + (defun char-ptr-points-to-null (char-ptr) "Returns T if foreign character pointer refers to 'NULL' string. Only called for numeric entries" ;; Uses short cut and returns T if first character is #\N. It should ;; never be non-numeric + (declare (type char-ptr-def char-ptr)) (let ((char (uffi:ensure-char-character (uffi:deref-pointer char-ptr :char)))) (eql char #\N)))