hw-prim-0.6.3.2: Primitive functions and data types
Safe HaskellNone
LanguageHaskell2010

HaskellWorks.Data.AtIndex

Synopsis

Documentation

class Container a #

Associated Types

type Elem a #

Instances

Instances details
Container ByteString # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem ByteString 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int16) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int16) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int32) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int32) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int64) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int64) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int8) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int8) 
Instance details

Defined in HaskellWorks.Data.Container

type Elem (Vector Int8) = Int8
Container (Vector Word16) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word16) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Word32) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word32) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Word64) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word64) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Word8) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word8) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int16) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int16) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int32) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int32) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int64) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int64) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int8) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int8) 
Instance details

Defined in HaskellWorks.Data.Container

type Elem (Vector Int8) = Int8
Container (Vector Word16) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word16) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Word32) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word32) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Word64) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word64) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Word8) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Word8) 
Instance details

Defined in HaskellWorks.Data.Container

Container (Vector Int) # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem (Vector Int) 
Instance details

Defined in HaskellWorks.Data.Container

type Elem (Vector Int) = Int
Container [a] # 
Instance details

Defined in HaskellWorks.Data.Container

Associated Types

type Elem [a] 
Instance details

Defined in HaskellWorks.Data.Container

type Elem [a] = a

class Length v => AtIndex v where #

Methods

(!!!) :: v -> Position -> Elem v #

atIndex :: v -> Position -> Elem v #

Instances

Instances details
AtIndex ByteString # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int16) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int32) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int64) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int8) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word16) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word32) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word64) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word8) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int16) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int32) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int64) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int8) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word16) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word32) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word64) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Word8) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex (Vector Int) # 
Instance details

Defined in HaskellWorks.Data.AtIndex

AtIndex [a] # 
Instance details

Defined in HaskellWorks.Data.AtIndex

Methods

(!!!) :: [a] -> Position -> Elem [a] #

atIndex :: [a] -> Position -> Elem [a] #

class Container v => Length v where #

Minimal complete definition

length

Methods

length :: v -> Count #

end :: v -> Position #

Instances

Instances details
Length ByteString # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int16) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int32) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int64) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int8) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word16) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word32) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word64) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word8) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int16) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int32) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int64) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int8) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word16) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word32) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word64) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Word8) # 
Instance details

Defined in HaskellWorks.Data.Length

Length (Vector Int) # 
Instance details

Defined in HaskellWorks.Data.Length

Length [a] # 
Instance details

Defined in HaskellWorks.Data.Length

Methods

length :: [a] -> Count #

end :: [a] -> Position #

atIndexOr :: AtIndex v => Elem v -> v -> Position -> Elem v #

Get the element of the container at the specified position, but return d if position is out of bounds.

atIndexOrBeforeOrAfter :: AtIndex v => Elem v -> Elem v -> v -> Position -> Elem v #

Get the element of the container at the specified position, but return before if position before the first element or after if the position is beyond the last element.

atIndexOrBeforeOrLast :: (AtIndex v, Length v) => Elem v -> v -> Position -> Elem v #

Get the element of the container at the specified position, but return the last element if the position is past the end of the container or the default value before' if the position is before the beginning of the vector. In the case when the container is empty, then the default value before' is used.