cellular_raza_concepts_derive/
lib.rs1#[macro_use]
7mod cell_agent;
8#[macro_use]
9mod subdomain;
10mod domain;
11
12#[proc_macro_derive(
26 CellAgent,
27 attributes(
28 Cycle,
29 Mechanics,
30 MechanicsRaw,
31 Position,
32 Velocity,
33 Interaction,
34 InteractionRaw,
35 InteractionInformation,
36 NeighborSensing,
37 NeighborSensingRaw,
38 Reactions,
39 ReactionsContact,
40 ReactionsRaw,
41 ReactionsExtra,
42 ReactionsExtraRaw,
43 Intracellular,
44 ExtracellularGradient,
45 )
46)]
47pub fn derive_cell_agent(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
48 cell_agent::derive_cell_agent(input)
49}
50
51#[proc_macro_derive(SubDomain, attributes(Base, SortCells, Mechanics, Force, Reactions))]
52pub fn derive_subdomain(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
53 subdomain::derive_subdomain(input)
54}
55
56#[proc_macro_derive(
57 Domain,
58 attributes(
59 Base,
60 DomainPartialDerive,
61 DomainRngSeed,
62 DomainCreateSubDomains,
63 SortCells
64 )
65)]
66pub fn derive_domain(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
67 domain::derive_domain(input)
68}