ghcjs-base-stub-0.1.0.1: src/JavaScript/Cast.hs
{-# OPTIONS_GHC -Wno-redundant-constraints #-}
{-# LANGUAGE ScopedTypeVariables, ForeignFunctionInterface, JavaScriptFFI #-}
module JavaScript.Cast ( Cast(..)
, cast
, unsafeCast
) where
import GHCJS.Prim
import Unsafe.Coerce
cast :: forall a. Cast a => JSVal -> Maybe a
cast _ = Nothing
{-# INLINE cast #-}
-- | Don't ever run this in GHC - guaranteed segfault
unsafeCast :: Cast a => JSVal -> a
unsafeCast = unsafeCoerce
{-# INLINE unsafeCast #-}
class Cast a where
unsafeWrap :: JSVal -> a
instanceRef :: a -> JSVal