{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.SQLStatementCallback
(newSQLStatementCallback, newSQLStatementCallbackSync,
newSQLStatementCallbackAsync, SQLStatementCallback)
where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..))
import qualified Prelude (error)
import Data.Typeable (Typeable)
import Data.Traversable (mapM)
import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, asyncFunction, new, array, jsUndefined, (!), (!!))
import Data.Int (Int64)
import Data.Word (Word, Word64)
import JSDOM.Types
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Enums
newSQLStatementCallback ::
(MonadDOM m) =>
(SQLTransaction -> SQLResultSet -> JSM ()) ->
m SQLStatementCallback
newSQLStatementCallback :: (SQLTransaction -> SQLResultSet -> JSM ())
-> m SQLStatementCallback
newSQLStatementCallback SQLTransaction -> SQLResultSet -> JSM ()
callback
= DOM SQLStatementCallback -> m SQLStatementCallback
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(Callback (JSVal -> JSVal -> IO ()) -> SQLStatementCallback
SQLStatementCallback (Callback (JSVal -> JSVal -> IO ()) -> SQLStatementCallback)
-> (Function -> Callback (JSVal -> JSVal -> IO ()))
-> Function
-> SQLStatementCallback
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Function -> Callback (JSVal -> JSVal -> IO ())
forall a. Function -> Callback a
Callback (Function -> SQLStatementCallback)
-> JSM Function -> DOM SQLStatementCallback
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
JSCallAsFunction -> JSM Function
function
(\ JSVal
_ JSVal
_ [JSVal
transaction, JSVal
resultSet] ->
JSVal -> JSM SQLResultSet
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked JSVal
resultSet JSM SQLResultSet -> (SQLResultSet -> JSM ()) -> JSM ()
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
\ SQLResultSet
resultSet' ->
JSVal -> JSM SQLTransaction
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked JSVal
transaction JSM SQLTransaction -> (SQLTransaction -> JSM ()) -> JSM ()
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
\ SQLTransaction
transaction' -> SQLTransaction -> SQLResultSet -> JSM ()
callback SQLTransaction
transaction'
SQLResultSet
resultSet'))
newSQLStatementCallbackSync ::
(MonadDOM m) =>
(SQLTransaction -> SQLResultSet -> JSM ()) ->
m SQLStatementCallback
newSQLStatementCallbackSync :: (SQLTransaction -> SQLResultSet -> JSM ())
-> m SQLStatementCallback
newSQLStatementCallbackSync SQLTransaction -> SQLResultSet -> JSM ()
callback
= DOM SQLStatementCallback -> m SQLStatementCallback
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(Callback (JSVal -> JSVal -> IO ()) -> SQLStatementCallback
SQLStatementCallback (Callback (JSVal -> JSVal -> IO ()) -> SQLStatementCallback)
-> (Function -> Callback (JSVal -> JSVal -> IO ()))
-> Function
-> SQLStatementCallback
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Function -> Callback (JSVal -> JSVal -> IO ())
forall a. Function -> Callback a
Callback (Function -> SQLStatementCallback)
-> JSM Function -> DOM SQLStatementCallback
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
JSCallAsFunction -> JSM Function
function
(\ JSVal
_ JSVal
_ [JSVal
transaction, JSVal
resultSet] ->
JSVal -> JSM SQLResultSet
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked JSVal
resultSet JSM SQLResultSet -> (SQLResultSet -> JSM ()) -> JSM ()
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
\ SQLResultSet
resultSet' ->
JSVal -> JSM SQLTransaction
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked JSVal
transaction JSM SQLTransaction -> (SQLTransaction -> JSM ()) -> JSM ()
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
\ SQLTransaction
transaction' -> SQLTransaction -> SQLResultSet -> JSM ()
callback SQLTransaction
transaction'
SQLResultSet
resultSet'))
newSQLStatementCallbackAsync ::
(MonadDOM m) =>
(SQLTransaction -> SQLResultSet -> JSM ()) ->
m SQLStatementCallback
newSQLStatementCallbackAsync :: (SQLTransaction -> SQLResultSet -> JSM ())
-> m SQLStatementCallback
newSQLStatementCallbackAsync SQLTransaction -> SQLResultSet -> JSM ()
callback
= DOM SQLStatementCallback -> m SQLStatementCallback
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(Callback (JSVal -> JSVal -> IO ()) -> SQLStatementCallback
SQLStatementCallback (Callback (JSVal -> JSVal -> IO ()) -> SQLStatementCallback)
-> (Function -> Callback (JSVal -> JSVal -> IO ()))
-> Function
-> SQLStatementCallback
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Function -> Callback (JSVal -> JSVal -> IO ())
forall a. Function -> Callback a
Callback (Function -> SQLStatementCallback)
-> JSM Function -> DOM SQLStatementCallback
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
JSCallAsFunction -> JSM Function
asyncFunction
(\ JSVal
_ JSVal
_ [JSVal
transaction, JSVal
resultSet] ->
JSVal -> JSM SQLResultSet
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked JSVal
resultSet JSM SQLResultSet -> (SQLResultSet -> JSM ()) -> JSM ()
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
\ SQLResultSet
resultSet' ->
JSVal -> JSM SQLTransaction
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked JSVal
transaction JSM SQLTransaction -> (SQLTransaction -> JSM ()) -> JSM ()
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
\ SQLTransaction
transaction' -> SQLTransaction -> SQLResultSet -> JSM ()
callback SQLTransaction
transaction'
SQLResultSet
resultSet'))