{-# LANGUAGE TypeFamilies #-}
module Numeric.LAPACK.Shape.Private where

import qualified Numeric.LAPACK.Shape as ExtShape

import qualified Data.Array.Comfort.Shape as Shape


newtype Unchecked sh = Unchecked {deconsUnchecked :: sh}
   deriving (Show)

instance Eq (Unchecked sh) where
   Unchecked _ == Unchecked _   =  True

instance (Shape.C sh) => Shape.C (Unchecked sh) where
   size (Unchecked sh) = Shape.size sh

instance (ExtShape.Permutable sh) => ExtShape.Permutable (Unchecked sh) where