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)
Synopsis
- 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:
Instances
Uninhabited data type
Since: base-4.8.0.0
Instances
Eq Void | Since: base-4.8.0.0 |
Data Void | Since: base-4.8.0.0 |
Defined in Data.Void Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Void -> c Void # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Void # dataTypeOf :: Void -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Void) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Void) # gmapT :: (forall b. Data b => b -> b) -> Void -> Void # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Void -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Void -> r # gmapQ :: (forall d. Data d => d -> u) -> Void -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Void -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Void -> m Void # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Void -> m Void # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Void -> m Void # | |
Ord Void | Since: base-4.8.0.0 |
Read Void | Reading a Since: base-4.8.0.0 |
Show Void | Since: base-4.8.0.0 |
Ix Void | Since: base-4.8.0.0 |
Generic Void | |
Semigroup Void | Since: base-4.9.0.0 |
Exception Void | Since: base-4.8.0.0 |
Defined in Data.Void Methods toException :: Void -> SomeException # fromException :: SomeException -> Maybe Void # displayException :: Void -> String # | |
Hashable Void | |
Defined in Data.Hashable.Class | |
type Rep Void | Since: base-4.8.0.0 |