permutation-0.5.0: A library for permutations and combinations.

CopyrightCopyright (c) , Patrick Perry <patperry@stanford.edu>
LicenseBSD3
MaintainerPatrick Perry <patperry@stanford.edu>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell98

Data.Choose.ST

Contents

Description

Mutable combinations in the ST monad.

Synopsis

Combinations

data STChoose s Source

A mutable combination that can be manipulated in the ST monad. The type argument s is the state variable argument for the ST type.

Instances

Eq (STChoose s) 
MChoose (STChoose s) (ST s) 

runSTChoose :: (forall s. ST s (STChoose s)) -> Choose Source

A safe way to create and work with a mutable combination before returning an immutable one for later perusal. This function avoids copying the combination before returning it - it uses unsafeFreeze internally, but this wrapper is a safe interface to that function.

Overloaded mutable combination interface