13 Commits

Author SHA1 Message Date
Dan Holmsand
3fca2e5d41 Make reactions async by queueing changes instead
Reactions now put themselves in a queue when they get a
callback from an atom. The queue is flushed before rendering, and
on deref on individual reactions.

This turns out to perform much better in many cases.
2015-09-30 08:56:06 +02:00
Dan Holmsand
87758ae396 Extend test for rswap! 2015-09-14 19:39:44 +02:00
Dan Holmsand
e11c881aa7 Add rswap!
Works just like swap!, except that it allows recursive swaps on
the same atom, and it always returns nil.
2015-09-14 19:35:48 +02:00
Dan Holmsand
e12716da5d Log caught errors instead of rethrowing 2015-09-13 14:30:19 +02:00
Dan Holmsand
04daf6ac57 Exceptions from reactions are now thrown on deref only 2015-09-13 11:00:46 +02:00
Dan Holmsand
f785362b46 Some cleanup 2015-09-10 21:27:02 +02:00
Dan Holmsand
0b77d9af31 Get rid of active? 2015-09-10 20:51:09 +02:00
Dan Holmsand
80a3c27fac Some performance tweaking 2015-09-10 18:30:00 +02:00
Dan Holmsand
e09534c8cd Experiment with alternative to set 2015-09-10 17:40:55 +02:00
Dan Holmsand
c4cd8c2921 wip: tests pass 2015-08-31 11:36:42 +02:00
Dan Holmsand
6c345db29e Now almost working 2015-08-31 10:39:17 +02:00
Dan Holmsand
1782ff1832 wip - not working 2015-08-31 10:05:53 +02:00
Dan Holmsand
163308a392 Make site and examples work with ClojureScript 2816
ClojureScript all of a sudden complains about "single segment
namespaces", which forces a rather massive reorg.

Also, cljs.test/run-tests is broken.
2015-02-10 14:35:12 +01:00