-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Xournal file parser -- -- Text parser for xournal xml file @package xournal-parser @version 0.5 module Text.Xournal.Parse.Zlib -- | check if gzip or not checkIfBinary :: FilePath -> IO Bool module Text.Xournal.Parse.Conduit dropWhile :: (Show a, Monad m) => (a -> Bool) -> Sink a m () flipap :: a -> (a -> b) -> b unit :: Monad m => m () skipspace :: Text -> Text many0event :: Monad m => (Text, Text) -> (Event -> Sink Event m (Either String a)) -> Sink Event m (Either String [a]) many1event :: Monad m => (Text, Text) -> (Event -> Sink Event m (Either String a)) -> Sink Event m (Either String [a]) many1eventWrkr :: Monad m => (Text, Text) -> ([a] -> [a]) -> (Event -> Sink Event m (Either String a)) -> Sink Event m (Either String [a]) drop2NextStartOrEnd :: Monad m => Sink Event m (Either (Text, Event) Text) -- | parse whole xournal file pXournal :: Monad m => Sink Event m (Either String Xournal) -- | parse one page pPage :: Monad m => Event -> Sink Event m (Either String Page) pTitle :: Monad m => Sink Event m (Either String ByteString) pBkg :: Monad m => Sink Event m (Either String Background) pLayer :: Monad m => Event -> Sink Event m (Either String Layer) pStroke :: Monad m => Event -> Sink Event m (Either String Stroke) getStrokeContent :: ([Pair Double Double] -> [Pair Double Double]) -> Text -> Either String [Pair Double Double] getStroke :: Event -> Either String (Stroke, StrokeWidth) data StrokeWidth SingleWidth :: Double -> StrokeWidth VarWidth :: [Double] -> StrokeWidth getWidth :: ([Double] -> [Double]) -> Text -> Either String StrokeWidth getBackground :: Event -> Either String Background getDimension :: Event -> Either String Dimension -- | get Content getContent :: Event -> Either String Text isEventStartEnd :: Event -> Bool -- | check start of element with name txt isStart :: Text -> Event -> Bool -- | check end of element with name txt isEnd :: Text -> Event -> Bool -- | generic xml file driver parseXmlFile :: (MonadThrow m, MonadIO m) => Handle -> Sink Event m a -> m a -- | for xournal parseXojFile :: FilePath -> IO (Either String Xournal) parseXojGzFile :: FilePath -> IO (Either String Xournal) parseXournal :: FilePath -> IO (Either String Xournal) -- | printing for debug iterPrint :: (Show s, MonadIO m) => Sink s m () instance Show StrokeWidth module Text.Xournal.Parse