Versionbump: Model/Types/Exam.hs instance fix for Semigroup/Monoid; line shuffle for Template Haskell.
This commit is contained in:
parent
a008e32379
commit
1f26f03319
@ -128,10 +128,6 @@ instance Semigroup res => Semigroup (ExamResult' res) where
|
|||||||
|
|
||||||
instance Monoid res => Monoid (ExamResult' res) where
|
instance Monoid res => Monoid (ExamResult' res) where
|
||||||
mempty = ExamAttended mempty
|
mempty = ExamAttended mempty
|
||||||
ExamAttended r `mappend` ExamAttended r' = ExamAttended $ r `mappend` r'
|
|
||||||
ExamVoided `mappend` _ = ExamVoided
|
|
||||||
_ `mappend` ExamVoided = ExamVoided
|
|
||||||
_ `mappend` _ = ExamNoShow
|
|
||||||
|
|
||||||
instance Csv.ToField res => Csv.ToField (ExamResult' res) where
|
instance Csv.ToField res => Csv.ToField (ExamResult' res) where
|
||||||
toField ExamVoided = "voided"
|
toField ExamVoided = "voided"
|
||||||
@ -498,6 +494,9 @@ data ExamAidsPreset
|
|||||||
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
||||||
deriving anyclass (Universe, Finite, NFData)
|
deriving anyclass (Universe, Finite, NFData)
|
||||||
|
|
||||||
|
nullaryPathPiece' ''ExamAidsPreset $ nameToPathPiece' 1
|
||||||
|
pathPieceJSON ''ExamAidsPreset
|
||||||
|
|
||||||
deriveJSON defaultOptions
|
deriveJSON defaultOptions
|
||||||
{ constructorTagModifier = camelToPathPiece' 2
|
{ constructorTagModifier = camelToPathPiece' 2
|
||||||
, fieldLabelModifier = camelToPathPiece' 2
|
, fieldLabelModifier = camelToPathPiece' 2
|
||||||
@ -505,9 +504,6 @@ deriveJSON defaultOptions
|
|||||||
} ''ExamAids
|
} ''ExamAids
|
||||||
derivePersistFieldJSON ''ExamAids
|
derivePersistFieldJSON ''ExamAids
|
||||||
|
|
||||||
nullaryPathPiece' ''ExamAidsPreset $ nameToPathPiece' 1
|
|
||||||
pathPieceJSON ''ExamAidsPreset
|
|
||||||
|
|
||||||
data ExamOnline
|
data ExamOnline
|
||||||
= ExamOnlinePreset { examOnlinePreset :: ExamOnlinePreset }
|
= ExamOnlinePreset { examOnlinePreset :: ExamOnlinePreset }
|
||||||
| ExamOnlineCustom { examOnlineCustom :: StoredMarkup }
|
| ExamOnlineCustom { examOnlineCustom :: StoredMarkup }
|
||||||
@ -520,6 +516,9 @@ data ExamOnlinePreset
|
|||||||
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
||||||
deriving anyclass (Universe, Finite, NFData)
|
deriving anyclass (Universe, Finite, NFData)
|
||||||
|
|
||||||
|
nullaryPathPiece' ''ExamOnlinePreset $ nameToPathPiece' 1
|
||||||
|
pathPieceJSON ''ExamOnlinePreset
|
||||||
|
|
||||||
deriveJSON defaultOptions
|
deriveJSON defaultOptions
|
||||||
{ constructorTagModifier = camelToPathPiece' 2
|
{ constructorTagModifier = camelToPathPiece' 2
|
||||||
, fieldLabelModifier = camelToPathPiece' 2
|
, fieldLabelModifier = camelToPathPiece' 2
|
||||||
@ -527,9 +526,6 @@ deriveJSON defaultOptions
|
|||||||
} ''ExamOnline
|
} ''ExamOnline
|
||||||
derivePersistFieldJSON ''ExamOnline
|
derivePersistFieldJSON ''ExamOnline
|
||||||
|
|
||||||
nullaryPathPiece' ''ExamOnlinePreset $ nameToPathPiece' 1
|
|
||||||
pathPieceJSON ''ExamOnlinePreset
|
|
||||||
|
|
||||||
data ExamSynchronicity
|
data ExamSynchronicity
|
||||||
= ExamSynchronicityPreset { examSynchronicityPreset :: ExamSynchronicityPreset }
|
= ExamSynchronicityPreset { examSynchronicityPreset :: ExamSynchronicityPreset }
|
||||||
| ExamSynchronicityCustom { examSynchronicityCustom :: StoredMarkup }
|
| ExamSynchronicityCustom { examSynchronicityCustom :: StoredMarkup }
|
||||||
@ -542,6 +538,9 @@ data ExamSynchronicityPreset
|
|||||||
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
||||||
deriving anyclass (Universe, Finite, NFData)
|
deriving anyclass (Universe, Finite, NFData)
|
||||||
|
|
||||||
|
nullaryPathPiece' ''ExamSynchronicityPreset $ nameToPathPiece' 1
|
||||||
|
pathPieceJSON ''ExamSynchronicityPreset
|
||||||
|
|
||||||
deriveJSON defaultOptions
|
deriveJSON defaultOptions
|
||||||
{ constructorTagModifier = camelToPathPiece' 2
|
{ constructorTagModifier = camelToPathPiece' 2
|
||||||
, fieldLabelModifier = camelToPathPiece' 2
|
, fieldLabelModifier = camelToPathPiece' 2
|
||||||
@ -549,9 +548,6 @@ deriveJSON defaultOptions
|
|||||||
} ''ExamSynchronicity
|
} ''ExamSynchronicity
|
||||||
derivePersistFieldJSON ''ExamSynchronicity
|
derivePersistFieldJSON ''ExamSynchronicity
|
||||||
|
|
||||||
nullaryPathPiece' ''ExamSynchronicityPreset $ nameToPathPiece' 1
|
|
||||||
pathPieceJSON ''ExamSynchronicityPreset
|
|
||||||
|
|
||||||
data ExamRequiredEquipment
|
data ExamRequiredEquipment
|
||||||
= ExamRequiredEquipmentPreset { examRequiredEquipmentPreset :: ExamRequiredEquipmentPreset }
|
= ExamRequiredEquipmentPreset { examRequiredEquipmentPreset :: ExamRequiredEquipmentPreset }
|
||||||
| ExamRequiredEquipmentCustom { examRequiredEquipmentCustom :: StoredMarkup }
|
| ExamRequiredEquipmentCustom { examRequiredEquipmentCustom :: StoredMarkup }
|
||||||
@ -569,6 +565,9 @@ data ExamRequiredEquipmentPreset
|
|||||||
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
deriving (Eq, Ord, Read, Show, Enum, Bounded, Generic)
|
||||||
deriving anyclass (Universe, Finite, NFData)
|
deriving anyclass (Universe, Finite, NFData)
|
||||||
|
|
||||||
|
nullaryPathPiece' ''ExamRequiredEquipmentPreset $ nameToPathPiece' 3
|
||||||
|
pathPieceJSON ''ExamRequiredEquipmentPreset
|
||||||
|
|
||||||
deriveJSON defaultOptions
|
deriveJSON defaultOptions
|
||||||
{ constructorTagModifier = camelToPathPiece' 2
|
{ constructorTagModifier = camelToPathPiece' 2
|
||||||
, fieldLabelModifier = camelToPathPiece' 2
|
, fieldLabelModifier = camelToPathPiece' 2
|
||||||
@ -576,9 +575,6 @@ deriveJSON defaultOptions
|
|||||||
} ''ExamRequiredEquipment
|
} ''ExamRequiredEquipment
|
||||||
derivePersistFieldJSON ''ExamRequiredEquipment
|
derivePersistFieldJSON ''ExamRequiredEquipment
|
||||||
|
|
||||||
nullaryPathPiece' ''ExamRequiredEquipmentPreset $ nameToPathPiece' 3
|
|
||||||
pathPieceJSON ''ExamRequiredEquipmentPreset
|
|
||||||
|
|
||||||
|
|
||||||
data ExamMode = ExamMode
|
data ExamMode = ExamMode
|
||||||
{ examAids :: Maybe ExamAids
|
{ examAids :: Maybe ExamAids
|
||||||
|
|||||||
Reference in New Issue
Block a user