{-# LINE 1 "src/Text/Sundown/Html/Foreign.hsc" #-}
{-# Language EmptyDataDecls #-}
{-# Language ForeignFunctionInterface #-}
module Text.Sundown.Html.Foreign
( HtmlRenderMode (..)
, sdhtml_renderer
, sdhtml_smartypants
) where
import Foreign
import Foreign.C.String
import Foreign.C.Types
import Text.Sundown.Buffer.Foreign
import Text.Sundown.Flag
import Text.Sundown.Foreign
data HtmlRenderMode = HtmlRenderMode
{ HtmlRenderMode -> Bool
htmlSkipHtml :: Bool
, HtmlRenderMode -> Bool
htmlSkipStyle :: Bool
, HtmlRenderMode -> Bool
htmlSkipImages :: Bool
, HtmlRenderMode -> Bool
htmlSkipLinks :: Bool
, HtmlRenderMode -> Bool
htmlExpandTabs :: Bool
, HtmlRenderMode -> Bool
htmlSafelink :: Bool
, HtmlRenderMode -> Bool
htmlToc :: Bool
, HtmlRenderMode -> Bool
htmlHardWrap :: Bool
, HtmlRenderMode -> Bool
htmlUseXhtml :: Bool
, HtmlRenderMode -> Bool
htmlEscape :: Bool
}
instance Flag HtmlRenderMode where
flagIndexes :: HtmlRenderMode -> [(CUInt, Bool)]
flagIndexes HtmlRenderMode
mode = [ (CUInt
1, HtmlRenderMode -> Bool
htmlSkipHtml HtmlRenderMode
mode)
{-# LINE 35 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
2, HtmlRenderMode -> Bool
htmlSkipStyle HtmlRenderMode
mode)
{-# LINE 36 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
4, HtmlRenderMode -> Bool
htmlSkipImages HtmlRenderMode
mode)
{-# LINE 37 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
8, HtmlRenderMode -> Bool
htmlSkipLinks HtmlRenderMode
mode)
{-# LINE 38 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
16, HtmlRenderMode -> Bool
htmlExpandTabs HtmlRenderMode
mode)
{-# LINE 39 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
32, HtmlRenderMode -> Bool
htmlSafelink HtmlRenderMode
mode)
{-# LINE 40 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
64, HtmlRenderMode -> Bool
htmlToc HtmlRenderMode
mode)
{-# LINE 41 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
128, HtmlRenderMode -> Bool
htmlHardWrap HtmlRenderMode
mode)
{-# LINE 42 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
256, HtmlRenderMode -> Bool
htmlUseXhtml HtmlRenderMode
mode)
{-# LINE 43 "src/Text/Sundown/Html/Foreign.hsc" #-}
, (CUInt
512, HtmlRenderMode -> Bool
htmlEscape HtmlRenderMode
mode)
{-# LINE 44 "src/Text/Sundown/Html/Foreign.hsc" #-}
]
data HtmlRenderOptions
instance Storable HtmlRenderOptions where
sizeOf :: HtmlRenderOptions -> Int
sizeOf HtmlRenderOptions
_ = ((Int
24))
{-# LINE 50 "src/Text/Sundown/Html/Foreign.hsc" #-}
alignment _ = alignment (undefined :: Ptr ())
peek :: Ptr HtmlRenderOptions -> IO HtmlRenderOptions
peek Ptr HtmlRenderOptions
_ = [Char] -> IO HtmlRenderOptions
forall a. HasCallStack => [Char] -> a
error [Char]
"HtmlRenderopt.peek is not implemented"
poke :: Ptr HtmlRenderOptions -> HtmlRenderOptions -> IO ()
poke Ptr HtmlRenderOptions
_ = [Char] -> HtmlRenderOptions -> IO ()
forall a. HasCallStack => [Char] -> a
error [Char]
"HtmlRenderopt.poke is not implemented"
sdhtml_renderer
:: Ptr Callbacks -> Ptr HtmlRenderOptions -> HtmlRenderMode -> IO ()
sdhtml_renderer :: Ptr Callbacks -> Ptr HtmlRenderOptions -> HtmlRenderMode -> IO ()
sdhtml_renderer Ptr Callbacks
rndr Ptr HtmlRenderOptions
options HtmlRenderMode
mode = Ptr Callbacks -> Ptr HtmlRenderOptions -> CUInt -> IO ()
sdhtml_renderer' Ptr Callbacks
rndr Ptr HtmlRenderOptions
options (HtmlRenderMode -> CUInt
forall a. Flag a => a -> CUInt
toCUInt HtmlRenderMode
mode)
foreign import ccall "html.h sdhtml_renderer"
sdhtml_renderer' :: Ptr Callbacks -> Ptr HtmlRenderOptions -> CUInt -> IO ()
foreign import ccall "html.h sdhtml_smartypants"
sdhtml_smartypants :: Ptr Buffer -> CString -> CSize -> IO ()