Mercurial > hg > xemacs-beta
annotate modules/postgresql/postgresql.h @ 5285:99de5fd48e87
Tighten up Common Lisp compatibility, #'butlast, #'nbutlast, #'tailp, #'ldiff
lisp/ChangeLog addition:
2010-10-14 Aidan Kehoe <kehoea@parhasard.net>
* byte-optimize.el (side-effect-free-fns):
* cl-macs.el (remf, getf):
* cl-extra.el (tailp, cl-set-getf, cl-do-remf):
* cl.el (ldiff, endp):
Tighten up Common Lisp compatibility for #'ldiff, #'endp, #'tailp;
add circularity checking for the first two.
#'cl-set-getf and #'cl-do-remf were Lisp implementations of
#'plist-put and #'plist-remprop; change the names to aliases,
changes the macros that use them to using #'plist-put and
#'plist-remprop directly.
src/ChangeLog addition:
2010-10-14 Aidan Kehoe <kehoea@parhasard.net>
* fns.c (Fnbutlast, Fbutlast):
Tighten up Common Lisp compatibility for these two functions; they
need to operate on dotted lists without erroring.
tests/ChangeLog addition:
2010-10-14 Aidan Kehoe <kehoea@parhasard.net>
* automated/lisp-tests.el (x):
Test #'nbutlast, #'butlast with dotted lists.
Check that #'ldiff and #'tailp don't hang on circular lists; check
that #'tailp returns t with circular lists when that is
appropriate. Test them both with dotted lists.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Thu, 14 Oct 2010 18:50:38 +0100 |
parents | a9c41067dd88 |
children | 8bda66cd0414 |
rev | line source |
---|---|
996 | 1 /* |
2 postgresql.h -- Emacs Lisp binding to libpq.so | |
3 Copyright (C) 2000 Electrotechnical Laboratory, JAPAN. | |
4 Licensed to the Free Software Foundation. | |
5 | |
3820 | 6 Author: SL Baur <steve@xemacs.org> |
7 Maintainer: SL Baur <steve@xemacs.org> | |
996 | 8 |
9 Please send patches to this file to me first before submitting them to | |
10 xemacs-patches. | |
11 */ | |
12 | |
13 #ifndef INCLUDED_postgresql_h_ | |
14 #define INCLUDED_postgresql_h_ 1 | |
15 | |
16 #define message message_ /* Yuck */ | |
17 #include LIBPQ_FE_H_FILE /* main PostgreSQL header file */ | |
18 #undef message | |
19 | |
20 #define BLCKSZ 8192 /* size of a default Postgres disk block */ | |
21 /* | |
22 This file contains the GCC bug workaround code for the private | |
23 LRECORD types. | |
24 */ | |
25 | |
26 /* PGconn is an opaque object and we need to be able to store them in | |
27 Lisp code because libpq supports multiple connections. | |
28 */ | |
29 struct Lisp_PGconn | |
30 { | |
5127
a9c41067dd88
more cleanups, terminology clarification, lots of doc work
Ben Wing <ben@xemacs.org>
parents:
5120
diff
changeset
|
31 NORMAL_LISP_OBJECT_HEADER header; |
996 | 32 PGconn *pgconn; |
33 }; | |
34 typedef struct Lisp_PGconn Lisp_PGconn; | |
35 | |
5118
e0db3c197671
merge up to latest default branch, doesn't compile yet
Ben Wing <ben@xemacs.org>
parents:
3820
diff
changeset
|
36 DECLARE_LISP_OBJECT (pgconn, Lisp_PGconn); |
996 | 37 |
38 #define XPGCONN(x) XRECORD (x, pgconn, Lisp_PGconn) | |
39 #define wrap_pgconn(p) wrap_record (p, pgconn) | |
40 #define PGCONNP(x) RECORDP (x, pgconn) | |
41 #define CHECK_PGCONN(x) CHECK_RECORD (x, pgconn) | |
42 #define CONCHECK_PGCONN(x) CONCHECK_RECORD (x, pgconn) | |
43 | |
44 /****/ | |
45 | |
46 /* PGresult is an opaque object and we need to be able to store them in | |
47 Lisp code. | |
48 */ | |
49 struct Lisp_PGresult | |
50 { | |
5127
a9c41067dd88
more cleanups, terminology clarification, lots of doc work
Ben Wing <ben@xemacs.org>
parents:
5120
diff
changeset
|
51 NORMAL_LISP_OBJECT_HEADER header; |
996 | 52 PGresult *pgresult; |
53 }; | |
54 typedef struct Lisp_PGresult Lisp_PGresult; | |
55 | |
5118
e0db3c197671
merge up to latest default branch, doesn't compile yet
Ben Wing <ben@xemacs.org>
parents:
3820
diff
changeset
|
56 DECLARE_LISP_OBJECT (pgresult, Lisp_PGresult); |
996 | 57 |
58 #define XPGRESULT(x) XRECORD (x, pgresult, Lisp_PGresult) | |
59 #define wrap_pgresult(p) wrap_record (p, pgresult) | |
60 #define PGRESULTP(x) RECORDP (x, pgresult) | |
61 #define CHECK_PGRESULT(x) CHECK_RECORD (x, pgresult) | |
62 #define CONCHECK_PGRESULT(x) CONCHECK_RECORD (x, pgresult) | |
63 | |
64 #endif /* INCLUDED_postgresql_h_ */ |