uni-util-2.3.0.1: Utilities for the uniform workbench

Safe HaskellSafe-Inferred

Util.DeepSeq

Description

Module taken from Dean Harington's post to the Haskell mailing list on Fri, 17 Aug 2001.

URL is currently http://www.haskell.org/pipermail/haskell/2001-August/007712.html

This module provides deepSeq and $!! which correspond to seq and $! except that they try to evaluate everything in the argument. For example, if a list is provided, the whole list must be evaluated.

For purposes of Haddock, empty instance declarations with where have had the where deleted.

Documentation

class DeepSeq a whereSource

Methods

deepSeq :: a -> b -> bSource

Instances

DeepSeq Bool 
DeepSeq Char 
DeepSeq Double 
DeepSeq Float 
DeepSeq Int 
DeepSeq Integer 
DeepSeq Ordering 
DeepSeq () 
DeepSeq a => DeepSeq [a] 
DeepSeq a => DeepSeq (Maybe a) 
(DeepSeq a, DeepSeq b) => DeepSeq (Either a b) 
(DeepSeq a, DeepSeq b) => DeepSeq (a, b) 
(DeepSeq a, DeepSeq b, DeepSeq c) => DeepSeq (a, b, c) 
(DeepSeq a, DeepSeq b, DeepSeq c, DeepSeq d) => DeepSeq (a, b, c, d) 
(DeepSeq a, DeepSeq b, DeepSeq c, DeepSeq d, DeepSeq e) => DeepSeq (a, b, c, d, e) 
(DeepSeq a, DeepSeq b, DeepSeq c, DeepSeq d, DeepSeq e, DeepSeq f) => DeepSeq (a, b, c, d, e, f) 
(DeepSeq a, DeepSeq b, DeepSeq c, DeepSeq d, DeepSeq e, DeepSeq f, DeepSeq g) => DeepSeq (a, b, c, d, e, f, g) 

($!!) :: DeepSeq a => (a -> b) -> a -> bSource