Safe Haskell | None |
---|---|
Language | Haskell98 |
Collection of helpers to use with Text.XML.Stream.Parse parsers.
let sink = flaxTag "MethodNameResponse" $ flaxTag "MethodNameResult" $ do info <- flaxTag "Info" $ do q <- readTag "quantity" b <- readTag "balance" return $ Info q b rc <- readTag "ResponseCode" return (rc, info)
- laxTag :: MonadThrow m => Text -> Sink Event m a -> Sink Event m (Maybe a)
- flaxTag :: MonadThrow m => Text -> Sink Event m a -> Sink Event m a
- laxContent :: MonadThrow m => Text -> Sink Event m (Maybe Text)
- flaxContent :: MonadThrow m => Text -> Sink Event m Text
- readContent :: (Read a, MonadThrow m) => Sink Event m a
- readTag :: (Read a, MonadThrow m) => Text -> Sink Event m a
- type Sink i = ConduitM i Void
- data Event :: *
Tags
laxTag :: MonadThrow m => Text -> Sink Event m a -> Sink Event m (Maybe a) Source
Namespace- and attribute- ignorant tagNoAttr.
flaxTag :: MonadThrow m => Text -> Sink Event m a -> Sink Event m a Source
Non-maybe version of laxTag/tagNoAttr.
Content
laxContent :: MonadThrow m => Text -> Sink Event m (Maybe Text) Source
flaxContent :: MonadThrow m => Text -> Sink Event m Text Source
readContent :: (Read a, MonadThrow m) => Sink Event m a Source
Unpack and read a current tag content.
readTag :: (Read a, MonadThrow m) => Text -> Sink Event m a Source
Unpack and read tag content by local name.
Types to use in custom parser sinks
Consumes a stream of input values and produces a final result, without producing any output.
type Sink i m r = ConduitM i Void m r
Since 0.5.0