-- GENERATED by C->Haskell Compiler, version 0.13.13 (gtk2hs branch) "Bin IO", 27 May 2012 (Haskell)
-- Edit the ORIGNAL .chs file instead!


{-# LINE 1 "./Graphics/UI/Gtk/WebKit/DOM/CSSRuleList.chs" #-}
module Graphics.UI.Gtk.WebKit.DOM.CSSRuleList(
item,
getLength,
CSSRuleList,
castToCSSRuleList,
gTypeCSSRuleList,
CSSRuleListClass,
toCSSRuleList,
) where
import Prelude hiding (drop, error, print)
import Data.Typeable (Typeable)
import Foreign.Marshal (maybePeek, maybeWith)
import System.Glib.FFI (maybeNull, withForeignPtr, nullForeignPtr, Ptr, nullPtr, castPtr, Word, Int64, Word64, CChar(..), CInt(..), CUInt(..), CLong(..), CULong(..), CLLong(..), CULLong(..), CShort(..), CUShort(..), CFloat(..), CDouble(..), toBool, fromBool)
import System.Glib.UTFString (GlibString(..), readUTFString)
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Monad.IO.Class (MonadIO(..))
import System.Glib.GError
import Graphics.UI.Gtk.WebKit.DOM.EventTargetClosures
import Graphics.UI.Gtk.WebKit.DOM.EventM
import Graphics.UI.Gtk.WebKit.Types
{-# LINE 21 "./Graphics/UI/Gtk/WebKit/DOM/CSSRuleList.chs" #-}
import Graphics.UI.Gtk.WebKit.DOM.Enums

 
item ::
     (MonadIO m, CSSRuleListClass self) =>
       self -> Word -> m (Maybe CSSRule)
item self index
  = liftIO
      (maybeNull (makeNewGObject mkCSSRule)
         ((\(CSSRuleList arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_css_rule_list_item argPtr1 arg2) (toCSSRuleList self)
            (fromIntegral index)))
 
getLength :: (MonadIO m, CSSRuleListClass self) => self -> m Word
getLength self
  = liftIO
      (fromIntegral <$>
         ((\(CSSRuleList arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_css_rule_list_get_length argPtr1)
{-# LINE 38 "./Graphics/UI/Gtk/WebKit/DOM/CSSRuleList.chs" #-}
            (toCSSRuleList self)))

foreign import ccall safe "webkit_dom_css_rule_list_item"
  webkit_dom_css_rule_list_item :: ((Ptr CSSRuleList) -> (CULong -> (IO (Ptr CSSRule))))

foreign import ccall safe "webkit_dom_css_rule_list_get_length"
  webkit_dom_css_rule_list_get_length :: ((Ptr CSSRuleList) -> (IO CULong))