rewire-user-2.8
Safe HaskellNone
LanguageHaskell2010

ReWire.Vectors

Synopsis

Documentation

replicate :: forall (n :: Nat) a. KnownNat n => a -> Vec n a Source #

reverse :: forall (n :: Nat) a. Vec n a -> Vec n a Source #

slice :: forall (i :: Nat) (n :: Nat) (m :: Natural) a. (KnownNat i, KnownNat n) => Proxy i -> Vec ((i + n) + m) a -> Vec n a Source #

rslice :: forall (i :: Nat) (n :: Nat) (m :: Natural) a. (KnownNat i, KnownNat n) => Proxy i -> Vec ((i + n) + m) a -> Vec n a Source #

index :: forall (n :: Nat) a. Vec n a -> Finite n -> a Source #

index' :: forall (n :: Nat) (m :: Natural) a. KnownNat n => Vec ((n + m) + 1) a -> Proxy n -> a Source #

(++) :: forall (n :: Nat) a (m :: Nat). Vec n a -> Vec m a -> Vec (n + m) a Source #

empty :: Vec 0 a Source #

singleton :: a -> Vec 1 a Source #

cons :: forall a (n :: Nat). a -> Vec n a -> Vec (1 + n) a Source #

snoc :: forall (n :: Nat) a. Vec n a -> a -> Vec (n + 1) a Source #

head :: forall (n :: Natural) a. Vec (1 + n) a -> a Source #

last :: forall (n :: Nat) a. KnownNat n => Vec n a -> a Source #

lastIndex :: forall (n :: Nat) a. KnownNat n => Vec n a -> Finite n Source #

take :: forall (n :: Nat) (m :: Natural) a. KnownNat n => Vec (n + m) a -> Vec n a Source #

init :: forall (n :: Nat) a. KnownNat n => Vec (n + 1) a -> Vec n a Source #

drop :: forall (m :: Nat) (n :: Natural) a. KnownNat m => Vec (n + m) a -> Vec m a Source #

tail :: forall (n :: Nat) a. KnownNat n => Vec (1 + n) a -> Vec n a Source #

update :: forall (n :: Nat) a. KnownNat n => Vec n a -> Finite n -> a -> Vec n a Source #

map :: forall a b (n :: Nat). (a -> b) -> Vec n a -> Vec n b Source #

generate :: forall (n :: Nat) a. KnownNat n => (Finite n -> a) -> Vec n a Source #

packlo :: forall (n :: Nat) a. KnownNat n => Vec n a -> Vec n a -> Vec n a Source #

Returns evens from v concatenated with evens from w

packhi :: forall (n :: Nat) a. KnownNat n => Vec n a -> Vec n a -> Vec n a Source #

Returns odds from v concatenated with odds from w

unpacklo :: forall (n :: Nat) a. KnownNat n => Vec n a -> Vec n a -> Vec n a Source #

Returns the first half of v interleaved with the first half of w

unpackhi :: forall (n :: Nat) a. KnownNat n => Vec n a -> Vec n a -> Vec n a Source #

Returns the second half of v interleaved with the second half of w

(!) :: forall (n :: Nat) (m :: Natural) a. KnownNat n => Vec ((n + m) + 1) a -> Proxy n -> a infixl 9 Source #

lookup value at index n in vector

(!=) :: forall (n :: Nat) a. KnownNat n => Vec n a -> Finite n -> a -> Vec n a infixr 2 Source #

assign new value a to index i