mirror of
https://github.com/zaphar/kitchen.git
synced 2025-07-22 19:40:14 -04:00
42 lines
636 B
Alloy
42 lines
636 B
Alloy
|
sig Recipe {
|
||
|
, desc: String
|
||
|
, title: String
|
||
|
, ingredients: set Ingredient
|
||
|
}
|
||
|
|
||
|
sig Cat {
|
||
|
, name: String
|
||
|
}
|
||
|
|
||
|
abstract sig Unit { }
|
||
|
|
||
|
sig Tsp extends Unit {}
|
||
|
sig Tbsp extends Unit {}
|
||
|
sig Cup extends Unit {}
|
||
|
sig Pint extends Unit {}
|
||
|
sig Quart extends Unit {}
|
||
|
sig Gallon extends Unit {}
|
||
|
|
||
|
abstract sig Wgt extends Unit {
|
||
|
|
||
|
}
|
||
|
sig MilliGram extends Wgt {}
|
||
|
sig Gram extends Wgt {}
|
||
|
sig KiloGram extends Wgt {}
|
||
|
|
||
|
abstract sig Amt {}
|
||
|
sig Count extends Amt {
|
||
|
, value: Int
|
||
|
}
|
||
|
|
||
|
sig Frac extends Amt {
|
||
|
, numerator: Int
|
||
|
, denominator: Int
|
||
|
}
|
||
|
|
||
|
sig Ingredient {
|
||
|
, category: Cat
|
||
|
, name: String
|
||
|
, unit: Unit
|
||
|
, amt: Amt
|
||
|
}
|