Safe Haskell | None |
---|---|
Language | Haskell98 |
Network.SOAP.Parsing.Stream
Description
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 -> ConduitM Event Void m a -> ConduitM Event Void m (Maybe a)
- flaxTag :: MonadThrow m => Text -> ConduitM Event Void m a -> ConduitM Event Void m a
- laxContent :: MonadThrow m => Text -> ConduitM Event Void m (Maybe Text)
- flaxContent :: MonadThrow m => Text -> ConduitM Event Void m Text
- readContent :: (Read a, MonadThrow m) => ConduitM Event Void m a
- readTag :: (Read a, MonadThrow m) => Text -> ConduitM Event Void m a
- data Event :: *
- type ConduitM = ConduitT
- data Void :: *
- type Sink i = ConduitT i Void
Tags
laxTag :: MonadThrow m => Text -> ConduitM Event Void m a -> ConduitM Event Void m (Maybe a) Source #
Namespace- and attribute- ignorant tagNoAttr.
flaxTag :: MonadThrow m => Text -> ConduitM Event Void m a -> ConduitM Event Void m a Source #
Non-maybe version of laxTag/tagNoAttr.
Content
laxContent :: MonadThrow m => Text -> ConduitM Event Void m (Maybe Text) Source #
flaxContent :: MonadThrow m => Text -> ConduitM Event Void m Text Source #
readContent :: (Read a, MonadThrow m) => ConduitM Event Void m a Source #
Unpack and read a current tag content.
readTag :: (Read a, MonadThrow m) => Text -> ConduitM Event Void m a Source #
Unpack and read tag content by local name.
Types to use in custom parser sinks
Some XML processing tools are incremental, and work in terms of events
rather than node trees. The Event
type allows a document to be fully
specified as a sequence of events.
Event-based XML libraries include:
Uninhabited data type
Since: 4.8.0.0
Instances