{-# LANGUAGE Safe #-}
module Data.Char.Math.Serif.Greek
( greekSerif, greekSerif'
, greekSerifNoBold, greekSerifNoBold'
, greekSerifBold, greekSerifBold'
, greekSerifNoItalic, greekSerifNoItalic'
, greekSerifItalic, greekSerifItalic'
, greekSerifNoBoldNoItalic, greekSerifNoBoldNoItalic'
, greekSerifBoldNoItalic, greekSerifBoldNoItalic'
, greekSerifNoBoldItalic, greekSerifNoBoldItalic'
, greekSerifBoldItalic, greekSerifBoldItalic'
) where
import Data.Char.Core (Emphasis, ItalicType, isGreek, splitEmphasis, splitItalicType)
import Data.Char.Math.Internal
greekSerif
:: ItalicType
-> Emphasis
-> Char
-> Maybe Char
greekSerif :: ItalicType -> Emphasis -> Char -> Maybe Char
greekSerif = (Emphasis -> Char -> Maybe Char)
-> (Emphasis -> Char -> Maybe Char)
-> ItalicType
-> Emphasis
-> Char
-> Maybe Char
forall a. a -> a -> ItalicType -> a
splitItalicType Emphasis -> Char -> Maybe Char
greekSerifNoItalic Emphasis -> Char -> Maybe Char
greekSerifItalic
greekSerif'
:: ItalicType
-> Emphasis
-> Char
-> Char
greekSerif' :: ItalicType -> Emphasis -> Char -> Char
greekSerif' = (Emphasis -> Char -> Char)
-> (Emphasis -> Char -> Char)
-> ItalicType
-> Emphasis
-> Char
-> Char
forall a. a -> a -> ItalicType -> a
splitItalicType Emphasis -> Char -> Char
greekSerifNoItalic' Emphasis -> Char -> Char
greekSerifItalic'
greekSerifNoBoldNoItalic'
:: Char
-> Char
greekSerifNoBoldNoItalic' :: Char -> Char
greekSerifNoBoldNoItalic' = Char -> Char
forall a. a -> a
id
greekSerifNoBoldNoItalic
:: Char
-> Maybe Char
greekSerifNoBoldNoItalic :: Char -> Maybe Char
greekSerifNoBoldNoItalic = (Char -> Bool) -> (Char -> Char) -> Char -> Maybe Char
forall a b. (a -> Bool) -> (a -> b) -> a -> Maybe b
_withCondition Char -> Bool
isGreek Char -> Char
greekSerifNoBoldNoItalic'
greekSerifNoBoldItalic'
:: Char
-> Char
greekSerifNoBoldItalic' :: Char -> Char
greekSerifNoBoldItalic' Char
'ϴ' = Char
'𝛳'
greekSerifNoBoldItalic' Char
'∇' = Char
'𝛻'
greekSerifNoBoldItalic' Char
'∂' = Char
'𝜕'
greekSerifNoBoldItalic' Char
'ϵ' = Char
'𝜖'
greekSerifNoBoldItalic' Char
'ϑ' = Char
'𝜗'
greekSerifNoBoldItalic' Char
'ϰ' = Char
'𝜘'
greekSerifNoBoldItalic' Char
'ϕ' = Char
'𝜙'
greekSerifNoBoldItalic' Char
'ϱ' = Char
'𝜚'
greekSerifNoBoldItalic' Char
'ϖ' = Char
'𝜛'
greekSerifNoBoldItalic' Char
c
| Char
'Α' Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
c Bool -> Bool -> Bool
&& Char
c Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
'Ω' = Int -> Char -> Char
_baseUpperLower Int
0x1d351 Char
c
| Char
'α' Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
c Bool -> Bool -> Bool
&& Char
c Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
'ω' = Int -> Char -> Char
_baseUpperLower Int
0x1d34b Char
c
| Bool
otherwise = Char
c
greekSerifNoBoldItalic
:: Char
-> Maybe Char
greekSerifNoBoldItalic :: Char -> Maybe Char
greekSerifNoBoldItalic = (Char -> Bool) -> (Char -> Char) -> Char -> Maybe Char
forall a b. (a -> Bool) -> (a -> b) -> a -> Maybe b
_withCondition Char -> Bool
isGreek Char -> Char
greekSerifNoBoldItalic'
greekSerifBoldNoItalic'
:: Char
-> Char
greekSerifBoldNoItalic' :: Char -> Char
greekSerifBoldNoItalic' Char
'ϴ' = Char
'𝚹'
greekSerifBoldNoItalic' Char
'∇' = Char
'𝛁'
greekSerifBoldNoItalic' Char
'∂' = Char
'𝛛'
greekSerifBoldNoItalic' Char
'ϵ' = Char
'𝛜'
greekSerifBoldNoItalic' Char
'ϑ' = Char
'𝛝'
greekSerifBoldNoItalic' Char
'ϰ' = Char
'𝛞'
greekSerifBoldNoItalic' Char
'ϕ' = Char
'𝛟'
greekSerifBoldNoItalic' Char
'ϱ' = Char
'𝛠'
greekSerifBoldNoItalic' Char
'ϖ' = Char
'𝛡'
greekSerifBoldNoItalic' Char
c
| Char
'Α' Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
c Bool -> Bool -> Bool
&& Char
c Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
'Ω' = Int -> Char -> Char
_baseUpperLower Int
0x1d317 Char
c
| Char
'α' Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
c Bool -> Bool -> Bool
&& Char
c Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
'ω' = Int -> Char -> Char
_baseUpperLower Int
0x1d311 Char
c
| Bool
otherwise = Char
c
greekSerifBoldNoItalic
:: Char
-> Maybe Char
greekSerifBoldNoItalic :: Char -> Maybe Char
greekSerifBoldNoItalic = (Char -> Bool) -> (Char -> Char) -> Char -> Maybe Char
forall a b. (a -> Bool) -> (a -> b) -> a -> Maybe b
_withCondition Char -> Bool
isGreek Char -> Char
greekSerifBoldNoItalic'
greekSerifBoldItalic'
:: Char
-> Char
greekSerifBoldItalic' :: Char -> Char
greekSerifBoldItalic' Char
'ϴ' = Char
'𝜭'
greekSerifBoldItalic' Char
'∇' = Char
'𝜵'
greekSerifBoldItalic' Char
'∂' = Char
'𝝏'
greekSerifBoldItalic' Char
'ϵ' = Char
'𝝐'
greekSerifBoldItalic' Char
'ϑ' = Char
'𝝑'
greekSerifBoldItalic' Char
'ϰ' = Char
'𝝒'
greekSerifBoldItalic' Char
'ϕ' = Char
'𝝓'
greekSerifBoldItalic' Char
'ϱ' = Char
'𝝔'
greekSerifBoldItalic' Char
'ϖ' = Char
'𝝕'
greekSerifBoldItalic' Char
c
| Char
'Α' Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
c Bool -> Bool -> Bool
&& Char
c Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
'Ω' = Int -> Char -> Char
_baseUpperLower Int
0x1d38b Char
c
| Char
'α' Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
c Bool -> Bool -> Bool
&& Char
c Char -> Char -> Bool
forall a. Ord a => a -> a -> Bool
<= Char
'ω' = Int -> Char -> Char
_baseUpperLower Int
0x1d385 Char
c
| Bool
otherwise = Char
c
greekSerifBoldItalic
:: Char
-> Maybe Char
greekSerifBoldItalic :: Char -> Maybe Char
greekSerifBoldItalic = (Char -> Bool) -> (Char -> Char) -> Char -> Maybe Char
forall a b. (a -> Bool) -> (a -> b) -> a -> Maybe b
_withCondition Char -> Bool
isGreek Char -> Char
greekSerifBoldItalic'
greekSerifBold'
:: ItalicType
-> Char
-> Char
greekSerifBold' :: ItalicType -> Char -> Char
greekSerifBold' = (Char -> Char) -> (Char -> Char) -> ItalicType -> Char -> Char
forall a. a -> a -> ItalicType -> a
splitItalicType Char -> Char
greekSerifBoldNoItalic' Char -> Char
greekSerifBoldItalic'
greekSerifBold
:: ItalicType
-> Char
-> Maybe Char
greekSerifBold :: ItalicType -> Char -> Maybe Char
greekSerifBold = (Char -> Maybe Char)
-> (Char -> Maybe Char) -> ItalicType -> Char -> Maybe Char
forall a. a -> a -> ItalicType -> a
splitItalicType Char -> Maybe Char
greekSerifBoldNoItalic Char -> Maybe Char
greekSerifBoldItalic
greekSerifNoBold'
:: ItalicType
-> Char
-> Char
greekSerifNoBold' :: ItalicType -> Char -> Char
greekSerifNoBold' = (Char -> Char) -> (Char -> Char) -> ItalicType -> Char -> Char
forall a. a -> a -> ItalicType -> a
splitItalicType Char -> Char
greekSerifNoBoldNoItalic' Char -> Char
greekSerifNoBoldItalic'
greekSerifNoBold
:: ItalicType
-> Char
-> Maybe Char
greekSerifNoBold :: ItalicType -> Char -> Maybe Char
greekSerifNoBold = (Char -> Maybe Char)
-> (Char -> Maybe Char) -> ItalicType -> Char -> Maybe Char
forall a. a -> a -> ItalicType -> a
splitItalicType Char -> Maybe Char
greekSerifNoBoldNoItalic Char -> Maybe Char
greekSerifNoBoldItalic
greekSerifItalic'
:: Emphasis
-> Char
-> Char
greekSerifItalic' :: Emphasis -> Char -> Char
greekSerifItalic' = (Char -> Char) -> (Char -> Char) -> Emphasis -> Char -> Char
forall a. a -> a -> Emphasis -> a
splitEmphasis Char -> Char
greekSerifNoBoldItalic' Char -> Char
greekSerifBoldItalic'
greekSerifItalic
:: Emphasis
-> Char
-> Maybe Char
greekSerifItalic :: Emphasis -> Char -> Maybe Char
greekSerifItalic = (Char -> Maybe Char)
-> (Char -> Maybe Char) -> Emphasis -> Char -> Maybe Char
forall a. a -> a -> Emphasis -> a
splitEmphasis Char -> Maybe Char
greekSerifNoBoldItalic Char -> Maybe Char
greekSerifBoldItalic
greekSerifNoItalic'
:: Emphasis
-> Char
-> Char
greekSerifNoItalic' :: Emphasis -> Char -> Char
greekSerifNoItalic' = (Char -> Char) -> (Char -> Char) -> Emphasis -> Char -> Char
forall a. a -> a -> Emphasis -> a
splitEmphasis Char -> Char
greekSerifNoBoldNoItalic' Char -> Char
greekSerifBoldNoItalic'
greekSerifNoItalic
:: Emphasis
-> Char
-> Maybe Char
greekSerifNoItalic :: Emphasis -> Char -> Maybe Char
greekSerifNoItalic = (Char -> Maybe Char)
-> (Char -> Maybe Char) -> Emphasis -> Char -> Maybe Char
forall a. a -> a -> Emphasis -> a
splitEmphasis Char -> Maybe Char
greekSerifNoBoldNoItalic Char -> Maybe Char
greekSerifBoldNoItalic