Create PrimArray submodules for each rep
This commit is contained in:
parent
eeb2967f6f
commit
bd235754d2
5 changed files with 516 additions and 1 deletions
23
src/Data/NumIdr/PrimArray/Delayed.idr
Normal file
23
src/Data/NumIdr/PrimArray/Delayed.idr
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
module Data.NumIdr.PrimArray.Delayed
|
||||
|
||||
import Data.Vect
|
||||
import Data.NP
|
||||
import Data.NumIdr.Array.Rep
|
||||
import Data.NumIdr.Array.Coords
|
||||
|
||||
%default total
|
||||
|
||||
public export
|
||||
PrimArrayDelayed : Vect rk Nat -> Type -> Type
|
||||
PrimArrayDelayed s a = Coords s -> a
|
||||
|
||||
|
||||
export
|
||||
constant : (s : Vect rk Nat) -> a -> PrimArrayDelayed s a
|
||||
constant s x _ = x
|
||||
|
||||
|
||||
export
|
||||
checkRange : (s : Vect rk Nat) -> Vect rk Nat -> Maybe (Coords s)
|
||||
checkRange [] [] = Just []
|
||||
checkRange (d :: s) (i :: is) = (::) <$> natToFin i d <*> checkRange s is
|
||||
Loading…
Add table
Add a link
Reference in a new issue