hxt-9.3.1.16: A collection of tools for processing XML with Haskell.

CopyrightCopyright (C) 2011 Uwe Schmidt
LicenseMIT
MaintainerUwe Schmidt (uwe\@fh-wedel.de)
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

Control.FlatSeq

Description

Force evaluation like deepseq in Control.DeepSeq, but control the depth of evaluation. flatseq may evaluate more than seq but less than deepseq

Synopsis

Documentation

($!!) :: WNFData a => (a -> b) -> a -> b infixr 0 Source #

flatseq :: WNFData a => a -> b -> b Source #

rlnf :: (a -> ()) -> [a] -> () Source #

class WNFData a where Source #

A class of types that can be partially evaluated, but evaluation can be propagated deeper than WHNF

Methods

rwnf :: a -> () Source #

Default for rwnf is reduction to WHNF

rwnf2 :: a -> () Source #

Default for rwnf2 is rwnf

Instances

WNFData Bool Source # 

Methods

rwnf :: Bool -> () Source #

rwnf2 :: Bool -> () Source #

WNFData Char Source # 

Methods

rwnf :: Char -> () Source #

rwnf2 :: Char -> () Source #

WNFData Double Source # 

Methods

rwnf :: Double -> () Source #

rwnf2 :: Double -> () Source #

WNFData Float Source # 

Methods

rwnf :: Float -> () Source #

rwnf2 :: Float -> () Source #

WNFData Int Source # 

Methods

rwnf :: Int -> () Source #

rwnf2 :: Int -> () Source #

WNFData Integer Source # 

Methods

rwnf :: Integer -> () Source #

rwnf2 :: Integer -> () Source #

WNFData Word Source # 

Methods

rwnf :: Word -> () Source #

rwnf2 :: Word -> () Source #

WNFData Word8 Source # 

Methods

rwnf :: Word8 -> () Source #

rwnf2 :: Word8 -> () Source #

WNFData Word16 Source # 

Methods

rwnf :: Word16 -> () Source #

rwnf2 :: Word16 -> () Source #

WNFData Word32 Source # 

Methods

rwnf :: Word32 -> () Source #

rwnf2 :: Word32 -> () Source #

WNFData Word64 Source # 

Methods

rwnf :: Word64 -> () Source #

rwnf2 :: Word64 -> () Source #

WNFData () Source # 

Methods

rwnf :: () -> () Source #

rwnf2 :: () -> () Source #

WNFData QName Source # 

Methods

rwnf :: QName -> () Source #

rwnf2 :: QName -> () Source #

WNFData XName Source # 

Methods

rwnf :: XName -> () Source #

rwnf2 :: XName -> () Source #

WNFData DTDElem Source # 

Methods

rwnf :: DTDElem -> () Source #

rwnf2 :: DTDElem -> () Source #

WNFData XNode Source # 

Methods

rwnf :: XNode -> () Source #

rwnf2 :: XNode -> () Source #

WNFData a => WNFData [a] Source # 

Methods

rwnf :: [a] -> () Source #

rwnf2 :: [a] -> () Source #

WNFData a => WNFData (NTree a) Source # 

Methods

rwnf :: NTree a -> () Source #

rwnf2 :: NTree a -> () Source #

(WNFData a, WNFData b) => WNFData (a, b) Source # 

Methods

rwnf :: (a, b) -> () Source #

rwnf2 :: (a, b) -> () Source #

(WNFData a, WNFData b, WNFData c) => WNFData (a, b, c) Source # 

Methods

rwnf :: (a, b, c) -> () Source #

rwnf2 :: (a, b, c) -> () Source #

(WNFData a, WNFData b, WNFData c, WNFData d) => WNFData (a, b, c, d) Source # 

Methods

rwnf :: (a, b, c, d) -> () Source #

rwnf2 :: (a, b, c, d) -> () Source #