{-# LINE 1 "src/KB/Text/Shape/FFI/API/Other.hsc" #-}
module KB.Text.Shape.FFI.API.Other where
import Prelude hiding (id, error)
import Foreign
import Foreign.C
import KB.Text.Shape.FFI.Handles
import KB.Text.Shape.FFI.Enums
import KB.Text.Shape.FFI.Structs
foreign import ccall "kbts_FontCoverageTestBegin" kbts_FontCoverageTestBegin
:: Ptr FontCoverageTest
-> Font
-> IO ()
foreign import ccall "kbts_FontCoverageTestCodepoint" kbts_FontCoverageTestCodepoint
:: Ptr FontCoverageTest
-> CInt
-> IO ()
foreign import ccall "kbts_FontCoverageTestEnd" kbts_FontCoverageTestEnd
:: Ptr FontCoverageTest
-> IO Int
foreign import ccall unsafe "kbts_ScriptDirection" kbts_ScriptDirection
:: Script
-> Direction
foreign import ccall unsafe "kbts_ScriptIsComplex" kbts_ScriptIsComplex
:: Script
-> CInt
newtype ScriptTag = ScriptTag Word32
deriving (ScriptTag -> ScriptTag -> Bool
(ScriptTag -> ScriptTag -> Bool)
-> (ScriptTag -> ScriptTag -> Bool) -> Eq ScriptTag
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ScriptTag -> ScriptTag -> Bool
== :: ScriptTag -> ScriptTag -> Bool
$c/= :: ScriptTag -> ScriptTag -> Bool
/= :: ScriptTag -> ScriptTag -> Bool
Eq, Eq ScriptTag
Eq ScriptTag =>
(ScriptTag -> ScriptTag -> Ordering)
-> (ScriptTag -> ScriptTag -> Bool)
-> (ScriptTag -> ScriptTag -> Bool)
-> (ScriptTag -> ScriptTag -> Bool)
-> (ScriptTag -> ScriptTag -> Bool)
-> (ScriptTag -> ScriptTag -> ScriptTag)
-> (ScriptTag -> ScriptTag -> ScriptTag)
-> Ord ScriptTag
ScriptTag -> ScriptTag -> Bool
ScriptTag -> ScriptTag -> Ordering
ScriptTag -> ScriptTag -> ScriptTag
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ScriptTag -> ScriptTag -> Ordering
compare :: ScriptTag -> ScriptTag -> Ordering
$c< :: ScriptTag -> ScriptTag -> Bool
< :: ScriptTag -> ScriptTag -> Bool
$c<= :: ScriptTag -> ScriptTag -> Bool
<= :: ScriptTag -> ScriptTag -> Bool
$c> :: ScriptTag -> ScriptTag -> Bool
> :: ScriptTag -> ScriptTag -> Bool
$c>= :: ScriptTag -> ScriptTag -> Bool
>= :: ScriptTag -> ScriptTag -> Bool
$cmax :: ScriptTag -> ScriptTag -> ScriptTag
max :: ScriptTag -> ScriptTag -> ScriptTag
$cmin :: ScriptTag -> ScriptTag -> ScriptTag
min :: ScriptTag -> ScriptTag -> ScriptTag
Ord, Int -> ScriptTag -> ShowS
[ScriptTag] -> ShowS
ScriptTag -> String
(Int -> ScriptTag -> ShowS)
-> (ScriptTag -> String)
-> ([ScriptTag] -> ShowS)
-> Show ScriptTag
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ScriptTag -> ShowS
showsPrec :: Int -> ScriptTag -> ShowS
$cshow :: ScriptTag -> String
show :: ScriptTag -> String
$cshowList :: [ScriptTag] -> ShowS
showList :: [ScriptTag] -> ShowS
Show)
deriving newtype (Ptr ScriptTag -> IO ScriptTag
Ptr ScriptTag -> Int -> IO ScriptTag
Ptr ScriptTag -> Int -> ScriptTag -> IO ()
Ptr ScriptTag -> ScriptTag -> IO ()
ScriptTag -> Int
(ScriptTag -> Int)
-> (ScriptTag -> Int)
-> (Ptr ScriptTag -> Int -> IO ScriptTag)
-> (Ptr ScriptTag -> Int -> ScriptTag -> IO ())
-> (forall b. Ptr b -> Int -> IO ScriptTag)
-> (forall b. Ptr b -> Int -> ScriptTag -> IO ())
-> (Ptr ScriptTag -> IO ScriptTag)
-> (Ptr ScriptTag -> ScriptTag -> IO ())
-> Storable ScriptTag
forall b. Ptr b -> Int -> IO ScriptTag
forall b. Ptr b -> Int -> ScriptTag -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
$csizeOf :: ScriptTag -> Int
sizeOf :: ScriptTag -> Int
$calignment :: ScriptTag -> Int
alignment :: ScriptTag -> Int
$cpeekElemOff :: Ptr ScriptTag -> Int -> IO ScriptTag
peekElemOff :: Ptr ScriptTag -> Int -> IO ScriptTag
$cpokeElemOff :: Ptr ScriptTag -> Int -> ScriptTag -> IO ()
pokeElemOff :: Ptr ScriptTag -> Int -> ScriptTag -> IO ()
$cpeekByteOff :: forall b. Ptr b -> Int -> IO ScriptTag
peekByteOff :: forall b. Ptr b -> Int -> IO ScriptTag
$cpokeByteOff :: forall b. Ptr b -> Int -> ScriptTag -> IO ()
pokeByteOff :: forall b. Ptr b -> Int -> ScriptTag -> IO ()
$cpeek :: Ptr ScriptTag -> IO ScriptTag
peek :: Ptr ScriptTag -> IO ScriptTag
$cpoke :: Ptr ScriptTag -> ScriptTag -> IO ()
poke :: Ptr ScriptTag -> ScriptTag -> IO ()
Storable)
foreign import ccall unsafe "kbts_ScriptTagToScript" kbts_ScriptTagToScript
:: ScriptTag
-> Script
foreign import ccall unsafe "hs_GetUnitsPerEm" hs_GetUnitsPerEm
:: Font
-> Word16
foreign import ccall unsafe "hs_GetCapHeight" hs_GetCapHeight
:: Font
-> Word16