aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
diff options
context:
space:
mode:
authordrh <>2022-02-01 14:58:29 +0000
committerdrh <>2022-02-01 14:58:29 +0000
commit0fe7e7d9242dfccb1240c613a2e4608c0023259c (patch)
tree4bcee3a678538d69b7745f5285a23a747cfa9108 /src/sqliteInt.h
parente66532a63b934135ec9ebd72bdddcf79a3fb97a0 (diff)
downloadsqlite-0fe7e7d9242dfccb1240c613a2e4608c0023259c.tar.gz
sqlite-0fe7e7d9242dfccb1240c613a2e4608c0023259c.zip
Add new interfaces to enable virtual table to process IN operator constraints
all at once, rather than one element at a time. FossilOrigin-Name: eb84b80e1f6d8c32bf0c9e1731f0233de0160a13f714f766779ae01fdf504e7b
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r--src/sqliteInt.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index 6d9365071..374fc9554 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -1231,10 +1231,11 @@ typedef struct With With;
/*
** A bit in a Bitmask
*/
-#define MASKBIT(n) (((Bitmask)1)<<(n))
-#define MASKBIT64(n) (((u64)1)<<(n))
-#define MASKBIT32(n) (((unsigned int)1)<<(n))
-#define ALLBITS ((Bitmask)-1)
+#define MASKBIT(n) (((Bitmask)1)<<(n))
+#define MASKBIT64(n) (((u64)1)<<(n))
+#define MASKBIT32(n) (((unsigned int)1)<<(n))
+#define SMASKBIT32(n) ((n)<=31?((unsigned int)1)<<(n):0)
+#define ALLBITS ((Bitmask)-1)
/* A VList object records a mapping between parameters/variables/wildcards
** in the SQL statement (such as $abc, @pqr, or :xyz) and the integer