diff options
Diffstat (limited to 'src/Data/Array/Mixed')
| -rw-r--r-- | src/Data/Array/Mixed/Shape.hs | 4 | 
1 files changed, 4 insertions, 0 deletions
| diff --git a/src/Data/Array/Mixed/Shape.hs b/src/Data/Array/Mixed/Shape.hs index 1d3e60a..b5a4cb9 100644 --- a/src/Data/Array/Mixed/Shape.hs +++ b/src/Data/Array/Mixed/Shape.hs @@ -31,6 +31,7 @@ import Data.Kind (Type, Constraint)  import Data.Monoid (Sum(..))  import Data.Proxy  import Data.Type.Equality +import GHC.Exts (withDict)  import GHC.Generics (Generic)  import GHC.IsList (IsList)  import GHC.IsList qualified as IsList @@ -469,6 +470,9 @@ instance KnownShX '[] where knownShX = ZKX  instance (KnownNat n, KnownShX sh) => KnownShX (Just n : sh) where knownShX = SKnown natSing :!% knownShX  instance KnownShX sh => KnownShX (Nothing : sh) where knownShX = SUnknown () :!% knownShX +withKnownShX :: forall sh r. StaticShX sh -> (KnownShX sh => r) -> r +withKnownShX sh = withDict @(KnownShX sh) sh +  -- * Flattening | 
