[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/emacsql b33073257e 3/9: Use common base class for all SQLi
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/emacsql b33073257e 3/9: Use common base class for all SQLite connection classes |
Date: |
Wed, 22 Feb 2023 14:59:05 -0500 (EST) |
branch: elpa/emacsql
commit b33073257e0ad0cce8c026d24d9705e3b35f6e6d
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Jonas Bernoulli <jonas@bernoul.li>
Use common base class for all SQLite connection classes
---
emacsql-sqlite-builtin.el | 11 +----------
emacsql-sqlite-common.el | 16 ++++++++++++++++
emacsql-sqlite-module.el | 11 +----------
emacsql-sqlite.el | 12 ++----------
4 files changed, 20 insertions(+), 30 deletions(-)
diff --git a/emacsql-sqlite-builtin.el b/emacsql-sqlite-builtin.el
index 59447011fc..69fe989af0 100644
--- a/emacsql-sqlite-builtin.el
+++ b/emacsql-sqlite-builtin.el
@@ -26,16 +26,7 @@
(emacsql-register-reserved emacsql-sqlite-reserved)
-(defclass emacsql-sqlite-builtin-connection (emacsql-connection)
- ((file :initarg :file
- :type (or null string)
- :documentation "Database file name.")
- (types :allocation :class
- :reader emacsql-types
- :initform '((integer "INTEGER")
- (float "REAL")
- (object "TEXT")
- (nil nil))))
+(defclass emacsql-sqlite-builtin-connection (emacsql--sqlite-base) ()
"A connection to a SQLite database using builtin support.")
(cl-defmethod initialize-instance :after
diff --git a/emacsql-sqlite-common.el b/emacsql-sqlite-common.el
index cf08344d7d..fd1446e6ea 100644
--- a/emacsql-sqlite-common.el
+++ b/emacsql-sqlite-common.el
@@ -13,6 +13,22 @@
;;; Code:
+(require 'emacsql)
+
+;;; Base class
+
+(defclass emacsql--sqlite-base (emacsql-connection)
+ ((file :initarg :file
+ :type (or null string)
+ :documentation "Database file name.")
+ (types :allocation :class
+ :reader emacsql-types
+ :initform '((integer "INTEGER")
+ (float "REAL")
+ (object "TEXT")
+ (nil nil))))
+ :abstract t)
+
;;; Constants
(defconst emacsql-sqlite-reserved
diff --git a/emacsql-sqlite-module.el b/emacsql-sqlite-module.el
index 000b837897..ae72f284ad 100644
--- a/emacsql-sqlite-module.el
+++ b/emacsql-sqlite-module.el
@@ -28,16 +28,7 @@
(emacsql-register-reserved emacsql-sqlite-reserved)
-(defclass emacsql-sqlite-module-connection (emacsql-connection)
- ((file :initarg :file
- :type (or null string)
- :documentation "Database file name.")
- (types :allocation :class
- :reader emacsql-types
- :initform '((integer "INTEGER")
- (float "REAL")
- (object "TEXT")
- (nil nil))))
+(defclass emacsql-sqlite-module-connection (emacsql--sqlite-base) ()
"A connection to a SQLite database using a module.")
(cl-defmethod initialize-instance :after
diff --git a/emacsql-sqlite.el b/emacsql-sqlite.el
index 3d0045a1b0..8f00da8796 100644
--- a/emacsql-sqlite.el
+++ b/emacsql-sqlite.el
@@ -55,16 +55,8 @@ Each is queried using `executable-find', so full paths are
allowed. Only the first compiler which is successfully found will
used.")
-(defclass emacsql-sqlite-connection (emacsql-connection emacsql-protocol-mixin)
- ((file :initarg :file
- :type (or null string)
- :documentation "Database file name.")
- (types :allocation :class
- :reader emacsql-types
- :initform '((integer "INTEGER")
- (float "REAL")
- (object "TEXT")
- (nil nil))))
+(defclass emacsql-sqlite-connection
+ (emacsql--sqlite-base emacsql-protocol-mixin) ()
"A connection to a SQLite database.")
(cl-defmethod initialize-instance :after
- [nongnu] elpa/emacsql updated (f0249f655f -> 497971121a), ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql 7a725e1910 2/9: Add new library emacsql-sqlite-common, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql 8d111e4dcd 6/9: emacsql-sqlite-dump-database: New function, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql b4d7efac4d 7/9: emacsql-sqlite-restore-database: New function, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql 0bcf526c48 1/9: Fix how class documentation is provided, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql d61f674b64 4/9: emacsql--sqlite-base: Use nil as :initform of file slot, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql ad3483c97c 5/9: emacsql-sqlite-list-tables: New function, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql 497971121a 9/9: emacsql-sqlite-dump-database: Override output file unless versioned, ELPA Syncer, 2023/02/22
- [nongnu] elpa/emacsql b33073257e 3/9: Use common base class for all SQLite connection classes,
ELPA Syncer <=
- [nongnu] elpa/emacsql 70e95655df 8/9: emacsql-sqlite-default-connection: New function, ELPA Syncer, 2023/02/22