3 unstable releases
0.2.0 | Aug 11, 2022 |
---|---|
0.1.1 | Apr 13, 2022 |
0.1.0 | Apr 13, 2022 |
#1527 in Procedural macros
56KB
1.5K
SLoC
SubModel
The project is not completed
progress
- load necessary SubModel information from marco input
- generate codes
- field type mapping
- extra sub model field
- support
Generic
- condition field type mapping
- a better way to add extra
proc_marco
onto field on SubModels
usage
using all
or none
define sub model type
all
default all of the field is a part of the sub modelnone
default is an empty struct
in the all
or none
- if only need define the name of sub model, can use like that
#[sub_model(all("foo"),none("foo2"))]
- or else using full pattern
name = "foo"
there a a set of information can be define
vis
the visibility of the sub model, defaultpub
name
the name of the sub modelextra_field
the extra field of the sub model, can use like that- the
ty
define the type of extra field - the
from
define how to create the value in this field, it accept a path to a function without any params
- the
#[all(
name = "foo",
extra_field(
foo(ty = "bool", from = "Default::default")
))]
the example add a new field named foo
with type bool
,create by Default::default
to sub model foo
extra
other marco that add to this new sub model, for example
#[all(
name = "foo",
extra(
derive(Debug, Serialize, Deserialize)
))]
the example make the sub model foo
can serialize
and deserialize
Dependencies
~2MB
~44K SLoC