Commit graph

84 commits

Author SHA1 Message Date
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
Niko Matsakis
5849af83ac track the "changed at" revision for every query read as well 2018-10-01 08:40:14 -04:00
Niko Matsakis
436d4d5084 combine changed_at and value into a stamped value in the Memo 2018-10-01 08:39:50 -04:00
Niko Matsakis
b5d1ba9000 extract StampedValue into the runtime module 2018-10-01 08:39:50 -04:00
Niko Matsakis
5172b4a7d3
Merge pull request #13 from matklad/volatile-cycles
Detect volatile cycles
2018-10-01 08:39:10 -04:00
Aleksey Kladov
e13187f747 Track cycles in volatile queries 2018-10-01 13:58:54 +03:00
Aleksey Kladov
5b43da0cd2 Add test for cycle detection 2018-10-01 13:48:21 +03:00
Niko Matsakis
803095f13d
Merge pull request #5 from nikomatsakis/input
support "inputs" for incremental computation
2018-09-30 11:05:06 -04:00
Niko Matsakis
968149dc34 rename from of to get and use read in tests 2018-09-30 10:59:08 -04:00
Niko Matsakis
6b5871c5af nicer macro syntax
we give bad error messages if misused, though
2018-09-30 10:55:59 -04:00
Niko Matsakis
0846e6ebba write tests for input 2018-09-30 10:50:46 -04:00
Niko Matsakis
f8e7071da2 restructure incremental test to permit more tests 2018-09-30 10:34:52 -04:00
Niko Matsakis
e2da42d36a add "input" storage 2018-09-30 10:22:11 -04:00
Niko Matsakis
fd6e375553
Merge pull request #4 from nikomatsakis/incremental
add incremental support
2018-09-30 07:48:29 -04:00
Niko Matsakis
8770fd796c add travis.yml support 2018-09-30 07:39:52 -04:00
Niko Matsakis
1fef80d659 expand incremental tests 2018-09-30 07:32:24 -04:00
Niko Matsakis
9bfd8ebbfa add debugging, get incremental test working 2018-09-30 07:28:22 -04:00
Niko Matsakis
2d2bdfe7f1 move incremental, storage_varieties to tests
They aren't meant to be things to model oneself after.
2018-09-30 07:01:21 -04:00
Niko Matsakis
e134ffcdf4 add a public next_revision method and start on incremental test 2018-09-30 06:59:28 -04:00
Niko Matsakis
1929b26505 update test name 2018-09-30 06:09:42 -04:00
Niko Matsakis
4f04f9335c implement maybe_changed_since for volatile, fix comments 2018-09-30 06:09:06 -04:00
Niko Matsakis
7c78d60360 rename transparent to volatile 2018-09-30 06:05:42 -04:00
Niko Matsakis
b12b607db2 have query-descriptors invoke maybe_changed_since 2018-09-30 06:04:09 -04:00
Niko Matsakis
4449e97944 start threading through inputs and revision information 2018-09-29 10:19:10 -04:00
Niko Matsakis
907fe96628 add a Memoized struct 2018-09-29 07:24:53 -04:00
Niko Matsakis
738e285c5c add a (unused) report_query_read to runtime to track deps 2018-09-29 07:23:45 -04:00
Niko Matsakis
5ed8cafe04 introduce active query and some (unused) fields 2018-09-29 07:15:41 -04:00
Niko Matsakis
dc94984a2b introduce a LocalState type 2018-09-29 07:02:32 -04:00