{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.SVGNumberList
(clear, initialize, initialize_, getItem, getItem_,
insertItemBefore, insertItemBefore_, replaceItem, replaceItem_,
removeItem, removeItem_, appendItem, appendItem_, getNumberOfItems,
SVGNumberList(..), gTypeSVGNumberList)
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
clear :: (MonadDOM m) => SVGNumberList -> m ()
clear :: forall (m :: * -> *). MonadDOM m => SVGNumberList -> m ()
clear SVGNumberList
self = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"clear" ()))
initialize ::
(MonadDOM m) => SVGNumberList -> SVGNumber -> m SVGNumber
initialize :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> m SVGNumber
initialize SVGNumberList
self SVGNumber
item
= DOM SVGNumber -> m SVGNumber
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"initialize" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item]) JSM JSVal -> (JSVal -> DOM SVGNumber) -> DOM SVGNumber
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM SVGNumber
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
initialize_ :: (MonadDOM m) => SVGNumberList -> SVGNumber -> m ()
initialize_ :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> m ()
initialize_ SVGNumberList
self SVGNumber
item
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"initialize" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item]))
getItem :: (MonadDOM m) => SVGNumberList -> Word -> m SVGNumber
getItem :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> Word -> m SVGNumber
getItem SVGNumberList
self Word
index
= DOM SVGNumber -> m SVGNumber
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"getItem" [Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]) JSM JSVal -> (JSVal -> DOM SVGNumber) -> DOM SVGNumber
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM SVGNumber
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
getItem_ :: (MonadDOM m) => SVGNumberList -> Word -> m ()
getItem_ :: forall (m :: * -> *). MonadDOM m => SVGNumberList -> Word -> m ()
getItem_ SVGNumberList
self Word
index
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"getItem" [Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]))
insertItemBefore ::
(MonadDOM m) => SVGNumberList -> SVGNumber -> Word -> m SVGNumber
insertItemBefore :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> Word -> m SVGNumber
insertItemBefore SVGNumberList
self SVGNumber
item Word
index
= DOM SVGNumber -> m SVGNumber
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"insertItemBefore" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item, Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]) JSM JSVal -> (JSVal -> DOM SVGNumber) -> DOM SVGNumber
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
JSVal -> DOM SVGNumber
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
insertItemBefore_ ::
(MonadDOM m) => SVGNumberList -> SVGNumber -> Word -> m ()
insertItemBefore_ :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> Word -> m ()
insertItemBefore_ SVGNumberList
self SVGNumber
item Word
index
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
(SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"insertItemBefore" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item, Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]))
replaceItem ::
(MonadDOM m) => SVGNumberList -> SVGNumber -> Word -> m SVGNumber
replaceItem :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> Word -> m SVGNumber
replaceItem SVGNumberList
self SVGNumber
item Word
index
= DOM SVGNumber -> m SVGNumber
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"replaceItem" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item, Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]) JSM JSVal -> (JSVal -> DOM SVGNumber) -> DOM SVGNumber
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
JSVal -> DOM SVGNumber
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
replaceItem_ ::
(MonadDOM m) => SVGNumberList -> SVGNumber -> Word -> m ()
replaceItem_ :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> Word -> m ()
replaceItem_ SVGNumberList
self SVGNumber
item Word
index
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"replaceItem" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item, Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]))
removeItem :: (MonadDOM m) => SVGNumberList -> Word -> m SVGNumber
removeItem :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> Word -> m SVGNumber
removeItem SVGNumberList
self Word
index
= DOM SVGNumber -> m SVGNumber
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"removeItem" [Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]) JSM JSVal -> (JSVal -> DOM SVGNumber) -> DOM SVGNumber
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM SVGNumber
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
removeItem_ :: (MonadDOM m) => SVGNumberList -> Word -> m ()
removeItem_ :: forall (m :: * -> *). MonadDOM m => SVGNumberList -> Word -> m ()
removeItem_ SVGNumberList
self Word
index
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"removeItem" [Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]))
appendItem ::
(MonadDOM m) => SVGNumberList -> SVGNumber -> m SVGNumber
appendItem :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> m SVGNumber
appendItem SVGNumberList
self SVGNumber
item
= DOM SVGNumber -> m SVGNumber
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"appendItem" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item]) JSM JSVal -> (JSVal -> DOM SVGNumber) -> DOM SVGNumber
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM SVGNumber
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
appendItem_ :: (MonadDOM m) => SVGNumberList -> SVGNumber -> m ()
appendItem_ :: forall (m :: * -> *).
MonadDOM m =>
SVGNumberList -> SVGNumber -> m ()
appendItem_ SVGNumberList
self SVGNumber
item
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"appendItem" [SVGNumber -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal SVGNumber
item]))
getNumberOfItems :: (MonadDOM m) => SVGNumberList -> m Word
getNumberOfItems :: forall (m :: * -> *). MonadDOM m => SVGNumberList -> m Word
getNumberOfItems SVGNumberList
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ((SVGNumberList
self SVGNumberList
-> Getting (JSM JSVal) SVGNumberList (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter SVGNumberList (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"numberOfItems") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))