mirror of
https://github.com/marcosh/crem.git
synced 2024-09-11 12:36:19 +03:00
derive newtype RenderableVertices instances
This commit is contained in:
parent
7841ffec7f
commit
68baaf0831
@ -35,13 +35,9 @@ deriving via AllVertices () instance RenderableVertices ()
|
|||||||
|
|
||||||
deriving via AllVertices Bool instance RenderableVertices Bool
|
deriving via AllVertices Bool instance RenderableVertices Bool
|
||||||
|
|
||||||
instance RenderableVertices All where
|
deriving newtype instance RenderableVertices All
|
||||||
vertices :: [All]
|
|
||||||
vertices = [All False, All True]
|
|
||||||
|
|
||||||
instance RenderableVertices Any where
|
deriving newtype instance RenderableVertices Any
|
||||||
vertices :: [Any]
|
|
||||||
vertices = [Any False, Any True]
|
|
||||||
|
|
||||||
deriving via AllVertices Ordering instance RenderableVertices Ordering
|
deriving via AllVertices Ordering instance RenderableVertices Ordering
|
||||||
|
|
||||||
@ -50,49 +46,29 @@ instance RenderableVertices a => RenderableVertices (Maybe a) where
|
|||||||
vertices =
|
vertices =
|
||||||
Nothing : (Just <$> vertices)
|
Nothing : (Just <$> vertices)
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Min a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Min a)
|
||||||
vertices :: [Min a]
|
|
||||||
vertices = Min <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Max a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Max a)
|
||||||
vertices :: [Max a]
|
|
||||||
vertices = Max <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (First a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (First a)
|
||||||
vertices :: [First a]
|
|
||||||
vertices = First <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Last a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Last a)
|
||||||
vertices :: [Last a]
|
|
||||||
vertices = Last <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Identity a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Identity a)
|
||||||
vertices :: [Identity a]
|
|
||||||
vertices = Identity <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Dual a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Dual a)
|
||||||
vertices :: [Dual a]
|
|
||||||
vertices = Dual <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Sum a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Sum a)
|
||||||
vertices :: [Sum a]
|
|
||||||
vertices = Sum <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Down a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Down a)
|
||||||
vertices :: [Down a]
|
|
||||||
vertices = Down <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Product a) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Product a)
|
||||||
vertices :: [Product a]
|
|
||||||
vertices = Product <$> vertices
|
|
||||||
|
|
||||||
instance RenderableVertices (Proxy a) where
|
instance RenderableVertices (Proxy a) where
|
||||||
vertices :: [Proxy a]
|
vertices :: [Proxy a]
|
||||||
vertices = [Proxy]
|
vertices = [Proxy]
|
||||||
|
|
||||||
instance RenderableVertices a => RenderableVertices (Const a b) where
|
deriving newtype instance RenderableVertices a => RenderableVertices (Const a b)
|
||||||
vertices :: [Const a b]
|
|
||||||
vertices = Const <$> vertices
|
|
||||||
|
|
||||||
instance (RenderableVertices a, RenderableVertices b) => RenderableVertices (Either a b) where
|
instance (RenderableVertices a, RenderableVertices b) => RenderableVertices (Either a b) where
|
||||||
vertices :: [Either a b]
|
vertices :: [Either a b]
|
||||||
|
Loading…
Reference in New Issue
Block a user