module Text.Layout.Table.Spec.CutMark
( CutMark
, doubleCutMark
, singleCutMark
, noCutMark
, leftMark
, rightMark
, ellipsisCutMark
) where
import Data.Default.Class
data CutMark
= CutMark
{ CutMark -> String
leftMark :: String
, CutMark -> String
rightMark :: String
} deriving (Int -> CutMark -> ShowS
[CutMark] -> ShowS
CutMark -> String
(Int -> CutMark -> ShowS)
-> (CutMark -> String) -> ([CutMark] -> ShowS) -> Show CutMark
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CutMark] -> ShowS
$cshowList :: [CutMark] -> ShowS
show :: CutMark -> String
$cshow :: CutMark -> String
showsPrec :: Int -> CutMark -> ShowS
$cshowsPrec :: Int -> CutMark -> ShowS
Show, CutMark -> CutMark -> Bool
(CutMark -> CutMark -> Bool)
-> (CutMark -> CutMark -> Bool) -> Eq CutMark
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CutMark -> CutMark -> Bool
$c/= :: CutMark -> CutMark -> Bool
== :: CutMark -> CutMark -> Bool
$c== :: CutMark -> CutMark -> Bool
Eq)
instance Default CutMark where
def :: CutMark
def = CutMark
ellipsisCutMark
ellipsisCutMark :: CutMark
ellipsisCutMark :: CutMark
ellipsisCutMark = String -> CutMark
singleCutMark String
"…"
doubleCutMark :: String -> String -> CutMark
doubleCutMark :: String -> String -> CutMark
doubleCutMark = String -> String -> CutMark
CutMark
singleCutMark :: String -> CutMark
singleCutMark :: String -> CutMark
singleCutMark String
l = String -> String -> CutMark
doubleCutMark String
l (ShowS
forall a. [a] -> [a]
reverse String
l)
noCutMark :: CutMark
noCutMark :: CutMark
noCutMark = String -> CutMark
singleCutMark String
""