Copyright | Copyright (c) Patrick Perry <patperry@stanford.edu> |
---|---|
License | BSD3 |
Maintainer | Patrick Perry <patperry@stanford.edu> |
Stability | experimental |
Safe Haskell | None |
Language | Haskell98 |
Data.Permute.IO
Description
Mutable permutations in the IO
monad.
Synopsis
- data IOPermute
- module Data.Permute.MPermute
Permutations
A mutable permutation that can be manipulated in the IO
monad.
Instances
Eq IOPermute Source # | |
MPermute IOPermute IO Source # | |
Defined in Data.Permute.MPermute Methods getSize :: IOPermute -> IO Int Source # newPermute :: Int -> IO IOPermute Source # newPermute_ :: Int -> IO IOPermute Source # unsafeGetElem :: IOPermute -> Int -> IO Int Source # unsafeSetElem :: IOPermute -> Int -> Int -> IO () Source # unsafeSwapElems :: IOPermute -> Int -> Int -> IO () Source # getElems :: IOPermute -> IO [Int] Source # setElems :: IOPermute -> [Int] -> IO () Source # unsafeFreeze :: IOPermute -> IO Permute Source # unsafeThaw :: Permute -> IO IOPermute Source # unsafeInterleaveM :: IO a -> IO a |
Overloaded mutable permutation interface
module Data.Permute.MPermute