public Calzone(ICalzoneType type, Money basePrice, IToppings toppings) { _type = type; _basePrice = basePrice; _toppings = toppings; }
public ICalzone As(ICalzoneType calzoneType) => calzoneType.Create(_toppings.Copy());
public Calzone(ICalzoneType type, Money basePrice) : this(type, basePrice, new Toppings()) { }