cpu-features-0.1.0.0: src/System/CPUFeatures/RISCV/Constraint/Unsafe.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE UndecidableInstances #-}
module System.CPUFeatures.RISCV.Constraint.Unsafe
( module System.CPUFeatures.RISCV.Constraint.Unsafe
, Dict (Dict)
) where
import Data.Type.Equality ((:~:)(Refl))
import System.CPUFeatures.Util
import System.CPUFeatures.RISCV.TypeBool
import Unsafe.Coerce (unsafeCoerce)
class C ~ True => HasC
instance C ~ True => HasC
class V ~ True => HasV
instance V ~ True => HasV
class Zba ~ True => HasZba
instance Zba ~ True => HasZba
class Zbb ~ True => HasZbb
instance Zbb ~ True => HasZbb
class Zbs ~ True => HasZbs
instance Zbs ~ True => HasZbs
class Zicboz ~ True => HasZicboz
instance Zicboz ~ True => HasZicboz
class Zbc ~ True => HasZbc
instance Zbc ~ True => HasZbc
class Zbkb ~ True => HasZbkb
instance Zbkb ~ True => HasZbkb
class Zbkc ~ True => HasZbkc
instance Zbkc ~ True => HasZbkc
class Zbkx ~ True => HasZbkx
instance Zbkx ~ True => HasZbkx
class Zknd ~ True => HasZknd
instance Zknd ~ True => HasZknd
class Zkne ~ True => HasZkne
instance Zkne ~ True => HasZkne
class Zknh ~ True => HasZknh
instance Zknh ~ True => HasZknh
class Zksed ~ True => HasZksed
instance Zksed ~ True => HasZksed
class Zksh ~ True => HasZksh
instance Zksh ~ True => HasZksh
class Zkt ~ True => HasZkt
instance Zkt ~ True => HasZkt
class Zvbb ~ True => HasZvbb
instance Zvbb ~ True => HasZvbb
class Zvbc ~ True => HasZvbc
instance Zvbc ~ True => HasZvbc
class Zvkb ~ True => HasZvkb
instance Zvkb ~ True => HasZvkb
class Zvkg ~ True => HasZvkg
instance Zvkg ~ True => HasZvkg
class Zvkned ~ True => HasZvkned
instance Zvkned ~ True => HasZvkned
class Zvknha ~ True => HasZvknha
instance Zvknha ~ True => HasZvknha
class Zvknhb ~ True => HasZvknhb
instance Zvknhb ~ True => HasZvknhb
class Zvksed ~ True => HasZvksed
instance Zvksed ~ True => HasZvksed
class Zvksh ~ True => HasZvksh
instance Zvksh ~ True => HasZvksh
class Zvkt ~ True => HasZvkt
instance Zvkt ~ True => HasZvkt
class Zfh ~ True => HasZfh
instance Zfh ~ True => HasZfh
class Zfhmin ~ True => HasZfhmin
instance Zfhmin ~ True => HasZfhmin
class Zihintntl ~ True => HasZihintntl
instance Zihintntl ~ True => HasZihintntl
class Zvfh ~ True => HasZvfh
instance Zvfh ~ True => HasZvfh
class Zvfhmin ~ True => HasZvfhmin
instance Zvfhmin ~ True => HasZvfhmin
class Zfa ~ True => HasZfa
instance Zfa ~ True => HasZfa
class Ztso ~ True => HasZtso
instance Ztso ~ True => HasZtso
class Zacas ~ True => HasZacas
instance Zacas ~ True => HasZacas
class Zicntr ~ True => HasZicntr
instance Zicntr ~ True => HasZicntr
class Zicond ~ True => HasZicond
instance Zicond ~ True => HasZicond
class Zihintpause ~ True => HasZihintpause
instance Zihintpause ~ True => HasZihintpause
class Zihpm ~ True => HasZihpm
instance Zihpm ~ True => HasZihpm
class Zve32x ~ True => HasZve32x
instance Zve32x ~ True => HasZve32x
class Zve32f ~ True => HasZve32f
instance Zve32f ~ True => HasZve32f
class Zve64x ~ True => HasZve64x
instance Zve64x ~ True => HasZve64x
class Zve64f ~ True => HasZve64f
instance Zve64f ~ True => HasZve64f
class Zve64d ~ True => HasZve64d
instance Zve64d ~ True => HasZve64d
class Zimop ~ True => HasZimop
instance Zimop ~ True => HasZimop
class Zca ~ True => HasZca
instance Zca ~ True => HasZca
class Zcb ~ True => HasZcb
instance Zcb ~ True => HasZcb
class Zcd ~ True => HasZcd
instance Zcd ~ True => HasZcd
class Zcf ~ True => HasZcf
instance Zcf ~ True => HasZcf
class Zcmop ~ True => HasZcmop
instance Zcmop ~ True => HasZcmop
class Zawrs ~ True => HasZawrs
instance Zawrs ~ True => HasZawrs
class Zaamo ~ True => HasZaamo
instance Zaamo ~ True => HasZaamo
class Zalrsc ~ True => HasZalrsc
instance Zalrsc ~ True => HasZalrsc
class Supm ~ True => HasSupm
instance Supm ~ True => HasSupm
class Zfbfmin ~ True => HasZfbfmin
instance Zfbfmin ~ True => HasZfbfmin
class Zvfbfmin ~ True => HasZvfbfmin
instance Zvfbfmin ~ True => HasZvfbfmin
class Zvfbfwma ~ True => HasZvfbfwma
instance Zvfbfwma ~ True => HasZvfbfwma
class Zicbom ~ True => HasZicbom
instance Zicbom ~ True => HasZicbom
unsafeAssumeC :: (HasC => a) -> a
unsafeAssumeC k = case unsafeCoerce Refl :: C :~: True of Refl -> k
queryC :: Maybe (Dict HasC)
queryC = case sC of STrue -> unsafeAssumeC (Just Dict); SFalse -> Nothing
{-# NOINLINE queryC #-}
unsafeAssumeV :: (HasV => a) -> a
unsafeAssumeV k = case unsafeCoerce Refl :: V :~: True of Refl -> k
queryV :: Maybe (Dict HasV)
queryV = case sV of STrue -> unsafeAssumeV (Just Dict); SFalse -> Nothing
{-# NOINLINE queryV #-}
unsafeAssumeZba :: (HasZba => a) -> a
unsafeAssumeZba k = case unsafeCoerce Refl :: Zba :~: True of Refl -> k
queryZba :: Maybe (Dict HasZba)
queryZba = case sZba of STrue -> unsafeAssumeZba (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZba #-}
unsafeAssumeZbb :: (HasZbb => a) -> a
unsafeAssumeZbb k = case unsafeCoerce Refl :: Zbb :~: True of Refl -> k
queryZbb :: Maybe (Dict HasZbb)
queryZbb = case sZbb of STrue -> unsafeAssumeZbb (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZbb #-}
unsafeAssumeZbs :: (HasZbs => a) -> a
unsafeAssumeZbs k = case unsafeCoerce Refl :: Zbs :~: True of Refl -> k
queryZbs :: Maybe (Dict HasZbs)
queryZbs = case sZbs of STrue -> unsafeAssumeZbs (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZbs #-}
unsafeAssumeZicboz :: (HasZicboz => a) -> a
unsafeAssumeZicboz k = case unsafeCoerce Refl :: Zicboz :~: True of Refl -> k
queryZicboz :: Maybe (Dict HasZicboz)
queryZicboz = case sZicboz of STrue -> unsafeAssumeZicboz (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZicboz #-}
unsafeAssumeZbc :: (HasZbc => a) -> a
unsafeAssumeZbc k = case unsafeCoerce Refl :: Zbc :~: True of Refl -> k
queryZbc :: Maybe (Dict HasZbc)
queryZbc = case sZbc of STrue -> unsafeAssumeZbc (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZbc #-}
unsafeAssumeZbkb :: (HasZbkb => a) -> a
unsafeAssumeZbkb k = case unsafeCoerce Refl :: Zbkb :~: True of Refl -> k
queryZbkb :: Maybe (Dict HasZbkb)
queryZbkb = case sZbkb of STrue -> unsafeAssumeZbkb (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZbkb #-}
unsafeAssumeZbkc :: (HasZbkc => a) -> a
unsafeAssumeZbkc k = case unsafeCoerce Refl :: Zbkc :~: True of Refl -> k
queryZbkc :: Maybe (Dict HasZbkc)
queryZbkc = case sZbkc of STrue -> unsafeAssumeZbkc (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZbkc #-}
unsafeAssumeZbkx :: (HasZbkx => a) -> a
unsafeAssumeZbkx k = case unsafeCoerce Refl :: Zbkx :~: True of Refl -> k
queryZbkx :: Maybe (Dict HasZbkx)
queryZbkx = case sZbkx of STrue -> unsafeAssumeZbkx (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZbkx #-}
unsafeAssumeZknd :: (HasZknd => a) -> a
unsafeAssumeZknd k = case unsafeCoerce Refl :: Zknd :~: True of Refl -> k
queryZknd :: Maybe (Dict HasZknd)
queryZknd = case sZknd of STrue -> unsafeAssumeZknd (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZknd #-}
unsafeAssumeZkne :: (HasZkne => a) -> a
unsafeAssumeZkne k = case unsafeCoerce Refl :: Zkne :~: True of Refl -> k
queryZkne :: Maybe (Dict HasZkne)
queryZkne = case sZkne of STrue -> unsafeAssumeZkne (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZkne #-}
unsafeAssumeZknh :: (HasZknh => a) -> a
unsafeAssumeZknh k = case unsafeCoerce Refl :: Zknh :~: True of Refl -> k
queryZknh :: Maybe (Dict HasZknh)
queryZknh = case sZknh of STrue -> unsafeAssumeZknh (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZknh #-}
unsafeAssumeZksed :: (HasZksed => a) -> a
unsafeAssumeZksed k = case unsafeCoerce Refl :: Zksed :~: True of Refl -> k
queryZksed :: Maybe (Dict HasZksed)
queryZksed = case sZksed of STrue -> unsafeAssumeZksed (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZksed #-}
unsafeAssumeZksh :: (HasZksh => a) -> a
unsafeAssumeZksh k = case unsafeCoerce Refl :: Zksh :~: True of Refl -> k
queryZksh :: Maybe (Dict HasZksh)
queryZksh = case sZksh of STrue -> unsafeAssumeZksh (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZksh #-}
unsafeAssumeZkt :: (HasZkt => a) -> a
unsafeAssumeZkt k = case unsafeCoerce Refl :: Zkt :~: True of Refl -> k
queryZkt :: Maybe (Dict HasZkt)
queryZkt = case sZkt of STrue -> unsafeAssumeZkt (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZkt #-}
unsafeAssumeZvbb :: (HasZvbb => a) -> a
unsafeAssumeZvbb k = case unsafeCoerce Refl :: Zvbb :~: True of Refl -> k
queryZvbb :: Maybe (Dict HasZvbb)
queryZvbb = case sZvbb of STrue -> unsafeAssumeZvbb (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvbb #-}
unsafeAssumeZvbc :: (HasZvbc => a) -> a
unsafeAssumeZvbc k = case unsafeCoerce Refl :: Zvbc :~: True of Refl -> k
queryZvbc :: Maybe (Dict HasZvbc)
queryZvbc = case sZvbc of STrue -> unsafeAssumeZvbc (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvbc #-}
unsafeAssumeZvkb :: (HasZvkb => a) -> a
unsafeAssumeZvkb k = case unsafeCoerce Refl :: Zvkb :~: True of Refl -> k
queryZvkb :: Maybe (Dict HasZvkb)
queryZvkb = case sZvkb of STrue -> unsafeAssumeZvkb (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvkb #-}
unsafeAssumeZvkg :: (HasZvkg => a) -> a
unsafeAssumeZvkg k = case unsafeCoerce Refl :: Zvkg :~: True of Refl -> k
queryZvkg :: Maybe (Dict HasZvkg)
queryZvkg = case sZvkg of STrue -> unsafeAssumeZvkg (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvkg #-}
unsafeAssumeZvkned :: (HasZvkned => a) -> a
unsafeAssumeZvkned k = case unsafeCoerce Refl :: Zvkned :~: True of Refl -> k
queryZvkned :: Maybe (Dict HasZvkned)
queryZvkned = case sZvkned of STrue -> unsafeAssumeZvkned (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvkned #-}
unsafeAssumeZvknha :: (HasZvknha => a) -> a
unsafeAssumeZvknha k = case unsafeCoerce Refl :: Zvknha :~: True of Refl -> k
queryZvknha :: Maybe (Dict HasZvknha)
queryZvknha = case sZvknha of STrue -> unsafeAssumeZvknha (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvknha #-}
unsafeAssumeZvknhb :: (HasZvknhb => a) -> a
unsafeAssumeZvknhb k = case unsafeCoerce Refl :: Zvknhb :~: True of Refl -> k
queryZvknhb :: Maybe (Dict HasZvknhb)
queryZvknhb = case sZvknhb of STrue -> unsafeAssumeZvknhb (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvknhb #-}
unsafeAssumeZvksed :: (HasZvksed => a) -> a
unsafeAssumeZvksed k = case unsafeCoerce Refl :: Zvksed :~: True of Refl -> k
queryZvksed :: Maybe (Dict HasZvksed)
queryZvksed = case sZvksed of STrue -> unsafeAssumeZvksed (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvksed #-}
unsafeAssumeZvksh :: (HasZvksh => a) -> a
unsafeAssumeZvksh k = case unsafeCoerce Refl :: Zvksh :~: True of Refl -> k
queryZvksh :: Maybe (Dict HasZvksh)
queryZvksh = case sZvksh of STrue -> unsafeAssumeZvksh (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvksh #-}
unsafeAssumeZvkt :: (HasZvkt => a) -> a
unsafeAssumeZvkt k = case unsafeCoerce Refl :: Zvkt :~: True of Refl -> k
queryZvkt :: Maybe (Dict HasZvkt)
queryZvkt = case sZvkt of STrue -> unsafeAssumeZvkt (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvkt #-}
unsafeAssumeZfh :: (HasZfh => a) -> a
unsafeAssumeZfh k = case unsafeCoerce Refl :: Zfh :~: True of Refl -> k
queryZfh :: Maybe (Dict HasZfh)
queryZfh = case sZfh of STrue -> unsafeAssumeZfh (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZfh #-}
unsafeAssumeZfhmin :: (HasZfhmin => a) -> a
unsafeAssumeZfhmin k = case unsafeCoerce Refl :: Zfhmin :~: True of Refl -> k
queryZfhmin :: Maybe (Dict HasZfhmin)
queryZfhmin = case sZfhmin of STrue -> unsafeAssumeZfhmin (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZfhmin #-}
unsafeAssumeZihintntl :: (HasZihintntl => a) -> a
unsafeAssumeZihintntl k = case unsafeCoerce Refl :: Zihintntl :~: True of Refl -> k
queryZihintntl :: Maybe (Dict HasZihintntl)
queryZihintntl = case sZihintntl of STrue -> unsafeAssumeZihintntl (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZihintntl #-}
unsafeAssumeZvfh :: (HasZvfh => a) -> a
unsafeAssumeZvfh k = case unsafeCoerce Refl :: Zvfh :~: True of Refl -> k
queryZvfh :: Maybe (Dict HasZvfh)
queryZvfh = case sZvfh of STrue -> unsafeAssumeZvfh (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvfh #-}
unsafeAssumeZvfhmin :: (HasZvfhmin => a) -> a
unsafeAssumeZvfhmin k = case unsafeCoerce Refl :: Zvfhmin :~: True of Refl -> k
queryZvfhmin :: Maybe (Dict HasZvfhmin)
queryZvfhmin = case sZvfhmin of STrue -> unsafeAssumeZvfhmin (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvfhmin #-}
unsafeAssumeZfa :: (HasZfa => a) -> a
unsafeAssumeZfa k = case unsafeCoerce Refl :: Zfa :~: True of Refl -> k
queryZfa :: Maybe (Dict HasZfa)
queryZfa = case sZfa of STrue -> unsafeAssumeZfa (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZfa #-}
unsafeAssumeZtso :: (HasZtso => a) -> a
unsafeAssumeZtso k = case unsafeCoerce Refl :: Ztso :~: True of Refl -> k
queryZtso :: Maybe (Dict HasZtso)
queryZtso = case sZtso of STrue -> unsafeAssumeZtso (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZtso #-}
unsafeAssumeZacas :: (HasZacas => a) -> a
unsafeAssumeZacas k = case unsafeCoerce Refl :: Zacas :~: True of Refl -> k
queryZacas :: Maybe (Dict HasZacas)
queryZacas = case sZacas of STrue -> unsafeAssumeZacas (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZacas #-}
unsafeAssumeZicntr :: (HasZicntr => a) -> a
unsafeAssumeZicntr k = case unsafeCoerce Refl :: Zicntr :~: True of Refl -> k
queryZicntr :: Maybe (Dict HasZicntr)
queryZicntr = case sZicntr of STrue -> unsafeAssumeZicntr (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZicntr #-}
unsafeAssumeZicond :: (HasZicond => a) -> a
unsafeAssumeZicond k = case unsafeCoerce Refl :: Zicond :~: True of Refl -> k
queryZicond :: Maybe (Dict HasZicond)
queryZicond = case sZicond of STrue -> unsafeAssumeZicond (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZicond #-}
unsafeAssumeZihintpause :: (HasZihintpause => a) -> a
unsafeAssumeZihintpause k = case unsafeCoerce Refl :: Zihintpause :~: True of Refl -> k
queryZihintpause :: Maybe (Dict HasZihintpause)
queryZihintpause = case sZihintpause of STrue -> unsafeAssumeZihintpause (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZihintpause #-}
unsafeAssumeZihpm :: (HasZihpm => a) -> a
unsafeAssumeZihpm k = case unsafeCoerce Refl :: Zihpm :~: True of Refl -> k
queryZihpm :: Maybe (Dict HasZihpm)
queryZihpm = case sZihpm of STrue -> unsafeAssumeZihpm (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZihpm #-}
unsafeAssumeZve32x :: (HasZve32x => a) -> a
unsafeAssumeZve32x k = case unsafeCoerce Refl :: Zve32x :~: True of Refl -> k
queryZve32x :: Maybe (Dict HasZve32x)
queryZve32x = case sZve32x of STrue -> unsafeAssumeZve32x (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZve32x #-}
unsafeAssumeZve32f :: (HasZve32f => a) -> a
unsafeAssumeZve32f k = case unsafeCoerce Refl :: Zve32f :~: True of Refl -> k
queryZve32f :: Maybe (Dict HasZve32f)
queryZve32f = case sZve32f of STrue -> unsafeAssumeZve32f (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZve32f #-}
unsafeAssumeZve64x :: (HasZve64x => a) -> a
unsafeAssumeZve64x k = case unsafeCoerce Refl :: Zve64x :~: True of Refl -> k
queryZve64x :: Maybe (Dict HasZve64x)
queryZve64x = case sZve64x of STrue -> unsafeAssumeZve64x (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZve64x #-}
unsafeAssumeZve64f :: (HasZve64f => a) -> a
unsafeAssumeZve64f k = case unsafeCoerce Refl :: Zve64f :~: True of Refl -> k
queryZve64f :: Maybe (Dict HasZve64f)
queryZve64f = case sZve64f of STrue -> unsafeAssumeZve64f (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZve64f #-}
unsafeAssumeZve64d :: (HasZve64d => a) -> a
unsafeAssumeZve64d k = case unsafeCoerce Refl :: Zve64d :~: True of Refl -> k
queryZve64d :: Maybe (Dict HasZve64d)
queryZve64d = case sZve64d of STrue -> unsafeAssumeZve64d (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZve64d #-}
unsafeAssumeZimop :: (HasZimop => a) -> a
unsafeAssumeZimop k = case unsafeCoerce Refl :: Zimop :~: True of Refl -> k
queryZimop :: Maybe (Dict HasZimop)
queryZimop = case sZimop of STrue -> unsafeAssumeZimop (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZimop #-}
unsafeAssumeZca :: (HasZca => a) -> a
unsafeAssumeZca k = case unsafeCoerce Refl :: Zca :~: True of Refl -> k
queryZca :: Maybe (Dict HasZca)
queryZca = case sZca of STrue -> unsafeAssumeZca (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZca #-}
unsafeAssumeZcb :: (HasZcb => a) -> a
unsafeAssumeZcb k = case unsafeCoerce Refl :: Zcb :~: True of Refl -> k
queryZcb :: Maybe (Dict HasZcb)
queryZcb = case sZcb of STrue -> unsafeAssumeZcb (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZcb #-}
unsafeAssumeZcd :: (HasZcd => a) -> a
unsafeAssumeZcd k = case unsafeCoerce Refl :: Zcd :~: True of Refl -> k
queryZcd :: Maybe (Dict HasZcd)
queryZcd = case sZcd of STrue -> unsafeAssumeZcd (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZcd #-}
unsafeAssumeZcf :: (HasZcf => a) -> a
unsafeAssumeZcf k = case unsafeCoerce Refl :: Zcf :~: True of Refl -> k
queryZcf :: Maybe (Dict HasZcf)
queryZcf = case sZcf of STrue -> unsafeAssumeZcf (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZcf #-}
unsafeAssumeZcmop :: (HasZcmop => a) -> a
unsafeAssumeZcmop k = case unsafeCoerce Refl :: Zcmop :~: True of Refl -> k
queryZcmop :: Maybe (Dict HasZcmop)
queryZcmop = case sZcmop of STrue -> unsafeAssumeZcmop (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZcmop #-}
unsafeAssumeZawrs :: (HasZawrs => a) -> a
unsafeAssumeZawrs k = case unsafeCoerce Refl :: Zawrs :~: True of Refl -> k
queryZawrs :: Maybe (Dict HasZawrs)
queryZawrs = case sZawrs of STrue -> unsafeAssumeZawrs (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZawrs #-}
unsafeAssumeZaamo :: (HasZaamo => a) -> a
unsafeAssumeZaamo k = case unsafeCoerce Refl :: Zaamo :~: True of Refl -> k
queryZaamo :: Maybe (Dict HasZaamo)
queryZaamo = case sZaamo of STrue -> unsafeAssumeZaamo (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZaamo #-}
unsafeAssumeZalrsc :: (HasZalrsc => a) -> a
unsafeAssumeZalrsc k = case unsafeCoerce Refl :: Zalrsc :~: True of Refl -> k
queryZalrsc :: Maybe (Dict HasZalrsc)
queryZalrsc = case sZalrsc of STrue -> unsafeAssumeZalrsc (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZalrsc #-}
unsafeAssumeSupm :: (HasSupm => a) -> a
unsafeAssumeSupm k = case unsafeCoerce Refl :: Supm :~: True of Refl -> k
querySupm :: Maybe (Dict HasSupm)
querySupm = case sSupm of STrue -> unsafeAssumeSupm (Just Dict); SFalse -> Nothing
{-# NOINLINE querySupm #-}
unsafeAssumeZfbfmin :: (HasZfbfmin => a) -> a
unsafeAssumeZfbfmin k = case unsafeCoerce Refl :: Zfbfmin :~: True of Refl -> k
queryZfbfmin :: Maybe (Dict HasZfbfmin)
queryZfbfmin = case sZfbfmin of STrue -> unsafeAssumeZfbfmin (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZfbfmin #-}
unsafeAssumeZvfbfmin :: (HasZvfbfmin => a) -> a
unsafeAssumeZvfbfmin k = case unsafeCoerce Refl :: Zvfbfmin :~: True of Refl -> k
queryZvfbfmin :: Maybe (Dict HasZvfbfmin)
queryZvfbfmin = case sZvfbfmin of STrue -> unsafeAssumeZvfbfmin (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvfbfmin #-}
unsafeAssumeZvfbfwma :: (HasZvfbfwma => a) -> a
unsafeAssumeZvfbfwma k = case unsafeCoerce Refl :: Zvfbfwma :~: True of Refl -> k
queryZvfbfwma :: Maybe (Dict HasZvfbfwma)
queryZvfbfwma = case sZvfbfwma of STrue -> unsafeAssumeZvfbfwma (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZvfbfwma #-}
unsafeAssumeZicbom :: (HasZicbom => a) -> a
unsafeAssumeZicbom k = case unsafeCoerce Refl :: Zicbom :~: True of Refl -> k
queryZicbom :: Maybe (Dict HasZicbom)
queryZicbom = case sZicbom of STrue -> unsafeAssumeZicbom (Just Dict); SFalse -> Nothing
{-# NOINLINE queryZicbom #-}