{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc) /No description available in the introspection data./ -} #define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \ && !defined(__HADDOCK_VERSION__)) module GI.Soup.Objects.RequestFile ( -- * Exported types RequestFile(..) , IsRequestFile , toRequestFile , noRequestFile , -- * Methods -- ** getFile #method:getFile# #if ENABLE_OVERLOADING RequestFileGetFileMethodInfo , #endif requestFileGetFile , ) where import Data.GI.Base.ShortPrelude import qualified Data.GI.Base.ShortPrelude as SP import qualified Data.GI.Base.Overloading as O import qualified Prelude as P import qualified Data.GI.Base.Attributes as GI.Attributes import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr import qualified Data.GI.Base.GClosure as B.GClosure import qualified Data.GI.Base.GError as B.GError import qualified Data.GI.Base.GVariant as B.GVariant import qualified Data.GI.Base.GValue as B.GValue import qualified Data.GI.Base.GParamSpec as B.GParamSpec import qualified Data.GI.Base.CallStack as B.CallStack import qualified Data.GI.Base.Properties as B.Properties import qualified Data.Text as T import qualified Data.ByteString.Char8 as B import qualified Data.Map as Map import qualified Foreign.Ptr as FP import qualified GHC.OverloadedLabels as OL import qualified GI.GObject.Objects.Object as GObject.Object import qualified GI.Gio.Interfaces.File as Gio.File import qualified GI.Gio.Interfaces.Initable as Gio.Initable import {-# SOURCE #-} qualified GI.Soup.Objects.Request as Soup.Request -- | Memory-managed wrapper type. newtype RequestFile = RequestFile (ManagedPtr RequestFile) foreign import ccall "soup_request_file_get_type" c_soup_request_file_get_type :: IO GType instance GObject RequestFile where gobjectType = c_soup_request_file_get_type -- | Type class for types which can be safely cast to `RequestFile`, for instance with `toRequestFile`. class (GObject o, O.IsDescendantOf RequestFile o) => IsRequestFile o instance (GObject o, O.IsDescendantOf RequestFile o) => IsRequestFile o instance O.HasParentTypes RequestFile type instance O.ParentTypes RequestFile = '[Soup.Request.Request, GObject.Object.Object, Gio.Initable.Initable] -- | Cast to `RequestFile`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`. toRequestFile :: (MonadIO m, IsRequestFile o) => o -> m RequestFile toRequestFile = liftIO . unsafeCastTo RequestFile -- | A convenience alias for `Nothing` :: `Maybe` `RequestFile`. noRequestFile :: Maybe RequestFile noRequestFile = Nothing #if ENABLE_OVERLOADING type family ResolveRequestFileMethod (t :: Symbol) (o :: *) :: * where ResolveRequestFileMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo ResolveRequestFileMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo ResolveRequestFileMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo ResolveRequestFileMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo ResolveRequestFileMethod "getv" o = GObject.Object.ObjectGetvMethodInfo ResolveRequestFileMethod "init" o = Gio.Initable.InitableInitMethodInfo ResolveRequestFileMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo ResolveRequestFileMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo ResolveRequestFileMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo ResolveRequestFileMethod "ref" o = GObject.Object.ObjectRefMethodInfo ResolveRequestFileMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo ResolveRequestFileMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo ResolveRequestFileMethod "send" o = Soup.Request.RequestSendMethodInfo ResolveRequestFileMethod "sendAsync" o = Soup.Request.RequestSendAsyncMethodInfo ResolveRequestFileMethod "sendFinish" o = Soup.Request.RequestSendFinishMethodInfo ResolveRequestFileMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo ResolveRequestFileMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo ResolveRequestFileMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo ResolveRequestFileMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo ResolveRequestFileMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo ResolveRequestFileMethod "getContentLength" o = Soup.Request.RequestGetContentLengthMethodInfo ResolveRequestFileMethod "getContentType" o = Soup.Request.RequestGetContentTypeMethodInfo ResolveRequestFileMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo ResolveRequestFileMethod "getFile" o = RequestFileGetFileMethodInfo ResolveRequestFileMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo ResolveRequestFileMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo ResolveRequestFileMethod "getSession" o = Soup.Request.RequestGetSessionMethodInfo ResolveRequestFileMethod "getUri" o = Soup.Request.RequestGetUriMethodInfo ResolveRequestFileMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo ResolveRequestFileMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo ResolveRequestFileMethod l o = O.MethodResolutionFailed l o instance (info ~ ResolveRequestFileMethod t RequestFile, O.MethodInfo info RequestFile p) => OL.IsLabel t (RequestFile -> p) where #if MIN_VERSION_base(4,10,0) fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info) #else fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info) #endif #endif #if ENABLE_OVERLOADING instance O.HasAttributeList RequestFile type instance O.AttributeList RequestFile = RequestFileAttributeList type RequestFileAttributeList = ('[ '("session", Soup.Request.RequestSessionPropertyInfo), '("uri", Soup.Request.RequestUriPropertyInfo)] :: [(Symbol, *)]) #endif #if ENABLE_OVERLOADING #endif #if ENABLE_OVERLOADING type instance O.SignalList RequestFile = RequestFileSignalList type RequestFileSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)]) #endif -- method RequestFile::get_file -- method type : OrdinaryMethod -- Args : [Arg {argCName = "file", argType = TInterface (Name {namespace = "Soup", name = "RequestFile"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #SoupRequestFile", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gio", name = "File"})) -- throws : False -- Skip return : False foreign import ccall "soup_request_file_get_file" soup_request_file_get_file :: Ptr RequestFile -> -- file : TInterface (Name {namespace = "Soup", name = "RequestFile"}) IO (Ptr Gio.File.File) {- | Gets a 'GI.Gio.Interfaces.File.File' corresponding to /@file@/\'s URI /Since: 2.40/ -} requestFileGetFile :: (B.CallStack.HasCallStack, MonadIO m, IsRequestFile a) => a {- ^ /@file@/: a 'GI.Soup.Objects.RequestFile.RequestFile' -} -> m Gio.File.File {- ^ __Returns:__ a 'GI.Gio.Interfaces.File.File' corresponding to /@file@/ -} requestFileGetFile file = liftIO $ do file' <- unsafeManagedPtrCastPtr file result <- soup_request_file_get_file file' checkUnexpectedReturnNULL "requestFileGetFile" result result' <- (wrapObject Gio.File.File) result touchManagedPtr file return result' #if ENABLE_OVERLOADING data RequestFileGetFileMethodInfo instance (signature ~ (m Gio.File.File), MonadIO m, IsRequestFile a) => O.MethodInfo RequestFileGetFileMethodInfo a signature where overloadedMethod _ = requestFileGetFile #endif