#style #css #layout #ui #gui-framework

alchemy-macros

一个包含 Alchemy(Rust 跨平台 GUI 框架)中使用的宏的crate

1 个不稳定版本

0.1.0 2019年6月6日

#5#styles


用于 alchemy

MPL-2.0+

210KB
4.5K SLoC

Alchemy-Macros

这个crate主要包含两个宏

  • rsx! {},它将 <View></<View> 标签转换为它们正确的 RSX 调用。其中大部分是从 Bodil Stokke 在 typed-html 中的出色工作 中分叉的。
  • styles! {},它将 CSS 样式节点转换为 Vec<Styles>,渲染引擎使用它来主题化和样式节点。这依赖于 Servo 的 CSS 解析器。样式不支持层叠;这是一个设计决策,因为在 Rust 中继承已经有些禁忌,所以在样式代码中这样做感觉很奇怪,并且需要更深入的思维转变。选择应用连续的样式键,如果需要的话,条件性地应用,以组合方式实现相同的功能。

问题,评论?

打开一个问题,或者在我的 Twitter 上联系我。


lib.rs:

实现 Alchemy 中使用的宏。

  • rsx! {},它将 RSX 标签转换为 RSX 节点树。
  • styles! {},它将 CSS 样式表字符串转换为 Vec<Styles>

通常,您应该优先使用这些宏而不是手动构建上述值。

大部分 rsx! {} 支持是通过从 typed-html 中分叉 Bodil Stokke 编写的原始代码实现的。

依赖

~2–4MB
~73K SLoC