Commit graph

961 commits

Author SHA1 Message Date
Niko Matsakis
2d6e454638 add the idea of "untracked reads" and use it to optimize volatile
Now we won't be tracking the inputs to a volatile query, since we don't
care about them anyway.
2018-10-09 11:04:25 -04:00
Niko Matsakis
1e6bfc7fdd introduce a callback into execute_query_implementation 2018-10-09 10:26:33 -04:00
Niko Matsakis
30236cc110 introduce a new helper, verify_inputs 2018-10-09 09:27:59 -04:00
Niko Matsakis
121821117d
Merge pull request #36 from matklad/weak-memoized
Merge Memoized and Dependency storages
2018-10-09 08:53:57 -04:00
Niko Matsakis
296d33aae7 factor out ChangedAt to record when something changed 2018-10-09 08:53:13 -04:00
Niko Matsakis
4efbd411fa check with old_memo.value.is_some() before revalidating inputs 2018-10-09 08:40:53 -04:00
Niko Matsakis
f04d66fce4 rename to MemoizationPolicy 2018-10-09 08:39:41 -04:00
Niko Matsakis
067e478e48 correct spelling, add spacing between fields 2018-10-09 08:37:57 -04:00
Niko Matsakis
d3fdfad141
Merge pull request #42 from memoryruins/remove-send-bounds
Remove Send bounds on Query keys and values
2018-10-09 08:22:16 -04:00
Niko Matsakis
ac6f2a5689
Merge pull request #40 from matklad/reexport-runtime
Re-export runtime
2018-10-09 08:21:44 -04:00
Niko Matsakis
b2f3d7a70f
Merge pull request #39 from matklad/no-default-key
Remove DefaultKey trait
2018-10-09 08:20:40 -04:00
memoryruins
4c7bd8745a Remove bounds on Query keys and values 2018-10-07 15:14:26 -04:00
Aleksey Kladov
f14d846146 Re-export runtime
cc #17
2018-10-07 14:08:22 +03:00
Aleksey Kladov
6c09f40733 Remove DefaultKey trait
We no longer use `.get` function directly, so DefaultKey does not make
much sense
2018-10-07 14:01:58 +03:00
Aleksey Kladov
b411d51a05 Merge Memoized and Dependency storages
closes #18
2018-10-06 20:15:12 +03:00
Niko Matsakis
e5c97040f1
Merge pull request #35 from nikomatsakis/set-unchecked
add a comment to `set_unchecked`
2018-10-06 07:22:31 -04:00
Niko Matsakis
2f5c2f1b44 add a comment 2018-10-06 07:12:29 -04:00
Niko Matsakis
1e5f409027
Merge pull request #33 from nikomatsakis/set-unchecked
add a `set_unchecked` method that can be used to do mocking in tests
2018-10-06 06:53:07 -04:00
Niko Matsakis
6a2a5bc695 add some tests of set_unchecked in use 2018-10-05 15:36:50 -04:00
Niko Matsakis
c52a3775df bump to 0.4.1 since I would like to release this 2018-10-05 15:25:12 -04:00
Niko Matsakis
0225fc615c add a set_unchecked method that can be used to do mocking in tests 2018-10-05 15:23:17 -04:00
Niko Matsakis
a4eaf8686e
Merge pull request #31 from nikomatsakis/fix-repo-link
fix repository link
2018-10-05 11:42:48 -04:00
Niko Matsakis
a4bc62eb71 fix repository link 2018-10-05 11:07:48 -04:00
Niko Matsakis
ad70680561
Merge pull request #30 from nikomatsakis/v0.4.0
publish v0.4.0
2018-10-05 11:05:34 -04:00
Niko Matsakis
56b20a58c5 bump to v0.4.0 2018-10-05 11:04:41 -04:00
Niko Matsakis
8f3561d880
Merge pull request #29 from nikomatsakis/api-3.0
Api 3.0
2018-10-05 11:03:56 -04:00
Niko Matsakis
1428adda47 update readme docs 2018-10-05 11:03:51 -04:00
Niko Matsakis
c75e7e44f7 add a test showing that you can write use fn 2018-10-05 10:39:55 -04:00
Niko Matsakis
8366b3a38b rename query_prototype to query_group 2018-10-05 10:35:50 -04:00
Niko Matsakis
55ec1f51d3 switch to use fn 2018-10-05 10:30:17 -04:00
Niko Matsakis
1b98ecb7a8 change to db.query(Query).set(key, value) 2018-10-05 06:58:51 -04:00
Niko Matsakis
0ee6f3884d make query_prototype also define queries, remove query_definition 2018-10-05 05:55:35 -04:00
Niko Matsakis
cd5622c6de make query method get by default
Use `Query.set(db, key, value)` to set. Not sure about this.
2018-10-05 05:28:51 -04:00
Niko Matsakis
d6c7080877 introduce a GetQueryTable trait and use to get the query tables 2018-10-05 05:15:21 -04:00
Niko Matsakis
84dca313f7 factor out a QueryFunction trait -- inputs don't implement it 2018-10-05 04:59:33 -04:00
Niko Matsakis
a4fb4b7b13 rename query context to database 2018-10-05 04:54:51 -04:00
Niko Matsakis
8074973fc9
Merge pull request #25 from nikomatsakis/v0.3.0
bump to v0.3.0
2018-10-02 20:13:34 -04:00
Niko Matsakis
1c03cc47e5 bump to v0.3.0 2018-10-02 20:12:52 -04:00
Niko Matsakis
89a0ff4221
Merge pull request #21 from nikomatsakis/docs
change `query_prototype` to take entire trait; update the docs
2018-10-02 06:01:57 -04:00
Niko Matsakis
1dacf73063 udpate license 2018-10-02 05:59:10 -04:00
Niko Matsakis
e7d55de454
Merge pull request #19 from matklad/assert
Assert inputs are not modified concurrently
2018-10-02 05:54:19 -04:00
Niko Matsakis
633b4f92d5 update FAQ with a link 2018-10-02 05:52:27 -04:00
Niko Matsakis
0a2a871d98 improve docs 2018-10-02 05:50:38 -04:00
Niko Matsakis
2ddc8032ee make query_prototype take trait, rename hello_world to compiler 2018-10-01 20:42:41 -04:00
Niko Matsakis
5472cfdbc8 simplify the logic by using changed_at and not verified_at
I think they are actually equivalent, as we have already fond that the
inputs did not change in the range `changed_at..=verified_at`.
2018-10-01 13:20:18 -04:00
Aleksey Kladov
981606a121 Assert inputs are not modified concurrently 2018-10-01 16:29:19 +03:00
Niko Matsakis
848019bbca bump to v0.2.0 2018-10-01 09:09:13 -04:00
Niko Matsakis
e18f14fca5
Merge pull request #14 from nikomatsakis/dep-only
Add support for "dependency only" tracking
2018-10-01 08:44:47 -04:00
Niko Matsakis
157e1e47f1 add support for "dependency only" tracking 2018-10-01 08:40:15 -04:00
Niko Matsakis
5a802ae05c add a helper method overwrite_placeholder 2018-10-01 08:40:15 -04:00