1 unstable release
| 0.1.0 | Jun 6, 2019 |
|---|
#38 in #ui-layout
Used in alchemy
220KB
4.5K
SLoC
Implements macros used in Alchemy.
rsx! {}, which turns RSX tags intoRSXnode trees.styles! {}, which turns CSS stylesheet strings intoVec<Styles>.
In general, you should prefer using these to constructing the above values manually.
Much of the rsx! {} support is achieved by forking code riginally written by Bodil Stokke
over in typed-html.
Alchemy-Macros
This crate holds macros for two things, primarily:
rsx! {}, which transforms<View></<View>tags into their properRSXcalls. Much of this is forked from the awesome work done by Bodil Stokke in typed-html.styles! {}, which transforms CSS style nodes intoVec<Styles>, which the rendering engine uses to theme and style nodes. This relies on the CSS Parser from Servo. Styles do not support cascading; this is a design decision, as inheritance is already a bit of a taboo in Rust, so to do it in styling code feels really odd and involves a mental shift the deeper you go. Opt to apply successive style keys, conditionally if need be, to achieve the same thing with a compositional approach.
Questions, Comments?
Open an issue, or hit me up on Twitter.
Dependencies
~3–5MB
~97K SLoC