hw-prim-0.5.0.3: Primitive functions and data types

Safe HaskellNone
LanguageHaskell2010

HaskellWorks.Data.AtIndex

Documentation

class Container a Source #

Associated Types

type Elem a Source #

Instances

Container ByteString Source # 

Associated Types

type Elem ByteString :: * Source #

Container [a] Source # 

Associated Types

type Elem [a] :: * Source #

Container (Vector Int) Source # 

Associated Types

type Elem (Vector Int) :: * Source #

Container (Vector Int8) Source # 

Associated Types

type Elem (Vector Int8) :: * Source #

Container (Vector Int16) Source # 

Associated Types

type Elem (Vector Int16) :: * Source #

Container (Vector Int32) Source # 

Associated Types

type Elem (Vector Int32) :: * Source #

Container (Vector Int64) Source # 

Associated Types

type Elem (Vector Int64) :: * Source #

Container (Vector Word8) Source # 

Associated Types

type Elem (Vector Word8) :: * Source #

Container (Vector Word16) Source # 

Associated Types

type Elem (Vector Word16) :: * Source #

Container (Vector Word32) Source # 

Associated Types

type Elem (Vector Word32) :: * Source #

Container (Vector Word64) Source # 

Associated Types

type Elem (Vector Word64) :: * Source #

Container (Vector Int8) Source # 

Associated Types

type Elem (Vector Int8) :: * Source #

Container (Vector Int16) Source # 

Associated Types

type Elem (Vector Int16) :: * Source #

Container (Vector Int32) Source # 

Associated Types

type Elem (Vector Int32) :: * Source #

Container (Vector Int64) Source # 

Associated Types

type Elem (Vector Int64) :: * Source #

Container (Vector Word8) Source # 

Associated Types

type Elem (Vector Word8) :: * Source #

Container (Vector Word16) Source # 

Associated Types

type Elem (Vector Word16) :: * Source #

Container (Vector Word32) Source # 

Associated Types

type Elem (Vector Word32) :: * Source #

Container (Vector Word64) Source # 

Associated Types

type Elem (Vector Word64) :: * Source #

class Length v => AtIndex v where Source #

Minimal complete definition

(!!!), atIndex

Methods

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

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

Instances

AtIndex ByteString Source # 
AtIndex [a] Source # 

Methods

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

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

AtIndex (Vector Int) Source # 
AtIndex (Vector Int8) Source # 
AtIndex (Vector Int16) Source # 
AtIndex (Vector Int32) Source # 
AtIndex (Vector Int64) Source # 
AtIndex (Vector Word8) Source # 
AtIndex (Vector Word16) Source # 
AtIndex (Vector Word32) Source # 
AtIndex (Vector Word64) Source # 
AtIndex (Vector Int8) Source # 
AtIndex (Vector Int16) Source # 
AtIndex (Vector Int32) Source # 
AtIndex (Vector Int64) Source # 
AtIndex (Vector Word8) Source # 
AtIndex (Vector Word16) Source # 
AtIndex (Vector Word32) Source # 
AtIndex (Vector Word64) Source # 

class Container v => Length v where Source #

Minimal complete definition

length

Methods

length :: v -> Count Source #

end :: v -> Position Source #

Instances

Length ByteString Source # 
Length [a] Source # 

Methods

length :: [a] -> Count Source #

end :: [a] -> Position Source #

Length (Vector Int) Source # 
Length (Vector Int8) Source # 
Length (Vector Int16) Source # 
Length (Vector Int32) Source # 
Length (Vector Int64) Source # 
Length (Vector Word8) Source # 
Length (Vector Word16) Source # 
Length (Vector Word32) Source # 
Length (Vector Word64) Source # 
Length (Vector Int8) Source # 
Length (Vector Int16) Source # 
Length (Vector Int32) Source # 
Length (Vector Int64) Source # 
Length (Vector Word8) Source # 
Length (Vector Word16) Source # 
Length (Vector Word32) Source # 
Length (Vector Word64) Source # 

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