John Gallagher
a793f8c8c5
Remove scary lifetime-of-rows-may-panic from README.
...
Closes #119 .
2016-02-01 14:30:51 -05:00
John Gallagher
55dde134e1
Merge pull request #122 from gwenn/zeroblob
...
Introduce ZeroBlob struct.
2016-02-01 14:14:14 -05:00
gwenn
43613a0020
Moves ZeroBlob from types to blob module.
2016-02-01 18:13:07 +01:00
John Gallagher
f4c3ba0fa2
rustfmt
2016-02-01 10:48:30 -05:00
gwenn
f488277373
Introduce ZeoBlob struct.
2016-01-31 18:17:28 +01:00
gwenn
ea14115d6c
Ensure there is no allocation in final aggregation step.
2016-01-28 18:12:23 +01:00
John Gallagher
ca761d7697
Avoid creating an aggregation context unnecessarily if the function is
...
called against 0 rows.
2016-01-07 15:14:24 -05:00
John Gallagher
199dfc455b
Internal refactor - extract common error handling code
2016-01-07 12:39:16 -05:00
John Gallagher
b189f6ba66
Change how Aggregate works when called on no rows.
...
Before this commit, if the aggregate function was called on 0 rows, it
would always return NULL (and never call Aggregate::init() or
finalize()). Now, init() and finalize() are always called to get the
result of the function, even if step() is never called.
2016-01-07 12:35:27 -05:00
John Gallagher
e4819b6adc
Give Aggregate::finalize ownership of the context it created
2016-01-07 11:42:39 -05:00
John Gallagher
ab262a55de
Merge branch 'aggregate' of https://github.com/gwenn/rusqlite into gwenn-aggregate
2016-01-07 11:40:40 -05:00
John Gallagher
726bd59932
Fix typo "rowss" in docs.
2016-01-07 11:36:01 -05:00
John Gallagher
f290c15d0d
Merge branch 'dynamic' of https://github.com/gwenn/rusqlite into gwenn-dynamic
2016-01-07 11:12:05 -05:00
gwenn
12f26e78b3
Introduce RowIndex trait (like in rust-postgres)
2016-01-02 12:13:37 +01:00
gwenn
9db82e74db
Make possible to execute dynamic queries.
...
Queries with dynamic column count/type.
2016-01-02 10:28:00 +01:00
gwenn
987b06cf79
Add some documentation
2015-12-20 19:27:28 +01:00
gwenn
83b9fd0aba
Test a user-defined aggregate function: my_sum.
2015-12-20 12:23:51 +01:00
gwenn
468ded3e08
Merge branch 'master' of https://github.com/jgallagher/rusqlite into aggregate
2015-12-18 20:39:08 +01:00
John Gallagher
b241f98920
Add test and check for SQLite being in single-threaded mode
2015-12-16 23:56:21 -05:00
John Gallagher
2e082d7f94
Document new Error enum.
2015-12-16 23:51:24 -05:00
John Gallagher
7920dbc5ff
Only check for SQLITE_CONSTRAINT_NOTNULL on new enough versions of SQLite.
2015-12-16 20:30:27 -05:00
John Gallagher
2129cdb0f2
Add Send and Sync bounds to boxed errors to be comaptible with io::Error.
2015-12-16 20:30:27 -05:00
John Gallagher
047861b928
Move Error
into its own module (internal organization only - public API remains).
2015-12-16 20:30:27 -05:00
John Gallagher
aac4d59fcc
Change Error
from a struct to an enum (BREAKING CHANGE).
...
This allows us to separate out the underlying SQLite error codes from
errors that occur on the Rust side.
2015-12-16 20:30:27 -05:00
John Gallagher
bf859a8008
Attempt to enable extended result codes for all connections
2015-12-16 20:30:27 -05:00
Gwenael Treguier
13c93e0f8b
Rustfmt
2015-12-15 20:57:32 +01:00
Gwenael Treguier
0b42e3c78c
Merge branch 'master' of https://github.com/jgallagher/rusqlite into aggregate
2015-12-15 20:55:46 +01:00
Gwenael Treguier
458951e2d5
First draft to support user defined aggregate functions.
2015-12-15 20:54:23 +01:00
John Gallagher
c63238108c
Add comment to write recommending write_all.
2015-12-15 14:24:05 -05:00
John Gallagher
3482e1c453
Add unit test confirming write_all to a Blob fails if given too much data.
2015-12-15 13:39:47 -05:00
John Gallagher
d24968db15
Expand comments.
2015-12-14 16:21:38 -05:00
John Gallagher
900c241c4e
Fix logic in seek to disallow seeking past the end
2015-12-14 16:11:07 -05:00
John Gallagher
af9b45851a
Truncate instead of erroring if asked to read/write too much data from a Blob.
2015-12-14 16:06:53 -05:00
John Gallagher
c15a8dba79
More extensive unit tests for Blob.
2015-12-14 15:03:29 -05:00
John Gallagher
a43da3ef73
rustfmt
2015-12-14 14:13:14 -05:00
John Gallagher
7a7d13f520
Move Blob's seek
to an impl of std::io::Seek.
2015-12-14 14:12:11 -05:00
John Gallagher
439f8583e7
Move Blob's write
to an impl of std::io::Write.
2015-12-14 13:50:18 -05:00
John Gallagher
f290ce11ab
Move Blob's read
to an impl of std::io::Read.
2015-12-14 13:45:44 -05:00
John Gallagher
5ac5f3e9b5
Make blob_open
take a DatabaseName
instead of a str.
2015-12-14 13:38:36 -05:00
John Gallagher
73611d45d5
Merge branch 'blob' of https://github.com/gwenn/rusqlite into gwenn-blob
2015-12-14 13:35:05 -05:00
John Gallagher
4b512212d2
Inline decode_result_with_errmsg to fix dead code warning
2015-12-13 14:59:47 -05:00
John Gallagher
bf96a15bcf
Merge remote-tracking branch 'origin/master' into bindgen-update
2015-12-13 08:45:59 -05:00
John Gallagher
b883ab651d
Update unsafety of C function pointers for new bindgen
2015-12-13 08:40:51 -05:00
Gwenael Treguier
1c4ca000cf
Simplify execute_batch implementation.
2015-12-13 14:15:56 +01:00
Gwenael Treguier
888dce0d8f
Rustfmt
2015-12-13 11:05:11 +01:00
Gwenael Treguier
6f0f121d61
Merge remote-tracking branch 'remotes/jgallagher/master' into blob
2015-12-13 10:53:29 +01:00
John Gallagher
6bcc3edccd
BREAKING CHANGE: Remove common prefix on TransactionBehavior case names.
2015-12-12 14:22:50 -05:00
John Gallagher
b1cde705be
Rename SqliteLoadExtensionGuard
-> LoadExtensionGuard
.
2015-12-12 14:20:11 -05:00
John Gallagher
3d15a8a15c
Rename SqliteTransaction*
-> Transaction*
.
2015-12-12 14:17:43 -05:00
John Gallagher
9cac56d6a2
Rename SqliteOpenFlags
-> OpenFlags
.
2015-12-12 14:13:29 -05:00