Я хочу использовать пакет vector
для хранения распакованных массивов StablePtr a
Как я могу использовать следующее (или его варианты):
ptr2Int :: Ptr a -> Int
ptr2Int (Ptr a) = I# (addr2Int# a)
stablePtrToInt :: StablePtr a -> Int
stablePtrToInt = ptr2Int . castStablePtrToPtr
intToStablePtr :: Int -> StablePtr a
intToStablePtr (I# i) = castPtrToStablePtr $ Ptr (int2Addr# i)
для объявления Unbox
экземпляра для StablePtr a
?