{-# LANGUAGE PatternSynonyms #-} -- For HasCallStack compatibility {-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} module JSDOM.Generated.HTMLAllCollection (item, item_, itemUnsafe, itemUnchecked, namedItem, namedItem_, namedItemUnsafe, namedItemUnchecked, getLength, HTMLAllCollection(..), gTypeHTMLAllCollection) 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 -- | item :: (MonadDOM m) => HTMLAllCollection -> Word -> m (Maybe Element) item self index = liftDOM ((self ^. jsf "item" [toJSVal index]) >>= fromJSVal) -- | item_ :: (MonadDOM m) => HTMLAllCollection -> Word -> m () item_ self index = liftDOM (void (self ^. jsf "item" [toJSVal index])) -- | itemUnsafe :: (MonadDOM m, HasCallStack) => HTMLAllCollection -> Word -> m Element itemUnsafe self index = liftDOM (((self ^. jsf "item" [toJSVal index]) >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | itemUnchecked :: (MonadDOM m) => HTMLAllCollection -> Word -> m Element itemUnchecked self index = liftDOM ((self ^. jsf "item" [toJSVal index]) >>= fromJSValUnchecked) -- | namedItem :: (MonadDOM m, ToJSString name) => HTMLAllCollection -> name -> m (Maybe HTMLCollectionOrElement) namedItem self name = liftDOM ((self ! name) >>= fromJSVal) -- | namedItem_ :: (MonadDOM m, ToJSString name) => HTMLAllCollection -> name -> m () namedItem_ self name = liftDOM (void (self ! name)) -- | namedItemUnsafe :: (MonadDOM m, ToJSString name, HasCallStack) => HTMLAllCollection -> name -> m HTMLCollectionOrElement namedItemUnsafe self name = liftDOM (((self ! name) >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | namedItemUnchecked :: (MonadDOM m, ToJSString name) => HTMLAllCollection -> name -> m HTMLCollectionOrElement namedItemUnchecked self name = liftDOM ((self ! name) >>= fromJSValUnchecked) -- | getLength :: (MonadDOM m) => HTMLAllCollection -> m Word getLength self = liftDOM (round <$> ((self ^. js "length") >>= valToNumber))