aboutsummaryrefslogtreecommitdiffstats
path: root/src/sqlite.c
diff options
context:
space:
mode:
authorStefan Monnier2024-03-14 12:49:08 -0400
committerStefan Monnier2024-03-18 09:32:53 -0400
commit63e67916b01569da5bb24f6d9a354dc72897c468 (patch)
treebb192d43d3e87a0945f0f05967da310aae29030a /src/sqlite.c
parente624bc62752ceb2e60940c5fd9cb6e70611df71c (diff)
downloademacs-scratch/object-type.tar.gz
emacs-scratch/object-type.zip
Followup changes to `cl-type-of`scratch/object-type
These changes came up while working on `cl-type-of` but are not directly related to the new `cl-type-of`. The BASE_PURESIZE bump was needed at some point on one of my machine, not sure why. * src/puresize.h (BASE_PURESIZE): Bump up. * src/sqlite.c (bind_value): Don't use `Ftype_of`. * lisp/emacs-lisp/seq.el (seq-remove-at-position): Simplify. * lisp/emacs-lisp/cl-preloaded.el (finalizer): New (previously missing) type. * doc/lispref/objects.texi (Type Predicates): Minor tweaks.
Diffstat (limited to 'src/sqlite.c')
-rw-r--r--src/sqlite.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/sqlite.c b/src/sqlite.c
index 7a018b28aa4..261080da673 100644
--- a/src/sqlite.c
+++ b/src/sqlite.c
@@ -349,9 +349,7 @@ bind_values (sqlite3 *db, sqlite3_stmt *stmt, Lisp_Object values)
349 value = XCAR (values); 349 value = XCAR (values);
350 values = XCDR (values); 350 values = XCDR (values);
351 } 351 }
352 Lisp_Object type = Ftype_of (value); 352 if (STRINGP (value))
353
354 if (EQ (type, Qstring))
355 { 353 {
356 Lisp_Object encoded; 354 Lisp_Object encoded;
357 bool blob = false; 355 bool blob = false;
@@ -385,14 +383,11 @@ bind_values (sqlite3 *db, sqlite3_stmt *stmt, Lisp_Object values)
385 SSDATA (encoded), SBYTES (encoded), 383 SSDATA (encoded), SBYTES (encoded),
386 NULL); 384 NULL);
387 } 385 }
388 else if (EQ (type, Qinteger)) 386 else if (FIXNUMP (value))
389 { 387 ret = sqlite3_bind_int64 (stmt, i + 1, XFIXNUM (value));
390 if (BIGNUMP (value)) 388 else if (BIGNUMP (value))
391 ret = sqlite3_bind_int64 (stmt, i + 1, bignum_to_intmax (value)); 389 ret = sqlite3_bind_int64 (stmt, i + 1, bignum_to_intmax (value));
392 else 390 else if (FLOATP (value))
393 ret = sqlite3_bind_int64 (stmt, i + 1, XFIXNUM (value));
394 }
395 else if (EQ (type, Qfloat))
396 ret = sqlite3_bind_double (stmt, i + 1, XFLOAT_DATA (value)); 391 ret = sqlite3_bind_double (stmt, i + 1, XFLOAT_DATA (value));
397 else if (NILP (value)) 392 else if (NILP (value))
398 ret = sqlite3_bind_null (stmt, i + 1); 393 ret = sqlite3_bind_null (stmt, i + 1);