1 unstable release
| 0.1.0 | Nov 29, 2025 |
|---|
#2352 in Rust patterns
Used in 2 crates
49KB
1K
SLoC
SketchDDD Parser
Parser for the SketchDDD domain-specific language.
Example
context Commerce {
objects { Customer, Order, LineItem, Product, Money }
morphisms {
placedBy: Order -> Customer
items: Order -> List<LineItem>
product: LineItem -> Product
price: LineItem -> Money
}
aggregate Order {
root: Order
contains: [LineItem]
invariant: totalPrice = sum(items.price)
}
value Money {
amount: Decimal
currency: Currency
}
enum OrderStatus = Pending | Confirmed | Shipped | Cancelled
}
sketchddd-parser
DSL parser for SketchDDD domain models.
Example
context Commerce {
objects { Customer, Order, LineItem, Product, Money }
morphisms {
placedBy: Order -> Customer
items: Order -> List<LineItem>
}
aggregate Order {
root: Order
contains: [LineItem]
}
value Money {
amount: Decimal
currency: Currency
}
enum OrderStatus = Pending | Confirmed | Shipped
}
License
Licensed under either of MIT or Apache-2.0 at your option.
Dependencies
~2–3MB
~59K SLoC