Commit graph

48 commits

Author SHA1 Message Date
Niko Matsakis
b9ae3dbc4c test for "shallow constant sweep" 2018-10-25 05:48:37 -04:00
Niko Matsakis
d429926ddd treat constants more uniformly
We used to ignore constant inputs entirely. We now track them, but if we
find that a value is constant, we discard ITS inputs.  This means that
-- if we track dependencies -- we have an "outer rim" of constant
values.

Also take the opportunity to reshuffle how derived inputs represent
their state.
2018-10-25 05:48:36 -04:00
Niko Matsakis
c4d93f9733 rename test to give it a unique prefix 2018-10-25 05:47:45 -04:00
Niko Matsakis
ce24850c3d switch assert_log to a better debug library 2018-10-25 05:47:45 -04:00
Kevin Leimkuhler
917ca42f04 Panic safely in a single threaded context 2018-10-23 21:54:14 -07:00
Niko Matsakis
c94db84945 add a test for the revision lock 2018-10-19 06:00:52 -04:00
Niko Matsakis
e348c21528 move signal into its own module 2018-10-19 06:00:44 -04:00
Niko Matsakis
e58702ebd0 replace use of await, which is a keyword in Rust 2018 2018-10-19 05:17:26 -04:00
Niko Matsakis
120ba00f33 remove a lot of () keys 2018-10-18 21:30:55 -04:00
Niko Matsakis
85f2357ebe add a test showing what happens with inputs 2018-10-18 21:19:50 -04:00
Niko Matsakis
c0d8a08de9 permit provider fns to be variadic as well 2018-10-18 21:15:24 -04:00
Niko Matsakis
ed2cf2333f support variadic queries in the trait definition 2018-10-18 19:24:38 -04:00
Niko Matsakis
2359d8aa0c add a test of computing sum("abc") twice in parallel 2018-10-14 14:58:31 -04:00
Niko Matsakis
3318921717 show that executing queries on distinct keys can proceed in parallel 2018-10-13 05:45:28 -04:00
Niko Matsakis
e9fadfcfe7 add more knobs, and refactor to make that easier 2018-10-13 05:39:51 -04:00
Niko Matsakis
8da63ec029 move distinct tests into their own files to ease reading 2018-10-13 05:27:20 -04:00
Niko Matsakis
fb5ba07290 move the test setup in setup.rs 2018-10-13 05:22:38 -04:00
Niko Matsakis
8f03f3bb76 move parallel tests into a directory 2018-10-13 05:03:34 -04:00
Niko Matsakis
68015738a5 add parallel tests that show cancellation, racing threads 2018-10-12 12:11:37 -04:00
Niko Matsakis
a0c983403d add some tests about setting with same value 2018-10-11 05:49:05 -04:00
Niko Matsakis
5e381f314b add test where we become constant but do not change value 2018-10-11 04:56:34 -04:00
Niko Matsakis
6778898a34 track when a value *became* constant
Turns out we need this, as demonstrated by the included test =)
2018-10-11 04:53:49 -04:00
Niko Matsakis
efa8b0f307 add some simple tests using is_constant 2018-10-11 04:53:24 -04:00
Niko Matsakis
15faf43071 add some tests for constants (check for invalidation) 2018-10-09 20:49:26 -04:00
Aleksey Kladov
46c55a1e5b Disable underscore_imports
Builds with beta now!
2018-10-09 22:40:03 +03:00
Aleksey Kladov
69b9dff557 Use AtomicUsize instead of AtomicU64 2018-10-09 22:37:38 +03:00
Aleksey Kladov
1c349d4229 Switch crate to pub(crate) 2018-10-09 22:34:30 +03:00
Niko Matsakis
3b5f16cbcb
Merge pull request #43 from nikomatsakis/derived-storage
Combine memoized and volatile to make "derived storage"
2018-10-09 15:19:14 -04:00
Niko Matsakis
c93868c9dc make volatile queries memoize
This ensures consistency of results.
2018-10-09 12:41:56 -04:00
Aleksey Kladov
f14d846146 Re-export runtime
cc #17
2018-10-07 14:08:22 +03:00
Niko Matsakis
6a2a5bc695 add some tests of set_unchecked in use 2018-10-05 15:36:50 -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
a4fb4b7b13 rename query context to database 2018-10-05 04:54:51 -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
157e1e47f1 add support for "dependency only" tracking 2018-10-01 08:40:15 -04:00
Aleksey Kladov
5b43da0cd2 Add test for cycle detection 2018-10-01 13:48:21 +03: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
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