Commit graph

321 commits

Author SHA1 Message Date
Jonathan Kelley
b05331a60b Docs: change example to make it simpler 2021-06-03 10:43:48 -04:00
Jonathan Kelley
50c8b93aad Feat: move the rsx macro around 2021-06-03 10:42:28 -04:00
Jonathan Kelley
1919f88f03 Feat: some docs 2021-06-02 11:07:30 -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
c5089ba3c5 wip: more progress on parity docs.
Placeholders in the rsx macro for future features.
2021-05-28 12:56:21 -04:00
Jonathan Kelley
4d5c528b07 Feat: dirty hack to enable send + sync on virtual dom 2021-05-28 00:28:09 -04:00
Jonathan Kelley
fe67ff9fa4 wip: doesnt share on thread 2021-05-27 17:57:59 -04:00
Jonathan Kelley
ba975410f9 wip: parity document 2021-05-26 11:22:44 -04:00
Jonathan Kelley
ee67654f58 wip: recoil 2021-05-26 01:40:30 -04:00
Jonathan Kelley
3cfa1fe125 Feat: buff the readme and docs 2021-05-19 20:57:19 -04:00
Jonathan Kelley
b843dbd367 WIP: Todomvc in progress 2021-05-19 10:14:02 -04:00
Jonathan Kelley
0d44f009b0 Feat: introduce children for walking down the tree 2021-05-18 10:36:17 -04:00
Jonathan Kelley
24805a02f6 Feat: context api wired up 2021-05-18 01:16:43 -04:00
Jonathan Kelley
4c8130c4e4 Feat: about to consolidate context and scope 2021-05-17 17:59:10 -04:00
Jonathan Kelley
3de54d0b52 Feat: remove old code 2021-05-16 03:01:36 -04:00
Jonathan Kelley
2284b35782 Feat: abstraction lifetimes work out nicely 2021-05-16 02:58:57 -04:00
Jonathan Kelley
a99147c85b Feat: Clean up repo a bit 2021-05-16 02:55:16 -04:00
Jonathan Kelley
c28697e1fe Feat: some code health 2021-05-16 02:06:02 -04:00
Jonathan Kelley
9810feebf5 Feat: major overhaul to diffing 2021-05-15 12:03:08 -04:00
Jonathan Kelley
c809095124 Wip 2021-04-09 12:04:04 -04:00
Jonathan Kelley
2eeb8f2386 wip: refactor a bit 2021-04-04 21:47:53 -04:00
Jonathan Kelley
8c541f66d5 wip: todos 2021-04-01 21:44:18 -04:00
Jonathan Kelley
cfa0927cdd feat: todomvc 2021-04-01 00:01:42 -04:00
Jonathan Kelley
ce33031519 wip: todomvc 2021-03-29 12:31:47 -04:00
Jonathan Kelley
0bcff1f88e Feat: more ergonomics, more examples 2021-03-26 15:50:28 -04:00
Jonathan Kelley
44aad2746c Feat: use rsx! inline! 2021-03-26 00:47:15 -04:00
Jonathan Kelley
0aab659a06 docs: homepage 2021-03-23 14:34:06 -04:00
Jonathan Kelley
9f7f43b661 Feat: building large apps, revamp macro 2021-03-22 23:52:54 -04:00
Jonathan Kelley
5791e49700 wip: integrate 3d renderer components 2021-03-21 14:09:15 -04:00
Jonathan Kelley
742f150eb3 wip: begint to accept iterator types 2021-03-18 18:54:26 -04:00
Jonathan Kelley
f24d29130a wip: need iterator for bracketed children 2021-03-17 10:35:21 -04:00
Jonathan Kelley
9b560dfedb wip: more liveview and webview custom client 2021-03-16 14:28:54 -04:00
Jonathan Kelley
7856f2b153 wip: livehost bones 2021-03-16 11:03:59 -04:00
Jonathan Kelley
5b7887d76c Fix: some stuff related to event listeners. POC for lifecyel 2021-03-15 02:16:03 -04:00
Jonathan Kelley
4e48e0514e wip: diffing approach slightly broken 2021-03-14 20:33:37 -04:00
Jonathan Kelley
9d0727edab Feat: remove old macro 2021-03-13 19:11:06 -05:00
Jonathan Kelley
e66827ec92 wip: add deeply neste example 2021-03-13 10:02:57 -05:00
Jonathan Kelley
39bd1856f4 Feat: update examples 2021-03-12 17:21:06 -05:00
Jonathan Kelley
305ff919ef Feat: ensure mutabality is okay when not double-using the components 2021-03-12 16:58:30 -05:00
Jonathan Kelley
b3c96a5996 Feat: props now autoderives its own trait 2021-03-12 15:41:36 -05:00
Jonathan Kelley
d4f1ceaffb feat: somewhat working with rc and weak 2021-03-12 14:27:32 -05: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
Jonathan Kelley
5ad81885e4 wip: staticify? 2021-03-11 12:27:01 -05:00
Jonathan Kelley
78d093a945 FIx: cargo fix to clean up things 2021-03-10 19:42:31 -05:00
Jonathan Kelley
29751a4bab Feat: implement vcomp fully 2021-03-10 19:42:10 -05:00
Jonathan Kelley
5abda91892 Feat: add some docs 2021-03-10 19:24:45 -05:00
Jonathan Kelley
ddaa55a04a
Merge pull request #2 from jkelleyrtp/jk/dyn_scope
Implement props
2021-03-09 14:46:29 -05:00
Jonathan Kelley
8fcd001677 Feat: update component so build passes 2021-03-09 14:46:00 -05:00
Jonathan Kelley
37f5a7ad33 Feat: wire up props macro 2021-03-09 14:45:52 -05:00