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