[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/emacsql 2faed63b20 107/427: Prime emacsql-expand for subst
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/emacsql 2faed63b20 107/427: Prime emacsql-expand for substatements. |
Date: |
Tue, 13 Dec 2022 02:59:33 -0500 (EST) |
branch: elpa/emacsql
commit 2faed63b20eff4a4cbc78c080856979909979ba0
Author: Christopher Wellons <wellons@nullprogram.com>
Commit: Christopher Wellons <wellons@nullprogram.com>
Prime emacsql-expand for substatements.
---
emacsql.el | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/emacsql.el b/emacsql.el
index 8c14f9f392..401dc74506 100644
--- a/emacsql.el
+++ b/emacsql.el
@@ -311,7 +311,7 @@ a list of (<string> [arg-pos] ...)."
(declare (indent 2))
`(emacsql-add-expander ,keyword ,(length args) (lambda ,args ,@body)))
-(defun emacsql-expand (sql)
+(defun emacsql-expand (sql &optional subsql-p)
"Expand SQL into a SQL-consumable string, with variables."
(let* ((cache emacsql-expander-cache)
(cached (and cache (gethash sql cache))))
@@ -325,7 +325,9 @@ a list of (<string> [arg-pos] ...)."
else do (error "Unrecognized keyword %s" keyword)
do (setf items (cl-subseq items arity))
finally
- (let ((string (concat (mapconcat #'car parts " ") ";"))
+ (let ((string (concat (if subsql-p "(" "")
+ (mapconcat #'car parts " ")
+ (if subsql-p ")" ";")))
(vars (apply #'nconc (mapcar #'cdr parts))))
(cl-return (setf (gethash sql cache)
(cons string vars))))))))
- [nongnu] elpa/emacsql 739c24cab6 389/427: Add kludge to work around `cl-defmethod' bug, (continued)
- [nongnu] elpa/emacsql 739c24cab6 389/427: Add kludge to work around `cl-defmethod' bug, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 18b40213fd 403/427: No longer use obsolete generalized variable `point', ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 6d999ba39d 400/427: Update library headers, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql a29b9e7ea5 388/427: No longer needlessly require url and url-http, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 20e390ea06 401/427: Add FAQ to README.md, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 30912aa69e 404/427: Include ../.config.mk in sqlite/Makefile, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql f5da68e5f9 391/427: Fix quoting in docstring, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql a4d01edd71 411/427: Adjust emacsql-pg to new pg version from original author, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql f179ba928a 047/427: Add :drop-table expander., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 458b8a6acd 074/427: Add :insert and :values expanders., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 2faed63b20 107/427: Prime emacsql-expand for substatements.,
ELPA Syncer <=
- [nongnu] elpa/emacsql 13cfbeeaba 186/427: Tidy up the constructors., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql a742687cfb 192/427: Add funcall operator., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 8fa1ca451c 238/427: Fix schema mistake in unit test., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql ea613c5191 360/427: Push other sub-packages up to Emacs 25 as well, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql fbda94e6b5 339/427: Improve some doc-strings., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 6f1e375a2e 367/427: Better escaping of NUL and control characters (#42), ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 3dc6971829 190/427: Add ALTER TABLE stuff., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql ef976b8649 189/427: Add package target for Makefile., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 672963ae53 191/427: Add DISTINCT option to :select., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql b1da2ba9d2 297/427: Change compiler flag order (work around old gcc bug)., ELPA Syncer, 2022/12/13