Jonathan Kelley
ded9696930
wip: fix ssr
2021-12-14 22:48:20 -05:00
Jonathan Kelley
2fd56e7619
wip: remove portals completely
2021-12-14 21:46:19 -05:00
Jonathan Kelley
8daf7a6ed8
wip: go back to noisy lifetime solution
2021-12-14 02:27:59 -05:00
Jonathan Kelley
96b3d56e09
feat: move back to combined cx/props
2021-12-13 00:06:17 -05:00
Jonathan Kelley
36d89beb34
wip: rename
2021-11-28 16:25:42 -05:00
Jonathan Kelley
55e6dd9701
feat: wire tasks up
2021-11-12 01:36:33 -05:00
Jonathan Kelley
a21020ea57
wip: bubbling in progress
2021-11-11 21:34:20 -05:00
Jonathan Kelley
574d7fdb9e
wip: remove scopechildren in favor of elements directly
2021-11-09 14:36:26 -05:00
Jonathan Kelley
f2e343c154
chore: cleanup src
2021-11-09 02:16:25 -05:00
Jonathan Kelley
fffc7ea061
wip: working on re-enabling components
2021-11-07 22:45:41 -05:00
Jonathan Kelley
2559740463
wip: clean up, use old approach to components
2021-11-07 20:59:09 -05:00
Jonathan Kelley
d96276a715
wip: no more lifetimes
2021-11-06 21:07:01 -04:00
Jonathan Kelley
70b983d090
wip: consolidation, simplification
2021-11-05 16:28:08 -04:00
Jonathan Kelley
1e6e5e611b
wip: move examples around
2021-11-03 15:13:50 -04:00
Jonathan Kelley
d298b626d3
wip: add router
2021-11-03 00:35:56 -04:00
Jonathan Kelley
9c1343610b
wip: clean up using new children syntax
2021-11-01 03:29:50 -04:00
Jonathan Kelley
7b97e009ec
wip: remove cx.children. start to move towards a "children" field
2021-11-01 02:22:08 -04:00
Jonathan Kelley
27d891934a
fix: use annotation method from rust/58052 to fix closure lifetimes
2021-10-30 18:23:28 -04:00
Jonathan Kelley
9ee2bfb010
wip: worked backwards a bit and got it slightly figured out
2021-10-30 17:11:15 -04:00
Jonathan Kelley
ba9e1dbb8f
fix: messed up how lifetimes worked, need to render once per component
2021-10-29 21:43:21 -04:00
Jonathan Kelley
0e9d5fc530
wip: move everything over to a stack dst
2021-10-29 17:12:30 -04:00
Alexandre Kirszenberg
5747e00b27
Various typos/grammar/rewording
2021-10-24 19:30:36 +02:00
Jonathan Kelley
f49244344c
polish: listen to clippy
2021-10-17 20:18:30 -04:00
Jonathan Kelley
9726a065b0
feat: massage lifetimes
2021-10-16 17:37:28 -04:00
Jonathan Kelley
b32e2611e3
polish: clean up warnings
2021-09-21 18:13:09 -04:00
Jonathan Kelley
bfdcb20437
feat: transition to cx, props
2021-09-21 13:13:15 -04:00
Jonathan Kelley
da8159190b
polish: tests and documentation
2021-09-09 20:58:48 -04:00
Jonathan Kelley
fac42339c2
feat: mutations
2021-08-08 15:15:16 -04:00
Jonathan Kelley
f644d7c441
wip: move things into a "shared" object
2021-07-23 10:27:43 -04:00
Jonathan Kelley
4a72b3140b
feat: amazingly awesome error handling
2021-07-18 12:39:32 -04:00
Jonathan Kelley
c79d9ae674
feat: buff up html allowed attributes
2021-07-12 23:44:20 -04:00
Jonathan Kelley
fb0c6d2ea4
chore: remove unnecessary import
2021-07-12 11:03:35 -04:00
Jonathan Kelley
56e7eb83a9
wip: more examples
2021-07-11 19:31:07 -04:00
Jonathan Kelley
9abb0470b7
feat: static node infrastructure and ssr changes
2021-07-11 14:49:52 -04:00
Jonathan Kelley
8cfc437bfe
wip: some project refactor
2021-07-09 11:54:07 -04:00
Jonathan Kelley
58ab51a4e4
wip: more refactor
2021-07-09 01:42:26 -04:00
Jonathan Kelley
a38a81e129
wip: fix issues with lifetimes
...
this commit fixes some lifetime issues regarding having to "move" data into the IntoVNode closure.
2021-07-07 13:51:55 -04:00
Jonathan Kelley
81382e7044
chore: rename ctx to cx
2021-06-25 21:15:33 -04:00
Jonathan Kelley
73047fe956
feat: props memoization is more powerful
...
This commit solves the memoization , properly memoizing properties that don't have any generic parameters. This is a rough heuristic to prevent non-static lifetimes from creeping into props and breaking our minual lifetime management.
Props that have a generic parameter are opted-out of the `partialeq` requirement and props *without* lifetimes must implement partialeq. We're going to leave manual disabling of memoization for future work.
2021-06-22 17:20:54 -04:00
Jonathan Kelley
62ae5d3bb9
wip: rethinking stack machine
2021-06-19 20:31:25 -04:00
Jonathan Kelley
36ea39ae30
Feat: rename recoil to atoms
2021-06-16 11:19:37 -04:00
Jonathan Kelley
fe6938ceb3
wip: pre vnodes instead of vnode
2021-06-08 14:00:29 -04:00
Jonathan Kelley
e3d9db0847
wip: successfully building
2021-06-07 14:14:49 -04:00
Jonathan Kelley
7790750349
wip: merge in some code from the other branch
2021-06-05 23:47:54 -04:00
Jonathan Kelley
50c8b93aad
Feat: move the rsx macro around
2021-06-03 10:42:28 -04:00
Jonathan Kelley
508c560320
Feat: massive changes to definition of components
...
This change switches back to the original `ctx<props>` syntax for
commponents. This lets lifetime elision to remove the need to match
exactly which lifetime (props or ctx) gets carried to the output. As
such, `Props` is currently required to be static. It *is* possible to
loosen this restriction, and will be done in the future, though only
through adding metadata about the props through the Props derive
macro. Implementing the IS_STATIC trait is unsafe, so the derive macro
will do it through some heuristics.
For now, this unlocks sharing vnodes from parents to children, enabling
pass-thru components, fragments, portals, etc.
2021-06-01 18:33:15 -04:00
Jonathan Kelley
c1fd848f89
WIP: move to static props
2021-05-31 18:55:56 -04:00
Jonathan Kelley
ee67654f58
wip: recoil
2021-05-26 01:40:30 -04:00
Jonathan Kelley
c28697e1fe
Feat: some code health
2021-05-16 02:06:02 -04:00
Jonathan Kelley
ec801eab16
wip: foregin eq from comparapable comp type.
...
This commit adds the framework for "comparable components". This allows
complete sealing of bump-allocated properties types, and a comparison method
that performs a "safe" cast without transmute. This lets us completely erase types
but still be able to perform partialeq over render frames
2021-03-12 13:03:37 -05:00