Dan Holmsand
d30ef3aedb
Make copying of watches in ratom a little faster
2015-10-09 14:41:03 +02:00
Dan Holmsand
88d961563a
Simplify template.cljs a little
2015-10-09 13:32:30 +02:00
Dan Holmsand
47f49868ae
Optimize template.cljs a little
2015-10-09 09:40:41 +02:00
Dan Holmsand
32a9609b11
Add a few more tests for track
2015-10-08 23:12:32 +02:00
Dan Holmsand
9f07aa35f4
Experiment with js-object element in 0.14
...
Doesn't seem to do much for performance, unfortunately.
2015-10-08 18:37:48 +02:00
Dan Holmsand
3aea9849ec
One more step towards React 0.14
2015-10-08 16:19:40 +02:00
Dan Holmsand
fa48e61f47
Start move to React 0.14
2015-10-08 14:14:34 +02:00
Dan Holmsand
0c8269766f
Avoid calling flush! when flushing
2015-10-08 07:04:41 +02:00
Dan Holmsand
158fca953b
Make NativeWrapper thinner
2015-10-07 23:02:55 +02:00
Dan Holmsand
2a74cbb144
More tests for warnings
2015-10-07 21:37:26 +02:00
Dan Holmsand
1d1552960c
Start testing warnings from components
2015-10-07 20:38:19 +02:00
Dan Holmsand
7f189d7595
Fix lifecycle test
2015-10-07 19:58:00 +02:00
Dan Holmsand
ec769d0c3c
Print function names instead of source in warnings/errors
2015-10-07 19:50:29 +02:00
Dan Holmsand
b86e6278eb
Reformat to get rid of very long lines
2015-10-07 18:01:13 +02:00
Dan Holmsand
fefbcf109e
Use new hiccup-err more
2015-10-07 17:56:08 +02:00
Dan Holmsand
72e546128f
Avoid any overhead for supporting [:> comp ...]
2015-10-07 17:33:40 +02:00
Dan Holmsand
26392052b4
Get rid of pesky React warning in demo
2015-10-07 13:55:16 +02:00
Dan Holmsand
60427a3231
A little cleanup
2015-10-07 13:31:54 +02:00
Dan Holmsand
e79132c1f3
Always queue updates in reactions, even when flushing
2015-10-07 11:32:42 +02:00
Dan Holmsand
e6b32c6aee
Allow raw React classes to be used with [:> comp ...]
2015-10-06 14:27:44 +02:00
Dan Holmsand
533c05aaca
Allow output from create-class to be used directly by React
2015-10-06 12:49:47 +02:00
Dan Holmsand
4601b37ec5
Use functions to access argv
2015-10-06 10:46:59 +02:00
Dan Holmsand
eb359b301d
More property access to component.cljs
2015-10-06 10:40:11 +02:00
Dan Holmsand
52e729a294
Simplify class creation
2015-10-05 12:18:42 +02:00
Dan Holmsand
038b312dd0
Merge branch 'create-class'
2015-10-05 10:42:51 +02:00
Dan Holmsand
de1e4d4ad5
Get rid of silent in ratom
...
And some small cleanup
2015-10-04 12:53:23 +02:00
Dan Holmsand
9a2d632826
Refactor to avoid circular dependency in ratom
2015-10-04 11:27:47 +02:00
Dan Holmsand
69e39bf6f7
Use keyword as key in with-let
2015-10-04 10:39:18 +02:00
Dan Holmsand
6ad55160eb
Use set to simplify deref handling
2015-10-04 09:29:23 +02:00
Dan Holmsand
dabffb86b6
Cleanup new deref watching a bit
2015-10-03 22:36:40 +02:00
Dan Holmsand
c8b86af635
Get rid of complex deref watching code
2015-10-03 21:47:06 +02:00
Dan Holmsand
b399f30daf
Make Reaction a little smaller
2015-10-03 14:46:46 +02:00
Dan Holmsand
a31c410e08
Faster compare of derefed reactions, and refactor
2015-10-03 12:56:35 +02:00
Dan Holmsand
70dd2a5166
Simplify make-reaction and deref-handling a lot
2015-10-03 11:54:32 +02:00
Dan Holmsand
05fb3ed39d
Start simplifying reaction creation
2015-10-03 11:00:58 +02:00
Dan Holmsand
5d8f1ed116
Get rid of reaction-key
2015-10-03 09:22:33 +02:00
Dan Holmsand
4160704bdc
Store cached reactions directly on function/object
2015-10-02 21:49:35 +02:00
Dan Holmsand
4ee08ea18e
Use array for notify
2015-10-02 20:37:37 +02:00
Dan Holmsand
0cb0de8fc4
Cleanup and perf fixes
2015-10-02 17:34:08 +02:00
Dan Holmsand
4007e6db74
Simplify capture logic
2015-10-02 14:30:25 +02:00
Dan Holmsand
9a13446eea
Try to avoid allocating new array in notify-deref-watcher
2015-10-02 13:02:37 +02:00
Dan Holmsand
eb83776b3d
Use transients for better caching performance
2015-10-02 10:18:48 +02:00
Dan Holmsand
6aa26253d8
Use a plain method for running reaction internally
...
Gives quite a big speedup
2015-09-30 10:32:16 +02:00
Dan Holmsand
94ad9952d8
Use empty context instead of *flushing* in flush!
2015-09-30 09:49:11 +02:00
Dan Holmsand
d0f480f3f2
Remove hack to support sync reactions
...
It became too messy, risky and confusing to be worth it.
2015-09-30 09:40:57 +02:00
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
e39bb33ccc
Use plain array instead of set for tracking watched atoms
...
Turns out to be much, much faster in most cases
2015-09-27 16:04:06 +02:00
Dan Holmsand
7cd2d7d860
Do a little cleanup in template.cljs
2015-09-27 11:14:32 +02:00
Dan Holmsand
83b21167ea
Optimize common case of listening to one derefable
2015-09-27 11:11:15 +02:00
Dan Holmsand
97194b6fca
More cleanup in ratom.cljs: get rid of IComputedImpl
...
Calling object methods and plain functions is faster.
2015-09-27 09:46:44 +02:00