[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/emacsql 568e663032 193/427: Fold dashes into underscores i
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/emacsql 568e663032 193/427: Fold dashes into underscores in identifiers. |
Date: |
Tue, 13 Dec 2022 02:59:41 -0500 (EST) |
branch: elpa/emacsql
commit 568e663032ca10294f58626eb52be68bc6b75624
Author: Christopher Wellons <wellons@nullprogram.com>
Commit: Christopher Wellons <wellons@nullprogram.com>
Fold dashes into underscores in identifiers.
---
emacsql-compiler.el | 8 ++++----
emacsql-tests.el | 3 +++
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/emacsql-compiler.el b/emacsql-compiler.el
index aa7cf9c724..13296b585f 100644
--- a/emacsql-compiler.el
+++ b/emacsql-compiler.el
@@ -39,13 +39,13 @@
(string identifier)
(keyword (substring (symbol-name identifier) 1))
(otherwise (format "%S" identifier))))
- (forbidden "[]-\000-\040!\"#%&'()*+,./;<=>?@[\\^`{|}~\177]"))
+ (forbidden "[]\000-\040!\"#%&'()*+,./;<=>?@[\\^`{|}~\177]"))
(when (or (string-match-p forbidden string)
(string-match-p "^[0-9$]" string))
(emacsql-error "Invalid Emacsql identifier: %S" identifier))
- (if (string-match-p ":" string)
- (replace-regexp-in-string ":" "." string)
- string)))
+ (setf string (replace-regexp-in-string ":" "." string))
+ (setf string (replace-regexp-in-string "-" "_" string))
+ string))
(defun emacsql-escape-value (value)
"Escape VALUE for sending to SQLite."
diff --git a/emacsql-tests.el b/emacsql-tests.el
index 2ae2ec5fea..e635d93999 100644
--- a/emacsql-tests.el
+++ b/emacsql-tests.el
@@ -13,6 +13,9 @@
(should-error (emacsql-escape-identifier "a b"))
(should-error (emacsql-escape-identifier '$foo))
(should-error (emacsql-escape-identifier 10))
+ (should (string= (emacsql-escape-identifier 'person-id) "person_id"))
+ (should (string= (emacsql-escape-identifier
+ 'people:person-id) "people.person_id"))
(should (string= (emacsql-escape-identifier 'foo$) "foo$"))
(should (string= (emacsql-escape-identifier "foo:bar") "foo.bar")))
- [nongnu] elpa/emacsql 8fa1ca451c 238/427: Fix schema mistake in unit test., (continued)
- [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
- [nongnu] elpa/emacsql d21cc86540 188/427: Add lexical binding to tests., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 3d556608ef 394/427: emacsql-mysql: Abort if mysql cannot be found, ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 568e663032 193/427: Fold dashes into underscores in identifiers.,
ELPA Syncer <=
- [nongnu] elpa/emacsql c85ab1f7b4 194/427: Enable foreign keys in SQLite by default., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql f51bb4bfaf 195/427: Allow foreign key specifications within columns., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql c4abd187a3 196/427: Remove junk file., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 3dfd0d4b8c 199/427: Fix missing argument typo., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 7341144e49 201/427: Fix ordering bug in emacsql--var-vars., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql d8d4bf4b98 202/427: Add emacsql-with-transaction macro., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql dc178532e5 203/427: Add emacsql-with-bind., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql cc92c154ee 205/427: Disallow nil as an identifier., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 75c0c4aeb7 204/427: Tweak emacsql-with-bind macro., ELPA Syncer, 2022/12/13
- [nongnu] elpa/emacsql 3f38b357c3 206/427: Detect empty SQL vectors (better error messages)., ELPA Syncer, 2022/12/13