John Gallagher
e180ab15ce
Fix incomplete match under functions
feature
2017-01-22 20:05:06 -05:00
gwenn
46df930881
Merge remote-tracking branch 'jgallagher/master' into vtab
2016-12-31 09:15:26 +01:00
John Gallagher
4c8b0ab6dd
Merge pull request #181 from gwenn/clippy
...
Fix clippy warnings
2016-12-31 01:23:40 -05:00
John Gallagher
4181441d63
Merge branch 'master' into gwenn-invalid-column-type
2016-12-31 00:35:47 -05:00
John Gallagher
0d685af2d5
Merge branch 'master' into safe-tosql
2016-12-30 23:18:32 -05:00
gwenn
8c6f585d52
Fix clippy warnings
2016-12-04 10:18:56 +01:00
gwenn
8f28ff17b8
Fix rustdoc warnings
2016-08-15 12:41:15 +02:00
gwenn
505abc0331
Change signature of VTabCursor::filter
2016-08-14 09:31:53 +02:00
gwenn
8f079819f7
Change VTabCursor::filter signature
2016-08-13 13:55:30 +02:00
gwenn
3eb3b22ad5
Merge remote-tracking branch 'jgallagher/master' into vtab
2016-07-02 11:28:59 +02:00
gwenn
e2cf171192
Introduce FromSqlError
as specified by John Gallagher
2016-06-02 21:03:25 +02:00
gwenn
91dc30b04d
Simplify InvalidType
2016-05-30 21:20:07 +02:00
gwenn
fb19e718cf
Introduce an intermediary InvalidType error.
...
InvalidType is used where the column/parameter index is not known.
2016-05-30 20:35:56 +02:00
gwenn
cabcaf3dcb
Better error reporting on invalid column type.
2016-05-26 21:03:05 +02:00
John Gallagher
f3693a993e
rustfmt
2016-05-26 00:28:18 -04:00
John Gallagher
2b830fde2d
Remove pub re-export of FFI helpers from functions
.
2016-05-26 00:14:45 -04:00
John Gallagher
6467815d02
Replace functions::ToResult with ToSql.
2016-05-26 00:14:45 -04:00
John Gallagher
e4926ac0d7
Rework ToSql to be implementable without unsafe
.
2016-05-26 00:14:45 -04:00
John Gallagher
2f4990dafd
Rename BorrowedValue -> ValueRef.
2016-05-24 21:34:18 -04:00
John Gallagher
0fbfad2452
Remove functions::FromValue.
...
With the new definition of FromSql, we can reuse it since we can convert
a sqlite3_value into a BorrowedValue.
2016-05-24 20:08:12 -04:00
gwenn
0740620ffe
Merge remote-tracking branch 'jgallagher/master' into vtab
2016-05-20 18:31:30 +02:00
John Gallagher
c4417bee0e
Manual fixes for rustfmt overly long lines.
2016-05-19 20:09:40 -05:00
gwenn
29373e7d0d
Merge remote-tracking branch 'jgallagher/master' into vtab
2016-05-16 22:30:58 +02:00
gwenn
3a52dd65f0
Rustfmt
2016-05-16 19:52:17 +02:00
gwenn
6fb549420b
Rustfmt
2016-05-03 21:00:59 +02:00
gwenn
5541cb06fe
Merge remote-tracking branch 'jgallagher/master' into vtab
2016-03-30 18:26:26 +02:00
John Gallagher
41fe698cec
Address additional clippy warnings
2016-03-29 14:18:56 -04:00
gwenn
0fe1990d34
Fix clippy warnings
2016-02-14 16:11:59 +01:00
gwenn
eab16402be
Merge remote-tracking branch 'jgallagher/master' into vtab
2016-02-01 20:35:30 +01:00
John Gallagher
f4c3ba0fa2
rustfmt
2016-02-01 10:48:30 -05:00
gwenn
ea14115d6c
Ensure there is no allocation in final aggregation step.
2016-01-28 18:12:23 +01:00
gwenn
2d6705b03e
First, try to implement a simple virtual table.
2016-01-23 18:34:09 +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
gwenn
12f26e78b3
Introduce RowIndex trait (like in rust-postgres)
2016-01-02 12:13:37 +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
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
Gwenael Treguier
13c93e0f8b
Rustfmt
2015-12-15 20:57:32 +01:00
Gwenael Treguier
458951e2d5
First draft to support user defined aggregate functions.
2015-12-15 20:54:23 +01:00
John Gallagher
b883ab651d
Update unsafety of C function pointers for new bindgen
2015-12-13 08:40:51 -05:00
John Gallagher
eb60bb3111
Rename SqliteResult
-> Result
.
2015-12-12 14:06:03 -05:00
John Gallagher
f0b6bf9152
Rename SqliteError -> Error.
2015-12-12 13:53:58 -05:00
John Gallagher
4327a84edb
Rename SqliteConnection -> Connection.
...
Leave old name in as a (deprecated) typealias.
2015-12-12 13:53:34 -05:00
John Gallagher
4830b0a648
Add unit test for function with variable number of arguments
2015-12-12 10:44:08 -05:00
John Gallagher
3bcde498bd
Expand comments.
2015-12-11 16:27:39 -05:00
John Gallagher
ecef092303
Add remove_function
to clear a user-defined function.
2015-12-11 15:47:52 -05:00
John Gallagher
3baf7b10f8
Add unit test demonstrating a closure-based UDF.
2015-12-11 15:35:59 -05:00
John Gallagher
3913e89f94
Allow user scalar functions to return results.
...
This removes the need for scalar functions to have direct access to the
context (in order to set the return value).
2015-12-11 15:08:40 -05:00
John Gallagher
81ec7fe7cd
Add get
to function::Context.
...
This allows user-defined functions to now only accept a `Context`, as it
embeds the arguments inside itself.
2015-12-11 14:46:28 -05:00
John Gallagher
94d40c41c7
Introduce Context wrapper for user-defined functions.
...
This commit adds get/set auxilliary data for arguments; more to come.
2015-12-11 13:54:08 -05:00
John Gallagher
29494f46f6
Let create_scalar_function take an FnMut instead of a extern "C" fn.
2015-12-11 12:01:05 -05:00
John Gallagher
aae431760e
rustfmt - no code changes
2015-12-11 11:41:40 -05:00
John Gallagher
0c3575e845
Fix segfault in regexp user function test
2015-12-11 11:40:53 -05:00
Gwenael Treguier
fe6afe2a94
Merge branch 'master' of https://github.com/jgallagher/rusqlite into functions
2015-12-06 21:33:21 +01:00
Gwenael Treguier
b9ab3350ea
Add regexp() function implementation
2015-08-09 13:06:23 +02:00
Gwenael Treguier
0a454eed79
Add support to user defined scalar functions
2015-08-09 09:52:53 +02:00