module Prairie.Monoid where
import Prairie.Class
emptyRecord :: (Record rec, FieldDict Monoid rec) => rec
emptyRecord :: forall rec. (Record rec, FieldDict Monoid rec) => rec
emptyRecord = (forall ty. Field rec ty -> ty) -> rec
forall rec. Record rec => (forall ty. Field rec ty -> ty) -> rec
tabulateRecord (\Field rec ty
field -> forall (c :: Type -> Constraint) rec a r.
FieldDict c rec =>
Field rec a -> (c a => r) -> r
withFieldDict @Monoid Field rec ty
field ty
Monoid ty => ty
forall a. Monoid a => a
mempty)