Niko Matsakis
2e3f8b1a3d
name the field runtime_id
2018-10-30 21:00:33 -04:00
Niko Matsakis
59ab0bd7a2
introduce simple callbacks that can be used to build better logging
2018-10-30 20:19:25 -04:00
Niko Matsakis
39dd71ff66
remove use of upgradable_read
from input queries
2018-10-30 15:08:09 -04:00
Niko Matsakis
13ae45d441
remove input policies
2018-10-30 12:59:33 -04:00
Niko Matsakis
e6d7cee501
no need for format!
in panic!
2018-10-27 06:44:19 -04:00
Niko Matsakis
042f89e7f8
add input policies to permit a wider range of inputs
2018-10-26 19:34:11 -04:00
Niko Matsakis
c21ea47cfc
introduce SweepStrategy
2018-10-25 05:48:37 -04:00
Niko Matsakis
7f1d1995aa
introduce ability to ask a table what keys it has
2018-10-25 05:48:37 -04:00
Niko Matsakis
649b1a6f99
introduce a sweep
routine
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
1ab8d1a64e
refactor ChangedAt
into a struct
...
There are really two orthogonal things going on here.
2018-10-25 05:47:45 -04:00
Kevin Leimkuhler
7b20806417
Initial removal of Eq bound on Q::Val
2018-10-18 15:29:15 -07:00
Aleksey Kladov
4401e88fba
Hide public impl detail in the plumbing module
2018-10-16 11:24:51 +03:00
Niko Matsakis
1799e12aa4
more debug! when executing from inputs
2018-10-15 05:25:05 -04:00
Niko Matsakis
4f4676df60
remove a bunch of unused imports
2018-10-12 11:21:40 -04:00
Niko Matsakis
890207346f
do not hold input write lock while incrementing revision
2018-10-12 05:28:17 -04:00
Niko Matsakis
d11a15aff9
add debugging methods on input::set
2018-10-12 05:27:42 -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
16d151e4c8
add debugging APIs -- just is_constant
for now
2018-10-11 04:37:29 -04:00
Niko Matsakis
42b88fe7e6
rewrite map to just grab a write lock, and fix some latent bugs
2018-10-09 20:36:29 -04:00
Niko Matsakis
a7317084dc
support set_constant
in inputs
...
FIXME: Need test for the `panic!` case etc
2018-10-09 20:36:29 -04:00
Niko Matsakis
032b269113
extract a set_common
helper
2018-10-09 20:36:29 -04:00
Niko Matsakis
3ffd166f2c
check if input has changed before incrementing revision
...
WIP -- needs test
2018-10-09 20:36:29 -04:00
Niko Matsakis
6a0ed30d73
rename MutQueryStorageOps
to InputQueryStorageOps
2018-10-09 20:36:29 -04:00
Aleksey Kladov
74486afdec
elide some lifetimes
2018-10-10 00:44:26 +03:00
Aleksey Kladov
f28e8c1be5
disable in-band lifetimes
2018-10-09 22:39:03 +03:00
Niko Matsakis
296d33aae7
factor out ChangedAt
to record when something changed
2018-10-09 08:53:13 -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
a4fb4b7b13
rename query context to database
2018-10-05 04:54:51 -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
b5d1ba9000
extract StampedValue into the runtime module
2018-10-01 08:39:50 -04:00
Niko Matsakis
0846e6ebba
write tests for input
2018-09-30 10:50:46 -04:00
Niko Matsakis
e2da42d36a
add "input" storage
2018-09-30 10:22:11 -04:00