coco-1.0.1: Coco/Laws.hs
{-# LANGUAGE UndecidableInstances #-}
module Coco.Laws where
import Data.Vector (Vector)
import qualified Data.ByteString.Lazy as B
import qualified Data.ByteString as BS
import qualified Data.Text.Lazy as T
import qualified Data.Text as TS
import Coco
-- | > id @a = to . to @b
class (To b a, To a b) => Is b a
class (Is b a, Is a b) => Iso b a
instance (Is b a, Is a b) => Iso b a
instance Is String T.Text
instance Is String TS.Text
instance Is B.ByteString BS.ByteString
instance Is B.ByteString T.Text
instance Is B.ByteString TS.Text
instance Is BS.ByteString B.ByteString
instance Is BS.ByteString T.Text
instance Is BS.ByteString TS.Text
instance Is T.Text TS.Text
instance Is TS.Text T.Text
instance Is b a => Is [b] (Vector a)
instance Is b a => Is (Vector b) [a]