3 个版本 (破坏性更新)
0.2.0 | 2023年4月2日 |
---|---|
0.1.0 | 2023年2月5日 |
0.0.1+alvr | 2022年3月21日 |
#194 在 #settings
543 每月下载量
用于 settings-schema
27KB
524 行
settings-schema-rs
从 Rust 结构体和枚举生成模式的自定义宏。该模式可以序列化为 JSON 并/或用于生成 GUI。
节点类型
- 部分(从
struct
)。包含可以标记为高级设置的字段。不支持无名称字段。 - 选择(从
enum
)。每个变体最多支持一个无名称字段。可以用gui
属性标记,使用"drop_down"
或"button_group"
。 - 可选(从
Option
)。当内容是 "默认" 或计算得出时,使用None
。 - 开关。可以是
Enabled
(带有数据)或Disabled
。内容可以设置为高级。 - 布尔值(从
bool
)。 - 数字(从
u/i 8/32/64/size
和f32/f64
)。属性gui
可以是textbox
或slider
(带有子属性min
、max
、step
和logarithmic
)。 - 文本(从
String
)。 - 数组(从
[X; N]
)。 - 向量(从
Vec<X>
)。 - 字典(从
Vec<(String, X)>
)。
像 gui
这样的属性可以应用于复合类型如 Vec<Switch<u64>>
的字段。
不支持具有泛型类型参数的自定义类型。
将自动创建新的 *Default
结构来存储默认值。这样做是为了允许指定给定枚举中所有变体的默认数据。
依赖项
~2MB
~43K SLoC