haskell98-1.1.0.1: Compatibility with Haskell 98

Ix

Synopsis

Documentation

class Ord a => Ix a whereSource

The Ix class is used to map a contiguous subrange of values in a type onto integers. It is used primarily for array indexing (see the array package).

The first argument (l,u) of each of these operations is a pair specifying the lower and upper bounds of a contiguous subrange of values.

An implementation is entitled to assume the following laws about these operations:

Minimal complete instance: range, index and inRange.

Methods

range :: (a, a) -> [a]Source

The list of values in the subrange defined by a bounding pair.

index :: (a, a) -> a -> IntSource

The position of a subscript in the subrange.

inRange :: (a, a) -> a -> BoolSource

Returns True the given subscript lies in the range defined the bounding pair.

rangeSize :: (a, a) -> IntSource

The size of the subrange defined by a bounding pair.

Instances

Ix Bool 
Ix Char 
Ix Int 
Ix Integer 
Ix Ordering 
Ix () 
Ix GeneralCategory 
Ix SeekMode 
Ix IOMode 
Ix Month 
Ix Day 
(Ix a, Ix b) => Ix (a, b) 
(Ix a1, Ix a2, Ix a3) => Ix (a1, a2, a3) 
(Ix a1, Ix a2, Ix a3, Ix a4) => Ix (a1, a2, a3, a4) 
(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5) => Ix (a1, a2, a3, a4, a5) 

rangeSize :: Ix a => (a, a) -> IntSource

The size of the subrange defined by a bounding pair.