diff --git a/GI/Poppler.hs b/GI/Poppler.hs
--- a/GI/Poppler.hs
+++ b/GI/Poppler.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -16,6 +17,10 @@
     module GI.Poppler.Unions                ,
 
 
+
+    module Data.GI.Base                     ,
+
+
     ) where
 
 import GI.Poppler.Callbacks
@@ -37,4 +42,5 @@
 import GI.Poppler.Types
 import GI.Poppler.Callbacks
 
+import Data.GI.Base
 
diff --git a/GI/Poppler/Callbacks.hs b/GI/Poppler/Callbacks.hs
--- a/GI/Poppler/Callbacks.hs
+++ b/GI/Poppler/Callbacks.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Constants.hs b/GI/Poppler/Constants.hs
--- a/GI/Poppler/Constants.hs
+++ b/GI/Poppler/Constants.hs
@@ -1,5 +1,6 @@
 {-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Enums.hs b/GI/Poppler/Enums.hs
--- a/GI/Poppler/Enums.hs
+++ b/GI/Poppler/Enums.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Flags.hs b/GI/Poppler/Flags.hs
--- a/GI/Poppler/Flags.hs
+++ b/GI/Poppler/Flags.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Functions.hs b/GI/Poppler/Functions.hs
--- a/GI/Poppler/Functions.hs
+++ b/GI/Poppler/Functions.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,10 +14,6 @@
     dateParse                               ,
 
 
--- ** errorQuark
-    errorQuark                              ,
-
-
 -- ** getBackend
     getBackend                              ,
 
@@ -42,7 +39,6 @@
 -- function poppler_get_version
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -53,7 +49,7 @@
 
 getVersion ::
     (MonadIO m) =>
-    m T.Text
+    m T.Text                                -- result
 getVersion  = liftIO $ do
     result <- poppler_get_version
     checkUnexpectedReturnNULL "poppler_get_version" result
@@ -64,7 +60,6 @@
 -- function poppler_get_backend
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "Backend"
 -- throws : False
 -- Skip return : False
@@ -75,37 +70,16 @@
 
 getBackend ::
     (MonadIO m) =>
-    m Backend
+    m Backend                               -- result
 getBackend  = liftIO $ do
     result <- poppler_get_backend
     let result' = (toEnum . fromIntegral) result
     return result'
 
 
--- function poppler_error_quark
--- Args : []
--- Lengths : []
--- hInArgs : []
--- returnType : TBasicType TUInt32
--- throws : False
--- Skip return : False
-
-foreign import ccall "poppler_error_quark" poppler_error_quark :: 
-    IO Word32
-
-
-errorQuark ::
-    (MonadIO m) =>
-    m Word32
-errorQuark  = liftIO $ do
-    result <- poppler_error_quark
-    return result
-
-
 -- function poppler_date_parse
--- Args : [Arg {argName = "date", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timet", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "date", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "timet", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "date", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timet", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -118,9 +92,9 @@
 
 dateParse ::
     (MonadIO m) =>
-    T.Text ->                               -- date
-    Int64 ->                                -- timet
-    m Bool
+    T.Text                                  -- date
+    -> Int64                                -- timet
+    -> m Bool                               -- result
 dateParse date timet = liftIO $ do
     date' <- textToCString date
     result <- poppler_date_parse date' timet
diff --git a/GI/Poppler/Objects.hs b/GI/Poppler/Objects.hs
--- a/GI/Poppler/Objects.hs
+++ b/GI/Poppler/Objects.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Objects/Annot.hs b/GI/Poppler/Objects/Annot.hs
--- a/GI/Poppler/Objects/Annot.hs
+++ b/GI/Poppler/Objects/Annot.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,50 +18,62 @@
 
  -- * Methods
 -- ** annotGetAnnotType
+    AnnotGetAnnotTypeMethodInfo             ,
     annotGetAnnotType                       ,
 
 
 -- ** annotGetColor
+    AnnotGetColorMethodInfo                 ,
     annotGetColor                           ,
 
 
 -- ** annotGetContents
+    AnnotGetContentsMethodInfo              ,
     annotGetContents                        ,
 
 
 -- ** annotGetFlags
+    AnnotGetFlagsMethodInfo                 ,
     annotGetFlags                           ,
 
 
 -- ** annotGetModified
+    AnnotGetModifiedMethodInfo              ,
     annotGetModified                        ,
 
 
 -- ** annotGetName
+    AnnotGetNameMethodInfo                  ,
     annotGetName                            ,
 
 
 -- ** annotGetPageIndex
+    AnnotGetPageIndexMethodInfo             ,
     annotGetPageIndex                       ,
 
 
 -- ** annotGetRectangle
+    AnnotGetRectangleMethodInfo             ,
     annotGetRectangle                       ,
 
 
 -- ** annotSetColor
+    AnnotSetColorMethodInfo                 ,
     annotSetColor                           ,
 
 
 -- ** annotSetContents
+    AnnotSetContentsMethodInfo              ,
     annotSetContents                        ,
 
 
 -- ** annotSetFlags
+    AnnotSetFlagsMethodInfo                 ,
     annotSetFlags                           ,
 
 
 -- ** annotSetRectangle
+    AnnotSetRectangleMethodInfo             ,
     annotSetRectangle                       ,
 
 
@@ -100,17 +113,61 @@
 noAnnot :: Maybe Annot
 noAnnot = Nothing
 
+type family ResolveAnnotMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotMethod t Annot, MethodInfo info Annot p) => IsLabelProxy t (Annot -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotMethod t Annot, MethodInfo info Annot p) => IsLabel t (Annot -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList Annot = AnnotAttributeList
 type AnnotAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList Annot = AnnotSignalList
-type AnnotSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Annot::get_annot_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotType"
 -- throws : False
 -- Skip return : False
@@ -122,8 +179,8 @@
 
 annotGetAnnotType ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m AnnotType
+    a                                       -- _obj
+    -> m AnnotType                          -- result
 annotGetAnnotType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_annot_type _obj'
@@ -131,11 +188,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotGetAnnotTypeMethodInfo
+instance (signature ~ (m AnnotType), MonadIO m, AnnotK a) => MethodInfo AnnotGetAnnotTypeMethodInfo a signature where
+    overloadedMethod _ = annotGetAnnotType
+
 -- method Annot::get_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Color"
 -- throws : False
 -- Skip return : False
@@ -147,8 +207,8 @@
 
 annotGetColor ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m Color
+    a                                       -- _obj
+    -> m Color                              -- result
 annotGetColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_color _obj'
@@ -157,11 +217,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotGetColorMethodInfo
+instance (signature ~ (m Color), MonadIO m, AnnotK a) => MethodInfo AnnotGetColorMethodInfo a signature where
+    overloadedMethod _ = annotGetColor
+
 -- method Annot::get_contents
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -173,8 +236,8 @@
 
 annotGetContents ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotGetContents _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_contents _obj'
@@ -184,11 +247,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotGetContentsMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotK a) => MethodInfo AnnotGetContentsMethodInfo a signature where
+    overloadedMethod _ = annotGetContents
+
 -- method Annot::get_flags
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotFlag"
 -- throws : False
 -- Skip return : False
@@ -200,8 +266,8 @@
 
 annotGetFlags ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m [AnnotFlag]
+    a                                       -- _obj
+    -> m [AnnotFlag]                        -- result
 annotGetFlags _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_flags _obj'
@@ -209,11 +275,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotGetFlagsMethodInfo
+instance (signature ~ (m [AnnotFlag]), MonadIO m, AnnotK a) => MethodInfo AnnotGetFlagsMethodInfo a signature where
+    overloadedMethod _ = annotGetFlags
+
 -- method Annot::get_modified
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -225,8 +294,8 @@
 
 annotGetModified ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotGetModified _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_modified _obj'
@@ -236,11 +305,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotGetModifiedMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotK a) => MethodInfo AnnotGetModifiedMethodInfo a signature where
+    overloadedMethod _ = annotGetModified
+
 -- method Annot::get_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -252,8 +324,8 @@
 
 annotGetName ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotGetName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_name _obj'
@@ -263,11 +335,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotGetNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotK a) => MethodInfo AnnotGetNameMethodInfo a signature where
+    overloadedMethod _ = annotGetName
+
 -- method Annot::get_page_index
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -279,19 +354,22 @@
 
 annotGetPageIndex ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 annotGetPageIndex _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_get_page_index _obj'
     touchManagedPtr _obj
     return result
 
+data AnnotGetPageIndexMethodInfo
+instance (signature ~ (m Int32), MonadIO m, AnnotK a) => MethodInfo AnnotGetPageIndexMethodInfo a signature where
+    overloadedMethod _ = annotGetPageIndex
+
 -- method Annot::get_rectangle
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -304,21 +382,24 @@
 
 annotGetRectangle ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    m (Rectangle)
+    a                                       -- _obj
+    -> m (Rectangle)                        -- result
 annotGetRectangle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    poppler_rect <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
-    poppler_annot_get_rectangle _obj' poppler_rect
-    poppler_rect' <- (wrapBoxed Rectangle) poppler_rect
+    popplerRect <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
+    poppler_annot_get_rectangle _obj' popplerRect
+    popplerRect' <- (wrapBoxed Rectangle) popplerRect
     touchManagedPtr _obj
-    return poppler_rect'
+    return popplerRect'
 
+data AnnotGetRectangleMethodInfo
+instance (signature ~ (m (Rectangle)), MonadIO m, AnnotK a) => MethodInfo AnnotGetRectangleMethodInfo a signature where
+    overloadedMethod _ = annotGetRectangle
+
 -- method Annot::set_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -331,26 +412,29 @@
 
 annotSetColor ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    Maybe (Color) ->                        -- poppler_color
-    m ()
-annotSetColor _obj poppler_color = liftIO $ do
+    a                                       -- _obj
+    -> Maybe (Color)                        -- popplerColor
+    -> m ()                                 -- result
+annotSetColor _obj popplerColor = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    maybePoppler_color <- case poppler_color of
+    maybePopplerColor <- case popplerColor of
         Nothing -> return nullPtr
-        Just jPoppler_color -> do
-            let jPoppler_color' = unsafeManagedPtrGetPtr jPoppler_color
-            return jPoppler_color'
-    poppler_annot_set_color _obj' maybePoppler_color
+        Just jPopplerColor -> do
+            let jPopplerColor' = unsafeManagedPtrGetPtr jPopplerColor
+            return jPopplerColor'
+    poppler_annot_set_color _obj' maybePopplerColor
     touchManagedPtr _obj
-    whenJust poppler_color touchManagedPtr
+    whenJust popplerColor touchManagedPtr
     return ()
 
+data AnnotSetColorMethodInfo
+instance (signature ~ (Maybe (Color) -> m ()), MonadIO m, AnnotK a) => MethodInfo AnnotSetColorMethodInfo a signature where
+    overloadedMethod _ = annotSetColor
+
 -- method Annot::set_contents
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -363,9 +447,9 @@
 
 annotSetContents ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- contents
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- contents
+    -> m ()                                 -- result
 annotSetContents _obj contents = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     contents' <- textToCString contents
@@ -374,11 +458,14 @@
     freeMem contents'
     return ()
 
+data AnnotSetContentsMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, AnnotK a) => MethodInfo AnnotSetContentsMethodInfo a signature where
+    overloadedMethod _ = annotSetContents
+
 -- method Annot::set_flags
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Poppler" "AnnotFlag", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface "Poppler" "AnnotFlag", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Poppler" "AnnotFlag", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -391,9 +478,9 @@
 
 annotSetFlags ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    [AnnotFlag] ->                          -- flags
-    m ()
+    a                                       -- _obj
+    -> [AnnotFlag]                          -- flags
+    -> m ()                                 -- result
 annotSetFlags _obj flags = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let flags' = gflagsToWord flags
@@ -401,11 +488,14 @@
     touchManagedPtr _obj
     return ()
 
+data AnnotSetFlagsMethodInfo
+instance (signature ~ ([AnnotFlag] -> m ()), MonadIO m, AnnotK a) => MethodInfo AnnotSetFlagsMethodInfo a signature where
+    overloadedMethod _ = annotSetFlags
+
 -- method Annot::set_rectangle
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -418,15 +508,19 @@
 
 annotSetRectangle ::
     (MonadIO m, AnnotK a) =>
-    a ->                                    -- _obj
-    Rectangle ->                            -- poppler_rect
-    m ()
-annotSetRectangle _obj poppler_rect = liftIO $ do
+    a                                       -- _obj
+    -> Rectangle                            -- popplerRect
+    -> m ()                                 -- result
+annotSetRectangle _obj popplerRect = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    let poppler_rect' = unsafeManagedPtrGetPtr poppler_rect
-    poppler_annot_set_rectangle _obj' poppler_rect'
+    let popplerRect' = unsafeManagedPtrGetPtr popplerRect
+    poppler_annot_set_rectangle _obj' popplerRect'
     touchManagedPtr _obj
-    touchManagedPtr poppler_rect
+    touchManagedPtr popplerRect
     return ()
+
+data AnnotSetRectangleMethodInfo
+instance (signature ~ (Rectangle -> m ()), MonadIO m, AnnotK a) => MethodInfo AnnotSetRectangleMethodInfo a signature where
+    overloadedMethod _ = annotSetRectangle
 
 
diff --git a/GI/Poppler/Objects/Annot.hs-boot b/GI/Poppler/Objects/Annot.hs-boot
--- a/GI/Poppler/Objects/Annot.hs-boot
+++ b/GI/Poppler/Objects/Annot.hs-boot
@@ -11,3 +11,15 @@
 instance GObject Annot where
 class GObject o => AnnotK o
 instance (GObject o, IsDescendantOf Annot o) => AnnotK o
+data AnnotGetAnnotTypeMethodInfo
+data AnnotGetColorMethodInfo
+data AnnotGetContentsMethodInfo
+data AnnotGetFlagsMethodInfo
+data AnnotGetModifiedMethodInfo
+data AnnotGetNameMethodInfo
+data AnnotGetPageIndexMethodInfo
+data AnnotGetRectangleMethodInfo
+data AnnotSetColorMethodInfo
+data AnnotSetContentsMethodInfo
+data AnnotSetFlagsMethodInfo
+data AnnotSetRectangleMethodInfo
diff --git a/GI/Poppler/Objects/AnnotCircle.hs b/GI/Poppler/Objects/AnnotCircle.hs
--- a/GI/Poppler/Objects/AnnotCircle.hs
+++ b/GI/Poppler/Objects/AnnotCircle.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,6 +18,7 @@
 
  -- * Methods
 -- ** annotCircleGetInteriorColor
+    AnnotCircleGetInteriorColorMethodInfo   ,
     annotCircleGetInteriorColor             ,
 
 
@@ -25,6 +27,7 @@
 
 
 -- ** annotCircleSetInteriorColor
+    AnnotCircleSetInteriorColorMethodInfo   ,
     annotCircleSetInteriorColor             ,
 
 
@@ -64,17 +67,77 @@
 noAnnotCircle :: Maybe AnnotCircle
 noAnnotCircle = Nothing
 
+type family ResolveAnnotCircleMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotCircleMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotCircleMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotCircleMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotCircleMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotCircleMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotCircleMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotCircleMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotCircleMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotCircleMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotCircleMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotCircleMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotCircleMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotCircleMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotCircleMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotCircleMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotCircleMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotCircleMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotCircleMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotCircleMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotCircleMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotCircleMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotCircleMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotCircleMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotCircleMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotCircleMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotCircleMethod "getInteriorColor" o = AnnotCircleGetInteriorColorMethodInfo
+    ResolveAnnotCircleMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotCircleMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotCircleMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotCircleMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotCircleMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotCircleMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotCircleMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotCircleMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotCircleMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotCircleMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotCircleMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotCircleMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotCircleMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotCircleMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotCircleMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotCircleMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotCircleMethod "setInteriorColor" o = AnnotCircleSetInteriorColorMethodInfo
+    ResolveAnnotCircleMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotCircleMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotCircleMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotCircleMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotCircleMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotCircleMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotCircleMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotCircleMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotCircleMethod t AnnotCircle, MethodInfo info AnnotCircle p) => IsLabelProxy t (AnnotCircle -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotCircleMethod t AnnotCircle, MethodInfo info AnnotCircle p) => IsLabel t (AnnotCircle -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotCircle = AnnotCircleAttributeList
 type AnnotCircleAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotCircle = AnnotCircleSignalList
-type AnnotCircleSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotCircleSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotCircle::new
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotCircle"
 -- throws : False
 -- Skip return : False
@@ -87,9 +150,9 @@
 
 annotCircleNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    m AnnotCircle
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> m AnnotCircle                        -- result
 annotCircleNew doc rect = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -102,9 +165,8 @@
 
 -- method AnnotCircle::get_interior_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCircle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotCircle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCircle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Color"
 -- throws : False
 -- Skip return : False
@@ -116,8 +178,8 @@
 
 annotCircleGetInteriorColor ::
     (MonadIO m, AnnotCircleK a) =>
-    a ->                                    -- _obj
-    m Color
+    a                                       -- _obj
+    -> m Color                              -- result
 annotCircleGetInteriorColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_circle_get_interior_color _obj'
@@ -126,11 +188,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotCircleGetInteriorColorMethodInfo
+instance (signature ~ (m Color), MonadIO m, AnnotCircleK a) => MethodInfo AnnotCircleGetInteriorColorMethodInfo a signature where
+    overloadedMethod _ = annotCircleGetInteriorColor
+
 -- method AnnotCircle::set_interior_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCircle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotCircle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCircle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -143,19 +208,23 @@
 
 annotCircleSetInteriorColor ::
     (MonadIO m, AnnotCircleK a) =>
-    a ->                                    -- _obj
-    Maybe (Color) ->                        -- poppler_color
-    m ()
-annotCircleSetInteriorColor _obj poppler_color = liftIO $ do
+    a                                       -- _obj
+    -> Maybe (Color)                        -- popplerColor
+    -> m ()                                 -- result
+annotCircleSetInteriorColor _obj popplerColor = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    maybePoppler_color <- case poppler_color of
+    maybePopplerColor <- case popplerColor of
         Nothing -> return nullPtr
-        Just jPoppler_color -> do
-            let jPoppler_color' = unsafeManagedPtrGetPtr jPoppler_color
-            return jPoppler_color'
-    poppler_annot_circle_set_interior_color _obj' maybePoppler_color
+        Just jPopplerColor -> do
+            let jPopplerColor' = unsafeManagedPtrGetPtr jPopplerColor
+            return jPopplerColor'
+    poppler_annot_circle_set_interior_color _obj' maybePopplerColor
     touchManagedPtr _obj
-    whenJust poppler_color touchManagedPtr
+    whenJust popplerColor touchManagedPtr
     return ()
+
+data AnnotCircleSetInteriorColorMethodInfo
+instance (signature ~ (Maybe (Color) -> m ()), MonadIO m, AnnotCircleK a) => MethodInfo AnnotCircleSetInteriorColorMethodInfo a signature where
+    overloadedMethod _ = annotCircleSetInteriorColor
 
 
diff --git a/GI/Poppler/Objects/AnnotCircle.hs-boot b/GI/Poppler/Objects/AnnotCircle.hs-boot
--- a/GI/Poppler/Objects/AnnotCircle.hs-boot
+++ b/GI/Poppler/Objects/AnnotCircle.hs-boot
@@ -11,3 +11,5 @@
 instance GObject AnnotCircle where
 class GObject o => AnnotCircleK o
 instance (GObject o, IsDescendantOf AnnotCircle o) => AnnotCircleK o
+data AnnotCircleGetInteriorColorMethodInfo
+data AnnotCircleSetInteriorColorMethodInfo
diff --git a/GI/Poppler/Objects/AnnotFileAttachment.hs b/GI/Poppler/Objects/AnnotFileAttachment.hs
--- a/GI/Poppler/Objects/AnnotFileAttachment.hs
+++ b/GI/Poppler/Objects/AnnotFileAttachment.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,10 +18,12 @@
 
  -- * Methods
 -- ** annotFileAttachmentGetAttachment
+    AnnotFileAttachmentGetAttachmentMethodInfo,
     annotFileAttachmentGetAttachment        ,
 
 
 -- ** annotFileAttachmentGetName
+    AnnotFileAttachmentGetNameMethodInfo    ,
     annotFileAttachmentGetName              ,
 
 
@@ -60,17 +63,75 @@
 noAnnotFileAttachment :: Maybe AnnotFileAttachment
 noAnnotFileAttachment = Nothing
 
+type family ResolveAnnotFileAttachmentMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotFileAttachmentMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotFileAttachmentMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotFileAttachmentMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotFileAttachmentMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotFileAttachmentMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotFileAttachmentMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotFileAttachmentMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotFileAttachmentMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotFileAttachmentMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotFileAttachmentMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotFileAttachmentMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotFileAttachmentMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotFileAttachmentMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotFileAttachmentMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotFileAttachmentMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotFileAttachmentMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotFileAttachmentMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotFileAttachmentMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotFileAttachmentMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotFileAttachmentMethod "getAttachment" o = AnnotFileAttachmentGetAttachmentMethodInfo
+    ResolveAnnotFileAttachmentMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotFileAttachmentMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotFileAttachmentMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotFileAttachmentMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotFileAttachmentMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotFileAttachmentMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotFileAttachmentMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotFileAttachmentMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotFileAttachmentMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotFileAttachmentMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotFileAttachmentMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotFileAttachmentMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotFileAttachmentMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotFileAttachmentMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotFileAttachmentMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotFileAttachmentMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotFileAttachmentMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotFileAttachmentMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotFileAttachmentMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotFileAttachmentMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotFileAttachmentMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotFileAttachmentMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotFileAttachmentMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotFileAttachmentMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotFileAttachmentMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotFileAttachmentMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotFileAttachmentMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotFileAttachmentMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotFileAttachmentMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotFileAttachmentMethod t AnnotFileAttachment, MethodInfo info AnnotFileAttachment p) => IsLabelProxy t (AnnotFileAttachment -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotFileAttachmentMethod t AnnotFileAttachment, MethodInfo info AnnotFileAttachment p) => IsLabel t (AnnotFileAttachment -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotFileAttachment = AnnotFileAttachmentAttributeList
 type AnnotFileAttachmentAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotFileAttachment = AnnotFileAttachmentSignalList
-type AnnotFileAttachmentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotFileAttachmentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotFileAttachment::get_attachment
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFileAttachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotFileAttachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFileAttachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Attachment"
 -- throws : False
 -- Skip return : False
@@ -82,8 +143,8 @@
 
 annotFileAttachmentGetAttachment ::
     (MonadIO m, AnnotFileAttachmentK a) =>
-    a ->                                    -- _obj
-    m Attachment
+    a                                       -- _obj
+    -> m Attachment                         -- result
 annotFileAttachmentGetAttachment _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_file_attachment_get_attachment _obj'
@@ -92,11 +153,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotFileAttachmentGetAttachmentMethodInfo
+instance (signature ~ (m Attachment), MonadIO m, AnnotFileAttachmentK a) => MethodInfo AnnotFileAttachmentGetAttachmentMethodInfo a signature where
+    overloadedMethod _ = annotFileAttachmentGetAttachment
+
 -- method AnnotFileAttachment::get_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFileAttachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotFileAttachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFileAttachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -108,8 +172,8 @@
 
 annotFileAttachmentGetName ::
     (MonadIO m, AnnotFileAttachmentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotFileAttachmentGetName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_file_attachment_get_name _obj'
@@ -118,5 +182,9 @@
     freeMem result
     touchManagedPtr _obj
     return result'
+
+data AnnotFileAttachmentGetNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotFileAttachmentK a) => MethodInfo AnnotFileAttachmentGetNameMethodInfo a signature where
+    overloadedMethod _ = annotFileAttachmentGetName
 
 
diff --git a/GI/Poppler/Objects/AnnotFileAttachment.hs-boot b/GI/Poppler/Objects/AnnotFileAttachment.hs-boot
--- a/GI/Poppler/Objects/AnnotFileAttachment.hs-boot
+++ b/GI/Poppler/Objects/AnnotFileAttachment.hs-boot
@@ -11,3 +11,5 @@
 instance GObject AnnotFileAttachment where
 class GObject o => AnnotFileAttachmentK o
 instance (GObject o, IsDescendantOf AnnotFileAttachment o) => AnnotFileAttachmentK o
+data AnnotFileAttachmentGetAttachmentMethodInfo
+data AnnotFileAttachmentGetNameMethodInfo
diff --git a/GI/Poppler/Objects/AnnotFreeText.hs b/GI/Poppler/Objects/AnnotFreeText.hs
--- a/GI/Poppler/Objects/AnnotFreeText.hs
+++ b/GI/Poppler/Objects/AnnotFreeText.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,10 +18,12 @@
 
  -- * Methods
 -- ** annotFreeTextGetCalloutLine
+    AnnotFreeTextGetCalloutLineMethodInfo   ,
     annotFreeTextGetCalloutLine             ,
 
 
 -- ** annotFreeTextGetQuadding
+    AnnotFreeTextGetQuaddingMethodInfo      ,
     annotFreeTextGetQuadding                ,
 
 
@@ -60,17 +63,77 @@
 noAnnotFreeText :: Maybe AnnotFreeText
 noAnnotFreeText = Nothing
 
+type family ResolveAnnotFreeTextMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotFreeTextMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotFreeTextMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotFreeTextMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotFreeTextMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotFreeTextMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotFreeTextMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotFreeTextMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotFreeTextMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotFreeTextMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotFreeTextMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotFreeTextMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotFreeTextMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotFreeTextMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotFreeTextMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotFreeTextMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotFreeTextMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotFreeTextMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotFreeTextMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotFreeTextMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotFreeTextMethod "getCalloutLine" o = AnnotFreeTextGetCalloutLineMethodInfo
+    ResolveAnnotFreeTextMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotFreeTextMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotFreeTextMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotFreeTextMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotFreeTextMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotFreeTextMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotFreeTextMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotFreeTextMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotFreeTextMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotFreeTextMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotFreeTextMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotFreeTextMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotFreeTextMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotFreeTextMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotFreeTextMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotFreeTextMethod "getQuadding" o = AnnotFreeTextGetQuaddingMethodInfo
+    ResolveAnnotFreeTextMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotFreeTextMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotFreeTextMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotFreeTextMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotFreeTextMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotFreeTextMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotFreeTextMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotFreeTextMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotFreeTextMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotFreeTextMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotFreeTextMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotFreeTextMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotFreeTextMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotFreeTextMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotFreeTextMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotFreeTextMethod t AnnotFreeText, MethodInfo info AnnotFreeText p) => IsLabelProxy t (AnnotFreeText -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotFreeTextMethod t AnnotFreeText, MethodInfo info AnnotFreeText p) => IsLabel t (AnnotFreeText -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotFreeText = AnnotFreeTextAttributeList
 type AnnotFreeTextAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotFreeText = AnnotFreeTextSignalList
-type AnnotFreeTextSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotFreeTextSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotFreeText::get_callout_line
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFreeText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotFreeText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFreeText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotCalloutLine"
 -- throws : False
 -- Skip return : False
@@ -82,8 +145,8 @@
 
 annotFreeTextGetCalloutLine ::
     (MonadIO m, AnnotFreeTextK a) =>
-    a ->                                    -- _obj
-    m AnnotCalloutLine
+    a                                       -- _obj
+    -> m AnnotCalloutLine                   -- result
 annotFreeTextGetCalloutLine _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_free_text_get_callout_line _obj'
@@ -92,11 +155,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotFreeTextGetCalloutLineMethodInfo
+instance (signature ~ (m AnnotCalloutLine), MonadIO m, AnnotFreeTextK a) => MethodInfo AnnotFreeTextGetCalloutLineMethodInfo a signature where
+    overloadedMethod _ = annotFreeTextGetCalloutLine
+
 -- method AnnotFreeText::get_quadding
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFreeText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotFreeText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotFreeText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotFreeTextQuadding"
 -- throws : False
 -- Skip return : False
@@ -108,13 +174,17 @@
 
 annotFreeTextGetQuadding ::
     (MonadIO m, AnnotFreeTextK a) =>
-    a ->                                    -- _obj
-    m AnnotFreeTextQuadding
+    a                                       -- _obj
+    -> m AnnotFreeTextQuadding              -- result
 annotFreeTextGetQuadding _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_free_text_get_quadding _obj'
     let result' = (toEnum . fromIntegral) result
     touchManagedPtr _obj
     return result'
+
+data AnnotFreeTextGetQuaddingMethodInfo
+instance (signature ~ (m AnnotFreeTextQuadding), MonadIO m, AnnotFreeTextK a) => MethodInfo AnnotFreeTextGetQuaddingMethodInfo a signature where
+    overloadedMethod _ = annotFreeTextGetQuadding
 
 
diff --git a/GI/Poppler/Objects/AnnotFreeText.hs-boot b/GI/Poppler/Objects/AnnotFreeText.hs-boot
--- a/GI/Poppler/Objects/AnnotFreeText.hs-boot
+++ b/GI/Poppler/Objects/AnnotFreeText.hs-boot
@@ -11,3 +11,5 @@
 instance GObject AnnotFreeText where
 class GObject o => AnnotFreeTextK o
 instance (GObject o, IsDescendantOf AnnotFreeText o) => AnnotFreeTextK o
+data AnnotFreeTextGetCalloutLineMethodInfo
+data AnnotFreeTextGetQuaddingMethodInfo
diff --git a/GI/Poppler/Objects/AnnotLine.hs b/GI/Poppler/Objects/AnnotLine.hs
--- a/GI/Poppler/Objects/AnnotLine.hs
+++ b/GI/Poppler/Objects/AnnotLine.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -21,6 +22,7 @@
 
 
 -- ** annotLineSetVertices
+    AnnotLineSetVerticesMethodInfo          ,
     annotLineSetVertices                    ,
 
 
@@ -60,17 +62,76 @@
 noAnnotLine :: Maybe AnnotLine
 noAnnotLine = Nothing
 
+type family ResolveAnnotLineMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotLineMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotLineMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotLineMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotLineMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotLineMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotLineMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotLineMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotLineMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotLineMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotLineMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotLineMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotLineMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotLineMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotLineMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotLineMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotLineMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotLineMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotLineMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotLineMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotLineMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotLineMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotLineMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotLineMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotLineMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotLineMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotLineMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotLineMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotLineMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotLineMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotLineMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotLineMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotLineMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotLineMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotLineMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotLineMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotLineMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotLineMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotLineMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotLineMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotLineMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotLineMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotLineMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotLineMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotLineMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotLineMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotLineMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotLineMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotLineMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotLineMethod "setVertices" o = AnnotLineSetVerticesMethodInfo
+    ResolveAnnotLineMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotLineMethod t AnnotLine, MethodInfo info AnnotLine p) => IsLabelProxy t (AnnotLine -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotLineMethod t AnnotLine, MethodInfo info AnnotLine p) => IsLabel t (AnnotLine -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotLine = AnnotLineAttributeList
 type AnnotLineAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotLine = AnnotLineSignalList
-type AnnotLineSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotLineSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotLine::new
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotLine"
 -- throws : False
 -- Skip return : False
@@ -85,11 +146,11 @@
 
 annotLineNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    Point ->                                -- start
-    Point ->                                -- end
-    m AnnotLine
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> Point                                -- start
+    -> Point                                -- end
+    -> m AnnotLine                          -- result
 annotLineNew doc rect start end = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -106,9 +167,8 @@
 
 -- method AnnotLine::set_vertices
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -122,10 +182,10 @@
 
 annotLineSetVertices ::
     (MonadIO m, AnnotLineK a) =>
-    a ->                                    -- _obj
-    Point ->                                -- start
-    Point ->                                -- end
-    m ()
+    a                                       -- _obj
+    -> Point                                -- start
+    -> Point                                -- end
+    -> m ()                                 -- result
 annotLineSetVertices _obj start end = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let start' = unsafeManagedPtrGetPtr start
@@ -135,5 +195,9 @@
     touchManagedPtr start
     touchManagedPtr end
     return ()
+
+data AnnotLineSetVerticesMethodInfo
+instance (signature ~ (Point -> Point -> m ()), MonadIO m, AnnotLineK a) => MethodInfo AnnotLineSetVerticesMethodInfo a signature where
+    overloadedMethod _ = annotLineSetVertices
 
 
diff --git a/GI/Poppler/Objects/AnnotLine.hs-boot b/GI/Poppler/Objects/AnnotLine.hs-boot
--- a/GI/Poppler/Objects/AnnotLine.hs-boot
+++ b/GI/Poppler/Objects/AnnotLine.hs-boot
@@ -11,3 +11,4 @@
 instance GObject AnnotLine where
 class GObject o => AnnotLineK o
 instance (GObject o, IsDescendantOf AnnotLine o) => AnnotLineK o
+data AnnotLineSetVerticesMethodInfo
diff --git a/GI/Poppler/Objects/AnnotMarkup.hs b/GI/Poppler/Objects/AnnotMarkup.hs
--- a/GI/Poppler/Objects/AnnotMarkup.hs
+++ b/GI/Poppler/Objects/AnnotMarkup.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,58 +18,72 @@
 
  -- * Methods
 -- ** annotMarkupGetDate
+    AnnotMarkupGetDateMethodInfo            ,
     annotMarkupGetDate                      ,
 
 
 -- ** annotMarkupGetExternalData
+    AnnotMarkupGetExternalDataMethodInfo    ,
     annotMarkupGetExternalData              ,
 
 
 -- ** annotMarkupGetLabel
+    AnnotMarkupGetLabelMethodInfo           ,
     annotMarkupGetLabel                     ,
 
 
 -- ** annotMarkupGetOpacity
+    AnnotMarkupGetOpacityMethodInfo         ,
     annotMarkupGetOpacity                   ,
 
 
 -- ** annotMarkupGetPopupIsOpen
+    AnnotMarkupGetPopupIsOpenMethodInfo     ,
     annotMarkupGetPopupIsOpen               ,
 
 
 -- ** annotMarkupGetPopupRectangle
+    AnnotMarkupGetPopupRectangleMethodInfo  ,
     annotMarkupGetPopupRectangle            ,
 
 
 -- ** annotMarkupGetReplyTo
+    AnnotMarkupGetReplyToMethodInfo         ,
     annotMarkupGetReplyTo                   ,
 
 
 -- ** annotMarkupGetSubject
+    AnnotMarkupGetSubjectMethodInfo         ,
     annotMarkupGetSubject                   ,
 
 
 -- ** annotMarkupHasPopup
+    AnnotMarkupHasPopupMethodInfo           ,
     annotMarkupHasPopup                     ,
 
 
 -- ** annotMarkupSetLabel
+    AnnotMarkupSetLabelMethodInfo           ,
     annotMarkupSetLabel                     ,
 
 
 -- ** annotMarkupSetOpacity
+    AnnotMarkupSetOpacityMethodInfo         ,
     annotMarkupSetOpacity                   ,
 
 
 -- ** annotMarkupSetPopup
+    AnnotMarkupSetPopupMethodInfo           ,
     annotMarkupSetPopup                     ,
 
 
 -- ** annotMarkupSetPopupIsOpen
+    AnnotMarkupSetPopupIsOpenMethodInfo     ,
     annotMarkupSetPopupIsOpen               ,
 
 
 -- ** annotMarkupSetPopupRectangle
+    AnnotMarkupSetPopupRectangleMethodInfo  ,
     annotMarkupSetPopupRectangle            ,
 
 
@@ -109,17 +124,75 @@
 noAnnotMarkup :: Maybe AnnotMarkup
 noAnnotMarkup = Nothing
 
+type family ResolveAnnotMarkupMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotMarkupMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotMarkupMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotMarkupMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotMarkupMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotMarkupMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotMarkupMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotMarkupMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotMarkupMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotMarkupMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotMarkupMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotMarkupMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotMarkupMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotMarkupMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotMarkupMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotMarkupMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotMarkupMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotMarkupMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotMarkupMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotMarkupMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotMarkupMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotMarkupMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotMarkupMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotMarkupMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotMarkupMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotMarkupMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotMarkupMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotMarkupMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotMarkupMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotMarkupMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotMarkupMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotMarkupMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotMarkupMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotMarkupMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotMarkupMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotMarkupMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotMarkupMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotMarkupMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotMarkupMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotMarkupMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotMarkupMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotMarkupMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotMarkupMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotMarkupMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotMarkupMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotMarkupMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotMarkupMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotMarkupMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotMarkupMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotMarkupMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotMarkupMethod t AnnotMarkup, MethodInfo info AnnotMarkup p) => IsLabelProxy t (AnnotMarkup -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotMarkupMethod t AnnotMarkup, MethodInfo info AnnotMarkup p) => IsLabel t (AnnotMarkup -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotMarkup = AnnotMarkupAttributeList
 type AnnotMarkupAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotMarkup = AnnotMarkupSignalList
-type AnnotMarkupSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotMarkupSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotMarkup::get_date
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "GLib" "Date"
 -- throws : False
 -- Skip return : False
@@ -131,8 +204,8 @@
 
 annotMarkupGetDate ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m GLib.Date
+    a                                       -- _obj
+    -> m GLib.Date                          -- result
 annotMarkupGetDate _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_date _obj'
@@ -141,11 +214,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetDateMethodInfo
+instance (signature ~ (m GLib.Date), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetDateMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetDate
+
 -- method AnnotMarkup::get_external_data
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotExternalDataType"
 -- throws : False
 -- Skip return : False
@@ -157,8 +233,8 @@
 
 annotMarkupGetExternalData ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m AnnotExternalDataType
+    a                                       -- _obj
+    -> m AnnotExternalDataType              -- result
 annotMarkupGetExternalData _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_external_data _obj'
@@ -166,11 +242,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetExternalDataMethodInfo
+instance (signature ~ (m AnnotExternalDataType), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetExternalDataMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetExternalData
+
 -- method AnnotMarkup::get_label
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -182,8 +261,8 @@
 
 annotMarkupGetLabel ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotMarkupGetLabel _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_label _obj'
@@ -193,11 +272,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetLabelMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetLabelMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetLabel
+
 -- method AnnotMarkup::get_opacity
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -209,8 +291,8 @@
 
 annotMarkupGetOpacity ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 annotMarkupGetOpacity _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_opacity _obj'
@@ -218,11 +300,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetOpacityMethodInfo
+instance (signature ~ (m Double), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetOpacityMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetOpacity
+
 -- method AnnotMarkup::get_popup_is_open
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -234,8 +319,8 @@
 
 annotMarkupGetPopupIsOpen ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 annotMarkupGetPopupIsOpen _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_popup_is_open _obj'
@@ -243,11 +328,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetPopupIsOpenMethodInfo
+instance (signature ~ (m Bool), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetPopupIsOpenMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetPopupIsOpen
+
 -- method AnnotMarkup::get_popup_rectangle
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -260,22 +348,25 @@
 
 annotMarkupGetPopupRectangle ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m (Bool,Rectangle)
+    a                                       -- _obj
+    -> m (Bool,Rectangle)                   -- result
 annotMarkupGetPopupRectangle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    poppler_rect <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
-    result <- poppler_annot_markup_get_popup_rectangle _obj' poppler_rect
+    popplerRect <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
+    result <- poppler_annot_markup_get_popup_rectangle _obj' popplerRect
     let result' = (/= 0) result
-    poppler_rect' <- (wrapBoxed Rectangle) poppler_rect
+    popplerRect' <- (wrapBoxed Rectangle) popplerRect
     touchManagedPtr _obj
-    return (result', poppler_rect')
+    return (result', popplerRect')
 
+data AnnotMarkupGetPopupRectangleMethodInfo
+instance (signature ~ (m (Bool,Rectangle)), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetPopupRectangleMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetPopupRectangle
+
 -- method AnnotMarkup::get_reply_to
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotMarkupReplyType"
 -- throws : False
 -- Skip return : False
@@ -287,8 +378,8 @@
 
 annotMarkupGetReplyTo ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m AnnotMarkupReplyType
+    a                                       -- _obj
+    -> m AnnotMarkupReplyType               -- result
 annotMarkupGetReplyTo _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_reply_to _obj'
@@ -296,11 +387,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetReplyToMethodInfo
+instance (signature ~ (m AnnotMarkupReplyType), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetReplyToMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetReplyTo
+
 -- method AnnotMarkup::get_subject
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -312,8 +406,8 @@
 
 annotMarkupGetSubject ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotMarkupGetSubject _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_get_subject _obj'
@@ -323,11 +417,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupGetSubjectMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupGetSubjectMethodInfo a signature where
+    overloadedMethod _ = annotMarkupGetSubject
+
 -- method AnnotMarkup::has_popup
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -339,8 +436,8 @@
 
 annotMarkupHasPopup ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 annotMarkupHasPopup _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_markup_has_popup _obj'
@@ -348,11 +445,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMarkupHasPopupMethodInfo
+instance (signature ~ (m Bool), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupHasPopupMethodInfo a signature where
+    overloadedMethod _ = annotMarkupHasPopup
+
 -- method AnnotMarkup::set_label
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -365,9 +465,9 @@
 
 annotMarkupSetLabel ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    Maybe (T.Text) ->                       -- label
-    m ()
+    a                                       -- _obj
+    -> Maybe (T.Text)                       -- label
+    -> m ()                                 -- result
 annotMarkupSetLabel _obj label = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     maybeLabel <- case label of
@@ -380,11 +480,14 @@
     freeMem maybeLabel
     return ()
 
+data AnnotMarkupSetLabelMethodInfo
+instance (signature ~ (Maybe (T.Text) -> m ()), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupSetLabelMethodInfo a signature where
+    overloadedMethod _ = annotMarkupSetLabel
+
 -- method AnnotMarkup::set_opacity
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "opacity", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "opacity", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "opacity", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -397,9 +500,9 @@
 
 annotMarkupSetOpacity ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    Double ->                               -- opacity
-    m ()
+    a                                       -- _obj
+    -> Double                               -- opacity
+    -> m ()                                 -- result
 annotMarkupSetOpacity _obj opacity = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let opacity' = realToFrac opacity
@@ -407,11 +510,14 @@
     touchManagedPtr _obj
     return ()
 
+data AnnotMarkupSetOpacityMethodInfo
+instance (signature ~ (Double -> m ()), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupSetOpacityMethodInfo a signature where
+    overloadedMethod _ = annotMarkupSetOpacity
+
 -- method AnnotMarkup::set_popup
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "popup_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "popup_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "popup_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -424,22 +530,25 @@
 
 annotMarkupSetPopup ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    Rectangle ->                            -- popup_rect
-    m ()
-annotMarkupSetPopup _obj popup_rect = liftIO $ do
+    a                                       -- _obj
+    -> Rectangle                            -- popupRect
+    -> m ()                                 -- result
+annotMarkupSetPopup _obj popupRect = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    let popup_rect' = unsafeManagedPtrGetPtr popup_rect
-    poppler_annot_markup_set_popup _obj' popup_rect'
+    let popupRect' = unsafeManagedPtrGetPtr popupRect
+    poppler_annot_markup_set_popup _obj' popupRect'
     touchManagedPtr _obj
-    touchManagedPtr popup_rect
+    touchManagedPtr popupRect
     return ()
 
+data AnnotMarkupSetPopupMethodInfo
+instance (signature ~ (Rectangle -> m ()), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupSetPopupMethodInfo a signature where
+    overloadedMethod _ = annotMarkupSetPopup
+
 -- method AnnotMarkup::set_popup_is_open
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "is_open", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "is_open", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "is_open", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -452,21 +561,24 @@
 
 annotMarkupSetPopupIsOpen ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    Bool ->                                 -- is_open
-    m ()
-annotMarkupSetPopupIsOpen _obj is_open = liftIO $ do
+    a                                       -- _obj
+    -> Bool                                 -- isOpen
+    -> m ()                                 -- result
+annotMarkupSetPopupIsOpen _obj isOpen = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    let is_open' = (fromIntegral . fromEnum) is_open
-    poppler_annot_markup_set_popup_is_open _obj' is_open'
+    let isOpen' = (fromIntegral . fromEnum) isOpen
+    poppler_annot_markup_set_popup_is_open _obj' isOpen'
     touchManagedPtr _obj
     return ()
 
+data AnnotMarkupSetPopupIsOpenMethodInfo
+instance (signature ~ (Bool -> m ()), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupSetPopupIsOpenMethodInfo a signature where
+    overloadedMethod _ = annotMarkupSetPopupIsOpen
+
 -- method AnnotMarkup::set_popup_rectangle
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -479,15 +591,19 @@
 
 annotMarkupSetPopupRectangle ::
     (MonadIO m, AnnotMarkupK a) =>
-    a ->                                    -- _obj
-    Rectangle ->                            -- poppler_rect
-    m ()
-annotMarkupSetPopupRectangle _obj poppler_rect = liftIO $ do
+    a                                       -- _obj
+    -> Rectangle                            -- popplerRect
+    -> m ()                                 -- result
+annotMarkupSetPopupRectangle _obj popplerRect = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    let poppler_rect' = unsafeManagedPtrGetPtr poppler_rect
-    poppler_annot_markup_set_popup_rectangle _obj' poppler_rect'
+    let popplerRect' = unsafeManagedPtrGetPtr popplerRect
+    poppler_annot_markup_set_popup_rectangle _obj' popplerRect'
     touchManagedPtr _obj
-    touchManagedPtr poppler_rect
+    touchManagedPtr popplerRect
     return ()
+
+data AnnotMarkupSetPopupRectangleMethodInfo
+instance (signature ~ (Rectangle -> m ()), MonadIO m, AnnotMarkupK a) => MethodInfo AnnotMarkupSetPopupRectangleMethodInfo a signature where
+    overloadedMethod _ = annotMarkupSetPopupRectangle
 
 
diff --git a/GI/Poppler/Objects/AnnotMarkup.hs-boot b/GI/Poppler/Objects/AnnotMarkup.hs-boot
--- a/GI/Poppler/Objects/AnnotMarkup.hs-boot
+++ b/GI/Poppler/Objects/AnnotMarkup.hs-boot
@@ -11,3 +11,17 @@
 instance GObject AnnotMarkup where
 class GObject o => AnnotMarkupK o
 instance (GObject o, IsDescendantOf AnnotMarkup o) => AnnotMarkupK o
+data AnnotMarkupGetDateMethodInfo
+data AnnotMarkupGetExternalDataMethodInfo
+data AnnotMarkupGetLabelMethodInfo
+data AnnotMarkupGetOpacityMethodInfo
+data AnnotMarkupGetPopupIsOpenMethodInfo
+data AnnotMarkupGetPopupRectangleMethodInfo
+data AnnotMarkupGetReplyToMethodInfo
+data AnnotMarkupGetSubjectMethodInfo
+data AnnotMarkupHasPopupMethodInfo
+data AnnotMarkupSetLabelMethodInfo
+data AnnotMarkupSetOpacityMethodInfo
+data AnnotMarkupSetPopupMethodInfo
+data AnnotMarkupSetPopupIsOpenMethodInfo
+data AnnotMarkupSetPopupRectangleMethodInfo
diff --git a/GI/Poppler/Objects/AnnotMovie.hs b/GI/Poppler/Objects/AnnotMovie.hs
--- a/GI/Poppler/Objects/AnnotMovie.hs
+++ b/GI/Poppler/Objects/AnnotMovie.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,10 +18,12 @@
 
  -- * Methods
 -- ** annotMovieGetMovie
+    AnnotMovieGetMovieMethodInfo            ,
     annotMovieGetMovie                      ,
 
 
 -- ** annotMovieGetTitle
+    AnnotMovieGetTitleMethodInfo            ,
     annotMovieGetTitle                      ,
 
 
@@ -60,17 +63,63 @@
 noAnnotMovie :: Maybe AnnotMovie
 noAnnotMovie = Nothing
 
+type family ResolveAnnotMovieMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotMovieMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotMovieMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotMovieMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotMovieMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotMovieMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotMovieMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotMovieMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotMovieMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotMovieMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotMovieMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotMovieMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotMovieMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotMovieMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotMovieMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotMovieMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotMovieMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotMovieMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotMovieMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotMovieMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotMovieMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotMovieMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotMovieMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotMovieMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotMovieMethod "getMovie" o = AnnotMovieGetMovieMethodInfo
+    ResolveAnnotMovieMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotMovieMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotMovieMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotMovieMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotMovieMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotMovieMethod "getTitle" o = AnnotMovieGetTitleMethodInfo
+    ResolveAnnotMovieMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotMovieMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotMovieMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotMovieMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotMovieMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotMovieMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotMovieMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotMovieMethod t AnnotMovie, MethodInfo info AnnotMovie p) => IsLabelProxy t (AnnotMovie -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotMovieMethod t AnnotMovie, MethodInfo info AnnotMovie p) => IsLabel t (AnnotMovie -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotMovie = AnnotMovieAttributeList
 type AnnotMovieAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotMovie = AnnotMovieSignalList
-type AnnotMovieSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotMovieSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotMovie::get_movie
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMovie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMovie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMovie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Movie"
 -- throws : False
 -- Skip return : False
@@ -82,8 +131,8 @@
 
 annotMovieGetMovie ::
     (MonadIO m, AnnotMovieK a) =>
-    a ->                                    -- _obj
-    m Movie
+    a                                       -- _obj
+    -> m Movie                              -- result
 annotMovieGetMovie _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_movie_get_movie _obj'
@@ -92,11 +141,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMovieGetMovieMethodInfo
+instance (signature ~ (m Movie), MonadIO m, AnnotMovieK a) => MethodInfo AnnotMovieGetMovieMethodInfo a signature where
+    overloadedMethod _ = annotMovieGetMovie
+
 -- method AnnotMovie::get_title
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMovie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMovie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMovie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -108,8 +160,8 @@
 
 annotMovieGetTitle ::
     (MonadIO m, AnnotMovieK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotMovieGetTitle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_movie_get_title _obj'
@@ -118,5 +170,9 @@
     freeMem result
     touchManagedPtr _obj
     return result'
+
+data AnnotMovieGetTitleMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotMovieK a) => MethodInfo AnnotMovieGetTitleMethodInfo a signature where
+    overloadedMethod _ = annotMovieGetTitle
 
 
diff --git a/GI/Poppler/Objects/AnnotMovie.hs-boot b/GI/Poppler/Objects/AnnotMovie.hs-boot
--- a/GI/Poppler/Objects/AnnotMovie.hs-boot
+++ b/GI/Poppler/Objects/AnnotMovie.hs-boot
@@ -11,3 +11,5 @@
 instance GObject AnnotMovie where
 class GObject o => AnnotMovieK o
 instance (GObject o, IsDescendantOf AnnotMovie o) => AnnotMovieK o
+data AnnotMovieGetMovieMethodInfo
+data AnnotMovieGetTitleMethodInfo
diff --git a/GI/Poppler/Objects/AnnotScreen.hs b/GI/Poppler/Objects/AnnotScreen.hs
--- a/GI/Poppler/Objects/AnnotScreen.hs
+++ b/GI/Poppler/Objects/AnnotScreen.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,6 +18,7 @@
 
  -- * Methods
 -- ** annotScreenGetAction
+    AnnotScreenGetActionMethodInfo          ,
     annotScreenGetAction                    ,
 
 
@@ -56,17 +58,62 @@
 noAnnotScreen :: Maybe AnnotScreen
 noAnnotScreen = Nothing
 
+type family ResolveAnnotScreenMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotScreenMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotScreenMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotScreenMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotScreenMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotScreenMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotScreenMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotScreenMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotScreenMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotScreenMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotScreenMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotScreenMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotScreenMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotScreenMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotScreenMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotScreenMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotScreenMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotScreenMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotScreenMethod "getAction" o = AnnotScreenGetActionMethodInfo
+    ResolveAnnotScreenMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotScreenMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotScreenMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotScreenMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotScreenMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotScreenMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotScreenMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotScreenMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotScreenMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotScreenMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotScreenMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotScreenMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotScreenMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotScreenMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotScreenMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotScreenMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotScreenMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotScreenMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotScreenMethod t AnnotScreen, MethodInfo info AnnotScreen p) => IsLabelProxy t (AnnotScreen -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotScreenMethod t AnnotScreen, MethodInfo info AnnotScreen p) => IsLabel t (AnnotScreen -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotScreen = AnnotScreenAttributeList
 type AnnotScreenAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotScreen = AnnotScreenSignalList
-type AnnotScreenSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotScreenSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotScreen::get_action
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotScreen", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotScreen", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotScreen", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Action"
 -- throws : False
 -- Skip return : False
@@ -78,8 +125,8 @@
 
 annotScreenGetAction ::
     (MonadIO m, AnnotScreenK a) =>
-    a ->                                    -- _obj
-    m Action
+    a                                       -- _obj
+    -> m Action                             -- result
 annotScreenGetAction _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_screen_get_action _obj'
@@ -87,5 +134,9 @@
     result' <- (newBoxed Action) result
     touchManagedPtr _obj
     return result'
+
+data AnnotScreenGetActionMethodInfo
+instance (signature ~ (m Action), MonadIO m, AnnotScreenK a) => MethodInfo AnnotScreenGetActionMethodInfo a signature where
+    overloadedMethod _ = annotScreenGetAction
 
 
diff --git a/GI/Poppler/Objects/AnnotScreen.hs-boot b/GI/Poppler/Objects/AnnotScreen.hs-boot
--- a/GI/Poppler/Objects/AnnotScreen.hs-boot
+++ b/GI/Poppler/Objects/AnnotScreen.hs-boot
@@ -11,3 +11,4 @@
 instance GObject AnnotScreen where
 class GObject o => AnnotScreenK o
 instance (GObject o, IsDescendantOf AnnotScreen o) => AnnotScreenK o
+data AnnotScreenGetActionMethodInfo
diff --git a/GI/Poppler/Objects/AnnotSquare.hs b/GI/Poppler/Objects/AnnotSquare.hs
--- a/GI/Poppler/Objects/AnnotSquare.hs
+++ b/GI/Poppler/Objects/AnnotSquare.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,6 +18,7 @@
 
  -- * Methods
 -- ** annotSquareGetInteriorColor
+    AnnotSquareGetInteriorColorMethodInfo   ,
     annotSquareGetInteriorColor             ,
 
 
@@ -25,6 +27,7 @@
 
 
 -- ** annotSquareSetInteriorColor
+    AnnotSquareSetInteriorColorMethodInfo   ,
     annotSquareSetInteriorColor             ,
 
 
@@ -64,17 +67,77 @@
 noAnnotSquare :: Maybe AnnotSquare
 noAnnotSquare = Nothing
 
+type family ResolveAnnotSquareMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotSquareMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotSquareMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotSquareMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotSquareMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotSquareMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotSquareMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotSquareMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotSquareMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotSquareMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotSquareMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotSquareMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotSquareMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotSquareMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotSquareMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotSquareMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotSquareMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotSquareMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotSquareMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotSquareMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotSquareMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotSquareMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotSquareMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotSquareMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotSquareMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotSquareMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotSquareMethod "getInteriorColor" o = AnnotSquareGetInteriorColorMethodInfo
+    ResolveAnnotSquareMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotSquareMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotSquareMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotSquareMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotSquareMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotSquareMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotSquareMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotSquareMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotSquareMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotSquareMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotSquareMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotSquareMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotSquareMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotSquareMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotSquareMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotSquareMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotSquareMethod "setInteriorColor" o = AnnotSquareSetInteriorColorMethodInfo
+    ResolveAnnotSquareMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotSquareMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotSquareMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotSquareMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotSquareMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotSquareMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotSquareMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotSquareMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotSquareMethod t AnnotSquare, MethodInfo info AnnotSquare p) => IsLabelProxy t (AnnotSquare -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotSquareMethod t AnnotSquare, MethodInfo info AnnotSquare p) => IsLabel t (AnnotSquare -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotSquare = AnnotSquareAttributeList
 type AnnotSquareAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotSquare = AnnotSquareSignalList
-type AnnotSquareSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotSquareSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotSquare::new
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotSquare"
 -- throws : False
 -- Skip return : False
@@ -87,9 +150,9 @@
 
 annotSquareNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    m AnnotSquare
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> m AnnotSquare                        -- result
 annotSquareNew doc rect = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -102,9 +165,8 @@
 
 -- method AnnotSquare::get_interior_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotSquare", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotSquare", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotSquare", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Color"
 -- throws : False
 -- Skip return : False
@@ -116,8 +178,8 @@
 
 annotSquareGetInteriorColor ::
     (MonadIO m, AnnotSquareK a) =>
-    a ->                                    -- _obj
-    m Color
+    a                                       -- _obj
+    -> m Color                              -- result
 annotSquareGetInteriorColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_square_get_interior_color _obj'
@@ -126,11 +188,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotSquareGetInteriorColorMethodInfo
+instance (signature ~ (m Color), MonadIO m, AnnotSquareK a) => MethodInfo AnnotSquareGetInteriorColorMethodInfo a signature where
+    overloadedMethod _ = annotSquareGetInteriorColor
+
 -- method AnnotSquare::set_interior_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotSquare", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotSquare", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotSquare", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "poppler_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -143,19 +208,23 @@
 
 annotSquareSetInteriorColor ::
     (MonadIO m, AnnotSquareK a) =>
-    a ->                                    -- _obj
-    Maybe (Color) ->                        -- poppler_color
-    m ()
-annotSquareSetInteriorColor _obj poppler_color = liftIO $ do
+    a                                       -- _obj
+    -> Maybe (Color)                        -- popplerColor
+    -> m ()                                 -- result
+annotSquareSetInteriorColor _obj popplerColor = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    maybePoppler_color <- case poppler_color of
+    maybePopplerColor <- case popplerColor of
         Nothing -> return nullPtr
-        Just jPoppler_color -> do
-            let jPoppler_color' = unsafeManagedPtrGetPtr jPoppler_color
-            return jPoppler_color'
-    poppler_annot_square_set_interior_color _obj' maybePoppler_color
+        Just jPopplerColor -> do
+            let jPopplerColor' = unsafeManagedPtrGetPtr jPopplerColor
+            return jPopplerColor'
+    poppler_annot_square_set_interior_color _obj' maybePopplerColor
     touchManagedPtr _obj
-    whenJust poppler_color touchManagedPtr
+    whenJust popplerColor touchManagedPtr
     return ()
+
+data AnnotSquareSetInteriorColorMethodInfo
+instance (signature ~ (Maybe (Color) -> m ()), MonadIO m, AnnotSquareK a) => MethodInfo AnnotSquareSetInteriorColorMethodInfo a signature where
+    overloadedMethod _ = annotSquareSetInteriorColor
 
 
diff --git a/GI/Poppler/Objects/AnnotSquare.hs-boot b/GI/Poppler/Objects/AnnotSquare.hs-boot
--- a/GI/Poppler/Objects/AnnotSquare.hs-boot
+++ b/GI/Poppler/Objects/AnnotSquare.hs-boot
@@ -11,3 +11,5 @@
 instance GObject AnnotSquare where
 class GObject o => AnnotSquareK o
 instance (GObject o, IsDescendantOf AnnotSquare o) => AnnotSquareK o
+data AnnotSquareGetInteriorColorMethodInfo
+data AnnotSquareSetInteriorColorMethodInfo
diff --git a/GI/Poppler/Objects/AnnotText.hs b/GI/Poppler/Objects/AnnotText.hs
--- a/GI/Poppler/Objects/AnnotText.hs
+++ b/GI/Poppler/Objects/AnnotText.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,14 +18,17 @@
 
  -- * Methods
 -- ** annotTextGetIcon
+    AnnotTextGetIconMethodInfo              ,
     annotTextGetIcon                        ,
 
 
 -- ** annotTextGetIsOpen
+    AnnotTextGetIsOpenMethodInfo            ,
     annotTextGetIsOpen                      ,
 
 
 -- ** annotTextGetState
+    AnnotTextGetStateMethodInfo             ,
     annotTextGetState                       ,
 
 
@@ -33,10 +37,12 @@
 
 
 -- ** annotTextSetIcon
+    AnnotTextSetIconMethodInfo              ,
     annotTextSetIcon                        ,
 
 
 -- ** annotTextSetIsOpen
+    AnnotTextSetIsOpenMethodInfo            ,
     annotTextSetIsOpen                      ,
 
 
@@ -76,17 +82,80 @@
 noAnnotText :: Maybe AnnotText
 noAnnotText = Nothing
 
+type family ResolveAnnotTextMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotTextMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotTextMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotTextMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotTextMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotTextMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotTextMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotTextMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotTextMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotTextMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotTextMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotTextMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotTextMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotTextMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotTextMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotTextMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotTextMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotTextMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotTextMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotTextMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotTextMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotTextMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotTextMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotTextMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotTextMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotTextMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotTextMethod "getIcon" o = AnnotTextGetIconMethodInfo
+    ResolveAnnotTextMethod "getIsOpen" o = AnnotTextGetIsOpenMethodInfo
+    ResolveAnnotTextMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotTextMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotTextMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotTextMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotTextMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotTextMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotTextMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotTextMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotTextMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotTextMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotTextMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotTextMethod "getState" o = AnnotTextGetStateMethodInfo
+    ResolveAnnotTextMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotTextMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotTextMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotTextMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotTextMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotTextMethod "setIcon" o = AnnotTextSetIconMethodInfo
+    ResolveAnnotTextMethod "setIsOpen" o = AnnotTextSetIsOpenMethodInfo
+    ResolveAnnotTextMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotTextMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotTextMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotTextMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotTextMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotTextMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotTextMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotTextMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotTextMethod t AnnotText, MethodInfo info AnnotText p) => IsLabelProxy t (AnnotText -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotTextMethod t AnnotText, MethodInfo info AnnotText p) => IsLabel t (AnnotText -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotText = AnnotTextAttributeList
 type AnnotTextAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotText = AnnotTextSignalList
-type AnnotTextSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotTextSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotText::new
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotText"
 -- throws : False
 -- Skip return : False
@@ -99,9 +168,9 @@
 
 annotTextNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    m AnnotText
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> m AnnotText                          -- result
 annotTextNew doc rect = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -114,9 +183,8 @@
 
 -- method AnnotText::get_icon
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -128,8 +196,8 @@
 
 annotTextGetIcon ::
     (MonadIO m, AnnotTextK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 annotTextGetIcon _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_text_get_icon _obj'
@@ -139,11 +207,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotTextGetIconMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, AnnotTextK a) => MethodInfo AnnotTextGetIconMethodInfo a signature where
+    overloadedMethod _ = annotTextGetIcon
+
 -- method AnnotText::get_is_open
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -155,8 +226,8 @@
 
 annotTextGetIsOpen ::
     (MonadIO m, AnnotTextK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 annotTextGetIsOpen _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_text_get_is_open _obj'
@@ -164,11 +235,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotTextGetIsOpenMethodInfo
+instance (signature ~ (m Bool), MonadIO m, AnnotTextK a) => MethodInfo AnnotTextGetIsOpenMethodInfo a signature where
+    overloadedMethod _ = annotTextGetIsOpen
+
 -- method AnnotText::get_state
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotTextState"
 -- throws : False
 -- Skip return : False
@@ -180,8 +254,8 @@
 
 annotTextGetState ::
     (MonadIO m, AnnotTextK a) =>
-    a ->                                    -- _obj
-    m AnnotTextState
+    a                                       -- _obj
+    -> m AnnotTextState                     -- result
 annotTextGetState _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_text_get_state _obj'
@@ -189,11 +263,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotTextGetStateMethodInfo
+instance (signature ~ (m AnnotTextState), MonadIO m, AnnotTextK a) => MethodInfo AnnotTextGetStateMethodInfo a signature where
+    overloadedMethod _ = annotTextGetState
+
 -- method AnnotText::set_icon
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -206,9 +283,9 @@
 
 annotTextSetIcon ::
     (MonadIO m, AnnotTextK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- icon
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- icon
+    -> m ()                                 -- result
 annotTextSetIcon _obj icon = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     icon' <- textToCString icon
@@ -217,11 +294,14 @@
     freeMem icon'
     return ()
 
+data AnnotTextSetIconMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, AnnotTextK a) => MethodInfo AnnotTextSetIconMethodInfo a signature where
+    overloadedMethod _ = annotTextSetIcon
+
 -- method AnnotText::set_is_open
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "is_open", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "is_open", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "is_open", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -234,14 +314,18 @@
 
 annotTextSetIsOpen ::
     (MonadIO m, AnnotTextK a) =>
-    a ->                                    -- _obj
-    Bool ->                                 -- is_open
-    m ()
-annotTextSetIsOpen _obj is_open = liftIO $ do
+    a                                       -- _obj
+    -> Bool                                 -- isOpen
+    -> m ()                                 -- result
+annotTextSetIsOpen _obj isOpen = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    let is_open' = (fromIntegral . fromEnum) is_open
-    poppler_annot_text_set_is_open _obj' is_open'
+    let isOpen' = (fromIntegral . fromEnum) isOpen
+    poppler_annot_text_set_is_open _obj' isOpen'
     touchManagedPtr _obj
     return ()
+
+data AnnotTextSetIsOpenMethodInfo
+instance (signature ~ (Bool -> m ()), MonadIO m, AnnotTextK a) => MethodInfo AnnotTextSetIsOpenMethodInfo a signature where
+    overloadedMethod _ = annotTextSetIsOpen
 
 
diff --git a/GI/Poppler/Objects/AnnotText.hs-boot b/GI/Poppler/Objects/AnnotText.hs-boot
--- a/GI/Poppler/Objects/AnnotText.hs-boot
+++ b/GI/Poppler/Objects/AnnotText.hs-boot
@@ -11,3 +11,8 @@
 instance GObject AnnotText where
 class GObject o => AnnotTextK o
 instance (GObject o, IsDescendantOf AnnotText o) => AnnotTextK o
+data AnnotTextGetIconMethodInfo
+data AnnotTextGetIsOpenMethodInfo
+data AnnotTextGetStateMethodInfo
+data AnnotTextSetIconMethodInfo
+data AnnotTextSetIsOpenMethodInfo
diff --git a/GI/Poppler/Objects/AnnotTextMarkup.hs b/GI/Poppler/Objects/AnnotTextMarkup.hs
--- a/GI/Poppler/Objects/AnnotTextMarkup.hs
+++ b/GI/Poppler/Objects/AnnotTextMarkup.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,6 +18,7 @@
 
  -- * Methods
 -- ** annotTextMarkupGetQuadrilaterals
+    AnnotTextMarkupGetQuadrilateralsMethodInfo,
     annotTextMarkupGetQuadrilaterals        ,
 
 
@@ -37,6 +39,7 @@
 
 
 -- ** annotTextMarkupSetQuadrilaterals
+    AnnotTextMarkupSetQuadrilateralsMethodInfo,
     annotTextMarkupSetQuadrilaterals        ,
 
 
@@ -76,17 +79,77 @@
 noAnnotTextMarkup :: Maybe AnnotTextMarkup
 noAnnotTextMarkup = Nothing
 
+type family ResolveAnnotTextMarkupMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotTextMarkupMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAnnotTextMarkupMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAnnotTextMarkupMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAnnotTextMarkupMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAnnotTextMarkupMethod "hasPopup" o = AnnotMarkupHasPopupMethodInfo
+    ResolveAnnotTextMarkupMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAnnotTextMarkupMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAnnotTextMarkupMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAnnotTextMarkupMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAnnotTextMarkupMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAnnotTextMarkupMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAnnotTextMarkupMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAnnotTextMarkupMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAnnotTextMarkupMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAnnotTextMarkupMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAnnotTextMarkupMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAnnotTextMarkupMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAnnotTextMarkupMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAnnotTextMarkupMethod "getAnnotType" o = AnnotGetAnnotTypeMethodInfo
+    ResolveAnnotTextMarkupMethod "getColor" o = AnnotGetColorMethodInfo
+    ResolveAnnotTextMarkupMethod "getContents" o = AnnotGetContentsMethodInfo
+    ResolveAnnotTextMarkupMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAnnotTextMarkupMethod "getDate" o = AnnotMarkupGetDateMethodInfo
+    ResolveAnnotTextMarkupMethod "getExternalData" o = AnnotMarkupGetExternalDataMethodInfo
+    ResolveAnnotTextMarkupMethod "getFlags" o = AnnotGetFlagsMethodInfo
+    ResolveAnnotTextMarkupMethod "getLabel" o = AnnotMarkupGetLabelMethodInfo
+    ResolveAnnotTextMarkupMethod "getModified" o = AnnotGetModifiedMethodInfo
+    ResolveAnnotTextMarkupMethod "getName" o = AnnotGetNameMethodInfo
+    ResolveAnnotTextMarkupMethod "getOpacity" o = AnnotMarkupGetOpacityMethodInfo
+    ResolveAnnotTextMarkupMethod "getPageIndex" o = AnnotGetPageIndexMethodInfo
+    ResolveAnnotTextMarkupMethod "getPopupIsOpen" o = AnnotMarkupGetPopupIsOpenMethodInfo
+    ResolveAnnotTextMarkupMethod "getPopupRectangle" o = AnnotMarkupGetPopupRectangleMethodInfo
+    ResolveAnnotTextMarkupMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAnnotTextMarkupMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAnnotTextMarkupMethod "getQuadrilaterals" o = AnnotTextMarkupGetQuadrilateralsMethodInfo
+    ResolveAnnotTextMarkupMethod "getRectangle" o = AnnotGetRectangleMethodInfo
+    ResolveAnnotTextMarkupMethod "getReplyTo" o = AnnotMarkupGetReplyToMethodInfo
+    ResolveAnnotTextMarkupMethod "getSubject" o = AnnotMarkupGetSubjectMethodInfo
+    ResolveAnnotTextMarkupMethod "setColor" o = AnnotSetColorMethodInfo
+    ResolveAnnotTextMarkupMethod "setContents" o = AnnotSetContentsMethodInfo
+    ResolveAnnotTextMarkupMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAnnotTextMarkupMethod "setFlags" o = AnnotSetFlagsMethodInfo
+    ResolveAnnotTextMarkupMethod "setLabel" o = AnnotMarkupSetLabelMethodInfo
+    ResolveAnnotTextMarkupMethod "setOpacity" o = AnnotMarkupSetOpacityMethodInfo
+    ResolveAnnotTextMarkupMethod "setPopup" o = AnnotMarkupSetPopupMethodInfo
+    ResolveAnnotTextMarkupMethod "setPopupIsOpen" o = AnnotMarkupSetPopupIsOpenMethodInfo
+    ResolveAnnotTextMarkupMethod "setPopupRectangle" o = AnnotMarkupSetPopupRectangleMethodInfo
+    ResolveAnnotTextMarkupMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAnnotTextMarkupMethod "setQuadrilaterals" o = AnnotTextMarkupSetQuadrilateralsMethodInfo
+    ResolveAnnotTextMarkupMethod "setRectangle" o = AnnotSetRectangleMethodInfo
+    ResolveAnnotTextMarkupMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotTextMarkupMethod t AnnotTextMarkup, MethodInfo info AnnotTextMarkup p) => IsLabelProxy t (AnnotTextMarkup -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotTextMarkupMethod t AnnotTextMarkup, MethodInfo info AnnotTextMarkup p) => IsLabel t (AnnotTextMarkup -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList AnnotTextMarkup = AnnotTextMarkupAttributeList
 type AnnotTextMarkupAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList AnnotTextMarkup = AnnotTextMarkupSignalList
-type AnnotTextMarkupSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AnnotTextMarkupSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method AnnotTextMarkup::new_highlight
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotTextMarkup"
 -- throws : False
 -- Skip return : False
@@ -100,10 +163,10 @@
 
 annotTextMarkupNewHighlight ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    [Quadrilateral] ->                      -- quadrilaterals
-    m AnnotTextMarkup
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> [Quadrilateral]                      -- quadrilaterals
+    -> m AnnotTextMarkup                    -- result
 annotTextMarkupNewHighlight doc rect quadrilaterals = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -120,9 +183,8 @@
 
 -- method AnnotTextMarkup::new_squiggly
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotTextMarkup"
 -- throws : False
 -- Skip return : False
@@ -136,10 +198,10 @@
 
 annotTextMarkupNewSquiggly ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    [Quadrilateral] ->                      -- quadrilaterals
-    m AnnotTextMarkup
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> [Quadrilateral]                      -- quadrilaterals
+    -> m AnnotTextMarkup                    -- result
 annotTextMarkupNewSquiggly doc rect quadrilaterals = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -156,9 +218,8 @@
 
 -- method AnnotTextMarkup::new_strikeout
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotTextMarkup"
 -- throws : False
 -- Skip return : False
@@ -172,10 +233,10 @@
 
 annotTextMarkupNewStrikeout ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    [Quadrilateral] ->                      -- quadrilaterals
-    m AnnotTextMarkup
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> [Quadrilateral]                      -- quadrilaterals
+    -> m AnnotTextMarkup                    -- result
 annotTextMarkupNewStrikeout doc rect quadrilaterals = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -192,9 +253,8 @@
 
 -- method AnnotTextMarkup::new_underline
 -- method type : Constructor
--- Args : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "doc", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotTextMarkup"
 -- throws : False
 -- Skip return : False
@@ -208,10 +268,10 @@
 
 annotTextMarkupNewUnderline ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- doc
-    Rectangle ->                            -- rect
-    [Quadrilateral] ->                      -- quadrilaterals
-    m AnnotTextMarkup
+    a                                       -- doc
+    -> Rectangle                            -- rect
+    -> [Quadrilateral]                      -- quadrilaterals
+    -> m AnnotTextMarkup                    -- result
 annotTextMarkupNewUnderline doc rect quadrilaterals = liftIO $ do
     let doc' = unsafeManagedPtrCastPtr doc
     let rect' = unsafeManagedPtrGetPtr rect
@@ -228,9 +288,8 @@
 
 -- method AnnotTextMarkup::get_quadrilaterals
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotTextMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotTextMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotTextMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGArray (TInterface "Poppler" "Quadrilateral")
 -- throws : False
 -- Skip return : False
@@ -242,8 +301,8 @@
 
 annotTextMarkupGetQuadrilaterals ::
     (MonadIO m, AnnotTextMarkupK a) =>
-    a ->                                    -- _obj
-    m [Quadrilateral]
+    a                                       -- _obj
+    -> m [Quadrilateral]                    -- result
 annotTextMarkupGetQuadrilaterals _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_annot_text_markup_get_quadrilaterals _obj'
@@ -254,11 +313,14 @@
     touchManagedPtr _obj
     return result''
 
+data AnnotTextMarkupGetQuadrilateralsMethodInfo
+instance (signature ~ (m [Quadrilateral]), MonadIO m, AnnotTextMarkupK a) => MethodInfo AnnotTextMarkupGetQuadrilateralsMethodInfo a signature where
+    overloadedMethod _ = annotTextMarkupGetQuadrilaterals
+
 -- method AnnotTextMarkup::set_quadrilaterals
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotTextMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotTextMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotTextMarkup", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "quadrilaterals", argType = TGArray (TInterface "Poppler" "Quadrilateral"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -271,9 +333,9 @@
 
 annotTextMarkupSetQuadrilaterals ::
     (MonadIO m, AnnotTextMarkupK a) =>
-    a ->                                    -- _obj
-    [Quadrilateral] ->                      -- quadrilaterals
-    m ()
+    a                                       -- _obj
+    -> [Quadrilateral]                      -- quadrilaterals
+    -> m ()                                 -- result
 annotTextMarkupSetQuadrilaterals _obj quadrilaterals = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let quadrilaterals' = map unsafeManagedPtrGetPtr quadrilaterals
@@ -283,5 +345,9 @@
     mapM_ touchManagedPtr quadrilaterals
     unrefGArray quadrilaterals''
     return ()
+
+data AnnotTextMarkupSetQuadrilateralsMethodInfo
+instance (signature ~ ([Quadrilateral] -> m ()), MonadIO m, AnnotTextMarkupK a) => MethodInfo AnnotTextMarkupSetQuadrilateralsMethodInfo a signature where
+    overloadedMethod _ = annotTextMarkupSetQuadrilaterals
 
 
diff --git a/GI/Poppler/Objects/AnnotTextMarkup.hs-boot b/GI/Poppler/Objects/AnnotTextMarkup.hs-boot
--- a/GI/Poppler/Objects/AnnotTextMarkup.hs-boot
+++ b/GI/Poppler/Objects/AnnotTextMarkup.hs-boot
@@ -11,3 +11,5 @@
 instance GObject AnnotTextMarkup where
 class GObject o => AnnotTextMarkupK o
 instance (GObject o, IsDescendantOf AnnotTextMarkup o) => AnnotTextMarkupK o
+data AnnotTextMarkupGetQuadrilateralsMethodInfo
+data AnnotTextMarkupSetQuadrilateralsMethodInfo
diff --git a/GI/Poppler/Objects/Attachment.hs b/GI/Poppler/Objects/Attachment.hs
--- a/GI/Poppler/Objects/Attachment.hs
+++ b/GI/Poppler/Objects/Attachment.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,10 +18,12 @@
 
  -- * Methods
 -- ** attachmentSave
+    AttachmentSaveMethodInfo                ,
     attachmentSave                          ,
 
 
 -- ** attachmentSaveToCallback
+    AttachmentSaveToCallbackMethodInfo      ,
     attachmentSaveToCallback                ,
 
 
@@ -60,17 +63,51 @@
 noAttachment :: Maybe Attachment
 noAttachment = Nothing
 
+type family ResolveAttachmentMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAttachmentMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveAttachmentMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveAttachmentMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveAttachmentMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveAttachmentMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveAttachmentMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveAttachmentMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveAttachmentMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveAttachmentMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveAttachmentMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveAttachmentMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveAttachmentMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveAttachmentMethod "save" o = AttachmentSaveMethodInfo
+    ResolveAttachmentMethod "saveToCallback" o = AttachmentSaveToCallbackMethodInfo
+    ResolveAttachmentMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveAttachmentMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveAttachmentMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveAttachmentMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveAttachmentMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveAttachmentMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveAttachmentMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveAttachmentMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveAttachmentMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveAttachmentMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveAttachmentMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAttachmentMethod t Attachment, MethodInfo info Attachment p) => IsLabelProxy t (Attachment -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAttachmentMethod t Attachment, MethodInfo info Attachment p) => IsLabel t (Attachment -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList Attachment = AttachmentAttributeList
 type AttachmentAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList Attachment = AttachmentSignalList
-type AttachmentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type AttachmentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Attachment::save
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Attachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Attachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Attachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : True
 -- Skip return : False
@@ -84,9 +121,9 @@
 
 attachmentSave ::
     (MonadIO m, AttachmentK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- filename
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- filename
+    -> m ()                                 -- result
 attachmentSave _obj filename = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     filename' <- textToCString filename
@@ -99,11 +136,14 @@
         freeMem filename'
      )
 
+data AttachmentSaveMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, AttachmentK a) => MethodInfo AttachmentSaveMethodInfo a signature where
+    overloadedMethod _ = attachmentSave
+
 -- method Attachment::save_to_callback
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Attachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "save_func", argType = TInterface "Poppler" "AttachmentSaveFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Attachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "save_func", argType = TInterface "Poppler" "AttachmentSaveFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Attachment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "save_func", argType = TInterface "Poppler" "AttachmentSaveFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : True
 -- Skip return : False
@@ -118,21 +158,25 @@
 
 attachmentSaveToCallback ::
     (MonadIO m, AttachmentK a) =>
-    a ->                                    -- _obj
-    AttachmentSaveFunc ->                   -- save_func
-    m ()
-attachmentSaveToCallback _obj save_func = liftIO $ do
+    a                                       -- _obj
+    -> AttachmentSaveFunc                   -- saveFunc
+    -> m ()                                 -- result
+attachmentSaveToCallback _obj saveFunc = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    save_func' <- mkAttachmentSaveFunc (attachmentSaveFuncWrapper Nothing save_func)
-    let user_data = nullPtr
+    saveFunc' <- mkAttachmentSaveFunc (attachmentSaveFuncWrapper Nothing saveFunc)
+    let userData = nullPtr
     onException (do
-        _ <- propagateGError $ poppler_attachment_save_to_callback _obj' save_func' user_data
-        safeFreeFunPtr $ castFunPtrToPtr save_func'
+        _ <- propagateGError $ poppler_attachment_save_to_callback _obj' saveFunc' userData
+        safeFreeFunPtr $ castFunPtrToPtr saveFunc'
         touchManagedPtr _obj
         return ()
      ) (do
-        safeFreeFunPtr $ castFunPtrToPtr save_func'
+        safeFreeFunPtr $ castFunPtrToPtr saveFunc'
         return ()
      )
+
+data AttachmentSaveToCallbackMethodInfo
+instance (signature ~ (AttachmentSaveFunc -> m ()), MonadIO m, AttachmentK a) => MethodInfo AttachmentSaveToCallbackMethodInfo a signature where
+    overloadedMethod _ = attachmentSaveToCallback
 
 
diff --git a/GI/Poppler/Objects/Attachment.hs-boot b/GI/Poppler/Objects/Attachment.hs-boot
--- a/GI/Poppler/Objects/Attachment.hs-boot
+++ b/GI/Poppler/Objects/Attachment.hs-boot
@@ -11,3 +11,5 @@
 instance GObject Attachment where
 class GObject o => AttachmentK o
 instance (GObject o, IsDescendantOf Attachment o) => AttachmentK o
+data AttachmentSaveMethodInfo
+data AttachmentSaveToCallbackMethodInfo
diff --git a/GI/Poppler/Objects/Document.hs b/GI/Poppler/Objects/Document.hs
--- a/GI/Poppler/Objects/Document.hs
+++ b/GI/Poppler/Objects/Document.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,98 +18,122 @@
 
  -- * Methods
 -- ** documentFindDest
+    DocumentFindDestMethodInfo              ,
     documentFindDest                        ,
 
 
 -- ** documentGetAttachments
+    DocumentGetAttachmentsMethodInfo        ,
     documentGetAttachments                  ,
 
 
 -- ** documentGetAuthor
+    DocumentGetAuthorMethodInfo             ,
     documentGetAuthor                       ,
 
 
 -- ** documentGetCreationDate
+    DocumentGetCreationDateMethodInfo       ,
     documentGetCreationDate                 ,
 
 
 -- ** documentGetCreator
+    DocumentGetCreatorMethodInfo            ,
     documentGetCreator                      ,
 
 
 -- ** documentGetFormField
+    DocumentGetFormFieldMethodInfo          ,
     documentGetFormField                    ,
 
 
 -- ** documentGetId
+    DocumentGetIdMethodInfo                 ,
     documentGetId                           ,
 
 
 -- ** documentGetKeywords
+    DocumentGetKeywordsMethodInfo           ,
     documentGetKeywords                     ,
 
 
 -- ** documentGetMetadata
+    DocumentGetMetadataMethodInfo           ,
     documentGetMetadata                     ,
 
 
 -- ** documentGetModificationDate
+    DocumentGetModificationDateMethodInfo   ,
     documentGetModificationDate             ,
 
 
 -- ** documentGetNAttachments
+    DocumentGetNAttachmentsMethodInfo       ,
     documentGetNAttachments                 ,
 
 
 -- ** documentGetNPages
+    DocumentGetNPagesMethodInfo             ,
     documentGetNPages                       ,
 
 
 -- ** documentGetPage
+    DocumentGetPageMethodInfo               ,
     documentGetPage                         ,
 
 
 -- ** documentGetPageByLabel
+    DocumentGetPageByLabelMethodInfo        ,
     documentGetPageByLabel                  ,
 
 
 -- ** documentGetPageLayout
+    DocumentGetPageLayoutMethodInfo         ,
     documentGetPageLayout                   ,
 
 
 -- ** documentGetPageMode
+    DocumentGetPageModeMethodInfo           ,
     documentGetPageMode                     ,
 
 
 -- ** documentGetPdfVersion
+    DocumentGetPdfVersionMethodInfo         ,
     documentGetPdfVersion                   ,
 
 
 -- ** documentGetPdfVersionString
+    DocumentGetPdfVersionStringMethodInfo   ,
     documentGetPdfVersionString             ,
 
 
 -- ** documentGetPermissions
+    DocumentGetPermissionsMethodInfo        ,
     documentGetPermissions                  ,
 
 
 -- ** documentGetProducer
+    DocumentGetProducerMethodInfo           ,
     documentGetProducer                     ,
 
 
 -- ** documentGetSubject
+    DocumentGetSubjectMethodInfo            ,
     documentGetSubject                      ,
 
 
 -- ** documentGetTitle
+    DocumentGetTitleMethodInfo              ,
     documentGetTitle                        ,
 
 
 -- ** documentHasAttachments
+    DocumentHasAttachmentsMethodInfo        ,
     documentHasAttachments                  ,
 
 
 -- ** documentIsLinearized
+    DocumentIsLinearizedMethodInfo          ,
     documentIsLinearized                    ,
 
 
@@ -129,10 +154,12 @@
 
 
 -- ** documentSave
+    DocumentSaveMethodInfo                  ,
     documentSave                            ,
 
 
 -- ** documentSaveACopy
+    DocumentSaveACopyMethodInfo             ,
     documentSaveACopy                       ,
 
 
@@ -261,6 +288,65 @@
 noDocument :: Maybe Document
 noDocument = Nothing
 
+type family ResolveDocumentMethod (t :: Symbol) (o :: *) :: * where
+    ResolveDocumentMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveDocumentMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveDocumentMethod "findDest" o = DocumentFindDestMethodInfo
+    ResolveDocumentMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveDocumentMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveDocumentMethod "hasAttachments" o = DocumentHasAttachmentsMethodInfo
+    ResolveDocumentMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveDocumentMethod "isLinearized" o = DocumentIsLinearizedMethodInfo
+    ResolveDocumentMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveDocumentMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveDocumentMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveDocumentMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveDocumentMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveDocumentMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveDocumentMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveDocumentMethod "save" o = DocumentSaveMethodInfo
+    ResolveDocumentMethod "saveACopy" o = DocumentSaveACopyMethodInfo
+    ResolveDocumentMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveDocumentMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveDocumentMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveDocumentMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveDocumentMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveDocumentMethod "getAttachments" o = DocumentGetAttachmentsMethodInfo
+    ResolveDocumentMethod "getAuthor" o = DocumentGetAuthorMethodInfo
+    ResolveDocumentMethod "getCreationDate" o = DocumentGetCreationDateMethodInfo
+    ResolveDocumentMethod "getCreator" o = DocumentGetCreatorMethodInfo
+    ResolveDocumentMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveDocumentMethod "getFormField" o = DocumentGetFormFieldMethodInfo
+    ResolveDocumentMethod "getId" o = DocumentGetIdMethodInfo
+    ResolveDocumentMethod "getKeywords" o = DocumentGetKeywordsMethodInfo
+    ResolveDocumentMethod "getMetadata" o = DocumentGetMetadataMethodInfo
+    ResolveDocumentMethod "getModificationDate" o = DocumentGetModificationDateMethodInfo
+    ResolveDocumentMethod "getNAttachments" o = DocumentGetNAttachmentsMethodInfo
+    ResolveDocumentMethod "getNPages" o = DocumentGetNPagesMethodInfo
+    ResolveDocumentMethod "getPage" o = DocumentGetPageMethodInfo
+    ResolveDocumentMethod "getPageByLabel" o = DocumentGetPageByLabelMethodInfo
+    ResolveDocumentMethod "getPageLayout" o = DocumentGetPageLayoutMethodInfo
+    ResolveDocumentMethod "getPageMode" o = DocumentGetPageModeMethodInfo
+    ResolveDocumentMethod "getPdfVersion" o = DocumentGetPdfVersionMethodInfo
+    ResolveDocumentMethod "getPdfVersionString" o = DocumentGetPdfVersionStringMethodInfo
+    ResolveDocumentMethod "getPermissions" o = DocumentGetPermissionsMethodInfo
+    ResolveDocumentMethod "getProducer" o = DocumentGetProducerMethodInfo
+    ResolveDocumentMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveDocumentMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveDocumentMethod "getSubject" o = DocumentGetSubjectMethodInfo
+    ResolveDocumentMethod "getTitle" o = DocumentGetTitleMethodInfo
+    ResolveDocumentMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveDocumentMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveDocumentMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveDocumentMethod t Document, MethodInfo info Document p) => IsLabelProxy t (Document -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveDocumentMethod t Document, MethodInfo info Document p) => IsLabel t (Document -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 -- VVV Prop "author"
    -- Type: TBasicType TUTF8
    -- Flags: [PropertyReadable]
@@ -274,7 +360,7 @@
     type AttrSetTypeConstraint DocumentAuthorPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentAuthorPropertyInfo = DocumentK
     type AttrGetType DocumentAuthorPropertyInfo = T.Text
-    type AttrLabel DocumentAuthorPropertyInfo = "Document::author"
+    type AttrLabel DocumentAuthorPropertyInfo = "author"
     attrGet _ = getDocumentAuthor
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -292,7 +378,7 @@
     type AttrSetTypeConstraint DocumentCreationDatePropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentCreationDatePropertyInfo = DocumentK
     type AttrGetType DocumentCreationDatePropertyInfo = Int32
-    type AttrLabel DocumentCreationDatePropertyInfo = "Document::creation-date"
+    type AttrLabel DocumentCreationDatePropertyInfo = "creation-date"
     attrGet _ = getDocumentCreationDate
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -310,7 +396,7 @@
     type AttrSetTypeConstraint DocumentCreatorPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentCreatorPropertyInfo = DocumentK
     type AttrGetType DocumentCreatorPropertyInfo = T.Text
-    type AttrLabel DocumentCreatorPropertyInfo = "Document::creator"
+    type AttrLabel DocumentCreatorPropertyInfo = "creator"
     attrGet _ = getDocumentCreator
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -328,7 +414,7 @@
     type AttrSetTypeConstraint DocumentFormatPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentFormatPropertyInfo = DocumentK
     type AttrGetType DocumentFormatPropertyInfo = T.Text
-    type AttrLabel DocumentFormatPropertyInfo = "Document::format"
+    type AttrLabel DocumentFormatPropertyInfo = "format"
     attrGet _ = getDocumentFormat
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -346,7 +432,7 @@
     type AttrSetTypeConstraint DocumentFormatMajorPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentFormatMajorPropertyInfo = DocumentK
     type AttrGetType DocumentFormatMajorPropertyInfo = Word32
-    type AttrLabel DocumentFormatMajorPropertyInfo = "Document::format-major"
+    type AttrLabel DocumentFormatMajorPropertyInfo = "format-major"
     attrGet _ = getDocumentFormatMajor
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -364,7 +450,7 @@
     type AttrSetTypeConstraint DocumentFormatMinorPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentFormatMinorPropertyInfo = DocumentK
     type AttrGetType DocumentFormatMinorPropertyInfo = Word32
-    type AttrLabel DocumentFormatMinorPropertyInfo = "Document::format-minor"
+    type AttrLabel DocumentFormatMinorPropertyInfo = "format-minor"
     attrGet _ = getDocumentFormatMinor
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -382,7 +468,7 @@
     type AttrSetTypeConstraint DocumentKeywordsPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentKeywordsPropertyInfo = DocumentK
     type AttrGetType DocumentKeywordsPropertyInfo = T.Text
-    type AttrLabel DocumentKeywordsPropertyInfo = "Document::keywords"
+    type AttrLabel DocumentKeywordsPropertyInfo = "keywords"
     attrGet _ = getDocumentKeywords
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -400,7 +486,7 @@
     type AttrSetTypeConstraint DocumentLinearizedPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentLinearizedPropertyInfo = DocumentK
     type AttrGetType DocumentLinearizedPropertyInfo = Bool
-    type AttrLabel DocumentLinearizedPropertyInfo = "Document::linearized"
+    type AttrLabel DocumentLinearizedPropertyInfo = "linearized"
     attrGet _ = getDocumentLinearized
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -418,7 +504,7 @@
     type AttrSetTypeConstraint DocumentMetadataPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentMetadataPropertyInfo = DocumentK
     type AttrGetType DocumentMetadataPropertyInfo = T.Text
-    type AttrLabel DocumentMetadataPropertyInfo = "Document::metadata"
+    type AttrLabel DocumentMetadataPropertyInfo = "metadata"
     attrGet _ = getDocumentMetadata
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -436,7 +522,7 @@
     type AttrSetTypeConstraint DocumentModDatePropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentModDatePropertyInfo = DocumentK
     type AttrGetType DocumentModDatePropertyInfo = Int32
-    type AttrLabel DocumentModDatePropertyInfo = "Document::mod-date"
+    type AttrLabel DocumentModDatePropertyInfo = "mod-date"
     attrGet _ = getDocumentModDate
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -454,7 +540,7 @@
     type AttrSetTypeConstraint DocumentPageLayoutPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentPageLayoutPropertyInfo = DocumentK
     type AttrGetType DocumentPageLayoutPropertyInfo = PageLayout
-    type AttrLabel DocumentPageLayoutPropertyInfo = "Document::page-layout"
+    type AttrLabel DocumentPageLayoutPropertyInfo = "page-layout"
     attrGet _ = getDocumentPageLayout
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -472,7 +558,7 @@
     type AttrSetTypeConstraint DocumentPageModePropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentPageModePropertyInfo = DocumentK
     type AttrGetType DocumentPageModePropertyInfo = PageMode
-    type AttrLabel DocumentPageModePropertyInfo = "Document::page-mode"
+    type AttrLabel DocumentPageModePropertyInfo = "page-mode"
     attrGet _ = getDocumentPageMode
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -490,7 +576,7 @@
     type AttrSetTypeConstraint DocumentPermissionsPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentPermissionsPropertyInfo = DocumentK
     type AttrGetType DocumentPermissionsPropertyInfo = [Permissions]
-    type AttrLabel DocumentPermissionsPropertyInfo = "Document::permissions"
+    type AttrLabel DocumentPermissionsPropertyInfo = "permissions"
     attrGet _ = getDocumentPermissions
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -508,7 +594,7 @@
     type AttrSetTypeConstraint DocumentProducerPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentProducerPropertyInfo = DocumentK
     type AttrGetType DocumentProducerPropertyInfo = T.Text
-    type AttrLabel DocumentProducerPropertyInfo = "Document::producer"
+    type AttrLabel DocumentProducerPropertyInfo = "producer"
     attrGet _ = getDocumentProducer
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -526,7 +612,7 @@
     type AttrSetTypeConstraint DocumentSubjectPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentSubjectPropertyInfo = DocumentK
     type AttrGetType DocumentSubjectPropertyInfo = T.Text
-    type AttrLabel DocumentSubjectPropertyInfo = "Document::subject"
+    type AttrLabel DocumentSubjectPropertyInfo = "subject"
     attrGet _ = getDocumentSubject
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -544,7 +630,7 @@
     type AttrSetTypeConstraint DocumentTitlePropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentTitlePropertyInfo = DocumentK
     type AttrGetType DocumentTitlePropertyInfo = T.Text
-    type AttrLabel DocumentTitlePropertyInfo = "Document::title"
+    type AttrLabel DocumentTitlePropertyInfo = "title"
     attrGet _ = getDocumentTitle
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -562,22 +648,21 @@
     type AttrSetTypeConstraint DocumentViewerPreferencesPropertyInfo = (~) ()
     type AttrBaseTypeConstraint DocumentViewerPreferencesPropertyInfo = DocumentK
     type AttrGetType DocumentViewerPreferencesPropertyInfo = [ViewerPreferences]
-    type AttrLabel DocumentViewerPreferencesPropertyInfo = "Document::viewer-preferences"
+    type AttrLabel DocumentViewerPreferencesPropertyInfo = "viewer-preferences"
     attrGet _ = getDocumentViewerPreferences
     attrSet _ = undefined
     attrConstruct _ = undefined
 
 type instance AttributeList Document = DocumentAttributeList
-type DocumentAttributeList = ('[ '("author", DocumentAuthorPropertyInfo), '("creation-date", DocumentCreationDatePropertyInfo), '("creator", DocumentCreatorPropertyInfo), '("format", DocumentFormatPropertyInfo), '("format-major", DocumentFormatMajorPropertyInfo), '("format-minor", DocumentFormatMinorPropertyInfo), '("keywords", DocumentKeywordsPropertyInfo), '("linearized", DocumentLinearizedPropertyInfo), '("metadata", DocumentMetadataPropertyInfo), '("mod-date", DocumentModDatePropertyInfo), '("page-layout", DocumentPageLayoutPropertyInfo), '("page-mode", DocumentPageModePropertyInfo), '("permissions", DocumentPermissionsPropertyInfo), '("producer", DocumentProducerPropertyInfo), '("subject", DocumentSubjectPropertyInfo), '("title", DocumentTitlePropertyInfo), '("viewer-preferences", DocumentViewerPreferencesPropertyInfo)] :: [(Symbol, *)])
+type DocumentAttributeList = ('[ '("author", DocumentAuthorPropertyInfo), '("creationDate", DocumentCreationDatePropertyInfo), '("creator", DocumentCreatorPropertyInfo), '("format", DocumentFormatPropertyInfo), '("formatMajor", DocumentFormatMajorPropertyInfo), '("formatMinor", DocumentFormatMinorPropertyInfo), '("keywords", DocumentKeywordsPropertyInfo), '("linearized", DocumentLinearizedPropertyInfo), '("metadata", DocumentMetadataPropertyInfo), '("modDate", DocumentModDatePropertyInfo), '("pageLayout", DocumentPageLayoutPropertyInfo), '("pageMode", DocumentPageModePropertyInfo), '("permissions", DocumentPermissionsPropertyInfo), '("producer", DocumentProducerPropertyInfo), '("subject", DocumentSubjectPropertyInfo), '("title", DocumentTitlePropertyInfo), '("viewerPreferences", DocumentViewerPreferencesPropertyInfo)] :: [(Symbol, *)])
 
 type instance SignalList Document = DocumentSignalList
-type DocumentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type DocumentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Document::new_from_data
 -- method type : Constructor
--- Args : [Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Document"
 -- throws : True
 -- Skip return : False
@@ -592,10 +677,10 @@
 
 documentNewFromData ::
     (MonadIO m) =>
-    T.Text ->                               -- data
-    Int32 ->                                -- length
-    Maybe (T.Text) ->                       -- password
-    m Document
+    T.Text                                  -- data_
+    -> Int32                                -- length_
+    -> Maybe (T.Text)                       -- password
+    -> m Document                           -- result
 documentNewFromData data_ length_ password = liftIO $ do
     data_' <- textToCString data_
     maybePassword <- case password of
@@ -617,9 +702,8 @@
 
 -- method Document::new_from_file
 -- method type : Constructor
--- Args : [Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Document"
 -- throws : True
 -- Skip return : False
@@ -633,9 +717,9 @@
 
 documentNewFromFile ::
     (MonadIO m) =>
-    T.Text ->                               -- uri
-    Maybe (T.Text) ->                       -- password
-    m Document
+    T.Text                                  -- uri
+    -> Maybe (T.Text)                       -- password
+    -> m Document                           -- result
 documentNewFromFile uri password = liftIO $ do
     uri' <- textToCString uri
     maybePassword <- case password of
@@ -657,9 +741,8 @@
 
 -- method Document::new_from_gfile
 -- method type : Constructor
--- Args : [Arg {argName = "file", argType = TInterface "Gio" "File", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "file", argType = TInterface "Gio" "File", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "file", argType = TInterface "Gio" "File", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Document"
 -- throws : True
 -- Skip return : False
@@ -674,10 +757,10 @@
 
 documentNewFromGfile ::
     (MonadIO m, Gio.FileK a, Gio.CancellableK b) =>
-    a ->                                    -- file
-    Maybe (T.Text) ->                       -- password
-    Maybe (b) ->                            -- cancellable
-    m Document
+    a                                       -- file
+    -> Maybe (T.Text)                       -- password
+    -> Maybe (b)                            -- cancellable
+    -> m Document                           -- result
 documentNewFromGfile file password cancellable = liftIO $ do
     let file' = unsafeManagedPtrCastPtr file
     maybePassword <- case password of
@@ -704,9 +787,8 @@
 
 -- method Document::new_from_stream
 -- method type : Constructor
--- Args : [Arg {argName = "stream", argType = TInterface "Gio" "InputStream", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "stream", argType = TInterface "Gio" "InputStream", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "length", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "stream", argType = TInterface "Gio" "InputStream", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "password", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancellable", argType = TInterface "Gio" "Cancellable", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Document"
 -- throws : True
 -- Skip return : False
@@ -722,11 +804,11 @@
 
 documentNewFromStream ::
     (MonadIO m, Gio.InputStreamK a, Gio.CancellableK b) =>
-    a ->                                    -- stream
-    Int64 ->                                -- length
-    Maybe (T.Text) ->                       -- password
-    Maybe (b) ->                            -- cancellable
-    m Document
+    a                                       -- stream
+    -> Int64                                -- length_
+    -> Maybe (T.Text)                       -- password
+    -> Maybe (b)                            -- cancellable
+    -> m Document                           -- result
 documentNewFromStream stream length_ password cancellable = liftIO $ do
     let stream' = unsafeManagedPtrCastPtr stream
     maybePassword <- case password of
@@ -753,9 +835,8 @@
 
 -- method Document::find_dest
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "link_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "link_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "link_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Dest"
 -- throws : False
 -- Skip return : False
@@ -768,24 +849,27 @@
 
 documentFindDest ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- link_name
-    m Dest
-documentFindDest _obj link_name = liftIO $ do
+    a                                       -- _obj
+    -> T.Text                               -- linkName
+    -> m Dest                               -- result
+documentFindDest _obj linkName = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    link_name' <- textToCString link_name
-    result <- poppler_document_find_dest _obj' link_name'
+    linkName' <- textToCString linkName
+    result <- poppler_document_find_dest _obj' linkName'
     checkUnexpectedReturnNULL "poppler_document_find_dest" result
     result' <- (wrapBoxed Dest) result
     touchManagedPtr _obj
-    freeMem link_name'
+    freeMem linkName'
     return result'
 
+data DocumentFindDestMethodInfo
+instance (signature ~ (T.Text -> m Dest), MonadIO m, DocumentK a) => MethodInfo DocumentFindDestMethodInfo a signature where
+    overloadedMethod _ = documentFindDest
+
 -- method Document::get_attachments
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "Attachment")
 -- throws : False
 -- Skip return : False
@@ -797,8 +881,8 @@
 
 documentGetAttachments ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m [Attachment]
+    a                                       -- _obj
+    -> m [Attachment]                       -- result
 documentGetAttachments _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_attachments _obj'
@@ -809,11 +893,14 @@
     touchManagedPtr _obj
     return result''
 
+data DocumentGetAttachmentsMethodInfo
+instance (signature ~ (m [Attachment]), MonadIO m, DocumentK a) => MethodInfo DocumentGetAttachmentsMethodInfo a signature where
+    overloadedMethod _ = documentGetAttachments
+
 -- method Document::get_author
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -825,8 +912,8 @@
 
 documentGetAuthor ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetAuthor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_author _obj'
@@ -836,11 +923,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetAuthorMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetAuthorMethodInfo a signature where
+    overloadedMethod _ = documentGetAuthor
+
 -- method Document::get_creation_date
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt64
 -- throws : False
 -- Skip return : False
@@ -852,19 +942,22 @@
 
 documentGetCreationDate ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m Int64
+    a                                       -- _obj
+    -> m Int64                              -- result
 documentGetCreationDate _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_creation_date _obj'
     touchManagedPtr _obj
     return result
 
+data DocumentGetCreationDateMethodInfo
+instance (signature ~ (m Int64), MonadIO m, DocumentK a) => MethodInfo DocumentGetCreationDateMethodInfo a signature where
+    overloadedMethod _ = documentGetCreationDate
+
 -- method Document::get_creator
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -876,8 +969,8 @@
 
 documentGetCreator ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetCreator _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_creator _obj'
@@ -887,11 +980,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetCreatorMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetCreatorMethodInfo a signature where
+    overloadedMethod _ = documentGetCreator
+
 -- method Document::get_form_field
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "id", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "id", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "id", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FormField"
 -- throws : False
 -- Skip return : False
@@ -904,9 +1000,9 @@
 
 documentGetFormField ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- id
-    m FormField
+    a                                       -- _obj
+    -> Int32                                -- id
+    -> m FormField                          -- result
 documentGetFormField _obj id = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_form_field _obj' id
@@ -915,11 +1011,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetFormFieldMethodInfo
+instance (signature ~ (Int32 -> m FormField), MonadIO m, DocumentK a) => MethodInfo DocumentGetFormFieldMethodInfo a signature where
+    overloadedMethod _ = documentGetFormField
+
 -- method Document::get_id
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "permanent_id", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "update_id", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "permanent_id", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "update_id", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -933,30 +1032,33 @@
 
 documentGetId ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m (Bool,T.Text,T.Text)
+    a                                       -- _obj
+    -> m (Bool,T.Text,T.Text)               -- result
 documentGetId _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    permanent_id <- allocMem :: IO (Ptr CString)
-    update_id <- allocMem :: IO (Ptr CString)
-    result <- poppler_document_get_id _obj' permanent_id update_id
+    permanentId <- allocMem :: IO (Ptr CString)
+    updateId <- allocMem :: IO (Ptr CString)
+    result <- poppler_document_get_id _obj' permanentId updateId
     let result' = (/= 0) result
-    permanent_id' <- peek permanent_id
-    permanent_id'' <- cstringToText permanent_id'
-    freeMem permanent_id'
-    update_id' <- peek update_id
-    update_id'' <- cstringToText update_id'
-    freeMem update_id'
+    permanentId' <- peek permanentId
+    permanentId'' <- cstringToText permanentId'
+    freeMem permanentId'
+    updateId' <- peek updateId
+    updateId'' <- cstringToText updateId'
+    freeMem updateId'
     touchManagedPtr _obj
-    freeMem permanent_id
-    freeMem update_id
-    return (result', permanent_id'', update_id'')
+    freeMem permanentId
+    freeMem updateId
+    return (result', permanentId'', updateId'')
 
+data DocumentGetIdMethodInfo
+instance (signature ~ (m (Bool,T.Text,T.Text)), MonadIO m, DocumentK a) => MethodInfo DocumentGetIdMethodInfo a signature where
+    overloadedMethod _ = documentGetId
+
 -- method Document::get_keywords
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -968,8 +1070,8 @@
 
 documentGetKeywords ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetKeywords _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_keywords _obj'
@@ -979,11 +1081,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetKeywordsMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetKeywordsMethodInfo a signature where
+    overloadedMethod _ = documentGetKeywords
+
 -- method Document::get_metadata
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -995,8 +1100,8 @@
 
 documentGetMetadata ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetMetadata _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_metadata _obj'
@@ -1006,11 +1111,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetMetadataMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetMetadataMethodInfo a signature where
+    overloadedMethod _ = documentGetMetadata
+
 -- method Document::get_modification_date
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt64
 -- throws : False
 -- Skip return : False
@@ -1022,19 +1130,22 @@
 
 documentGetModificationDate ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m Int64
+    a                                       -- _obj
+    -> m Int64                              -- result
 documentGetModificationDate _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_modification_date _obj'
     touchManagedPtr _obj
     return result
 
+data DocumentGetModificationDateMethodInfo
+instance (signature ~ (m Int64), MonadIO m, DocumentK a) => MethodInfo DocumentGetModificationDateMethodInfo a signature where
+    overloadedMethod _ = documentGetModificationDate
+
 -- method Document::get_n_attachments
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUInt32
 -- throws : False
 -- Skip return : False
@@ -1046,19 +1157,22 @@
 
 documentGetNAttachments ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m Word32
+    a                                       -- _obj
+    -> m Word32                             -- result
 documentGetNAttachments _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_n_attachments _obj'
     touchManagedPtr _obj
     return result
 
+data DocumentGetNAttachmentsMethodInfo
+instance (signature ~ (m Word32), MonadIO m, DocumentK a) => MethodInfo DocumentGetNAttachmentsMethodInfo a signature where
+    overloadedMethod _ = documentGetNAttachments
+
 -- method Document::get_n_pages
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -1070,19 +1184,22 @@
 
 documentGetNPages ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 documentGetNPages _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_n_pages _obj'
     touchManagedPtr _obj
     return result
 
+data DocumentGetNPagesMethodInfo
+instance (signature ~ (m Int32), MonadIO m, DocumentK a) => MethodInfo DocumentGetNPagesMethodInfo a signature where
+    overloadedMethod _ = documentGetNPages
+
 -- method Document::get_page
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Page"
 -- throws : False
 -- Skip return : False
@@ -1095,9 +1212,9 @@
 
 documentGetPage ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- index
-    m Page
+    a                                       -- _obj
+    -> Int32                                -- index
+    -> m Page                               -- result
 documentGetPage _obj index = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_page _obj' index
@@ -1106,11 +1223,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetPageMethodInfo
+instance (signature ~ (Int32 -> m Page), MonadIO m, DocumentK a) => MethodInfo DocumentGetPageMethodInfo a signature where
+    overloadedMethod _ = documentGetPage
+
 -- method Document::get_page_by_label
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Page"
 -- throws : False
 -- Skip return : False
@@ -1123,9 +1243,9 @@
 
 documentGetPageByLabel ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- label
-    m Page
+    a                                       -- _obj
+    -> T.Text                               -- label
+    -> m Page                               -- result
 documentGetPageByLabel _obj label = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     label' <- textToCString label
@@ -1136,11 +1256,14 @@
     freeMem label'
     return result'
 
+data DocumentGetPageByLabelMethodInfo
+instance (signature ~ (T.Text -> m Page), MonadIO m, DocumentK a) => MethodInfo DocumentGetPageByLabelMethodInfo a signature where
+    overloadedMethod _ = documentGetPageByLabel
+
 -- method Document::get_page_layout
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "PageLayout"
 -- throws : False
 -- Skip return : False
@@ -1152,8 +1275,8 @@
 
 documentGetPageLayout ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m PageLayout
+    a                                       -- _obj
+    -> m PageLayout                         -- result
 documentGetPageLayout _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_page_layout _obj'
@@ -1161,11 +1284,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetPageLayoutMethodInfo
+instance (signature ~ (m PageLayout), MonadIO m, DocumentK a) => MethodInfo DocumentGetPageLayoutMethodInfo a signature where
+    overloadedMethod _ = documentGetPageLayout
+
 -- method Document::get_page_mode
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "PageMode"
 -- throws : False
 -- Skip return : False
@@ -1177,8 +1303,8 @@
 
 documentGetPageMode ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m PageMode
+    a                                       -- _obj
+    -> m PageMode                           -- result
 documentGetPageMode _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_page_mode _obj'
@@ -1186,11 +1312,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetPageModeMethodInfo
+instance (signature ~ (m PageMode), MonadIO m, DocumentK a) => MethodInfo DocumentGetPageModeMethodInfo a signature where
+    overloadedMethod _ = documentGetPageMode
+
 -- method Document::get_pdf_version
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "major_version", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "minor_version", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "major_version", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "minor_version", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1204,25 +1333,28 @@
 
 documentGetPdfVersion ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m (Word32,Word32)
+    a                                       -- _obj
+    -> m (Word32,Word32)                    -- result
 documentGetPdfVersion _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    major_version <- allocMem :: IO (Ptr Word32)
-    minor_version <- allocMem :: IO (Ptr Word32)
-    poppler_document_get_pdf_version _obj' major_version minor_version
-    major_version' <- peek major_version
-    minor_version' <- peek minor_version
+    majorVersion <- allocMem :: IO (Ptr Word32)
+    minorVersion <- allocMem :: IO (Ptr Word32)
+    poppler_document_get_pdf_version _obj' majorVersion minorVersion
+    majorVersion' <- peek majorVersion
+    minorVersion' <- peek minorVersion
     touchManagedPtr _obj
-    freeMem major_version
-    freeMem minor_version
-    return (major_version', minor_version')
+    freeMem majorVersion
+    freeMem minorVersion
+    return (majorVersion', minorVersion')
 
+data DocumentGetPdfVersionMethodInfo
+instance (signature ~ (m (Word32,Word32)), MonadIO m, DocumentK a) => MethodInfo DocumentGetPdfVersionMethodInfo a signature where
+    overloadedMethod _ = documentGetPdfVersion
+
 -- method Document::get_pdf_version_string
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1234,8 +1366,8 @@
 
 documentGetPdfVersionString ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetPdfVersionString _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_pdf_version_string _obj'
@@ -1245,11 +1377,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetPdfVersionStringMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetPdfVersionStringMethodInfo a signature where
+    overloadedMethod _ = documentGetPdfVersionString
+
 -- method Document::get_permissions
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Permissions"
 -- throws : False
 -- Skip return : False
@@ -1261,8 +1396,8 @@
 
 documentGetPermissions ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m [Permissions]
+    a                                       -- _obj
+    -> m [Permissions]                      -- result
 documentGetPermissions _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_permissions _obj'
@@ -1270,11 +1405,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetPermissionsMethodInfo
+instance (signature ~ (m [Permissions]), MonadIO m, DocumentK a) => MethodInfo DocumentGetPermissionsMethodInfo a signature where
+    overloadedMethod _ = documentGetPermissions
+
 -- method Document::get_producer
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1286,8 +1424,8 @@
 
 documentGetProducer ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetProducer _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_producer _obj'
@@ -1297,11 +1435,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetProducerMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetProducerMethodInfo a signature where
+    overloadedMethod _ = documentGetProducer
+
 -- method Document::get_subject
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1313,8 +1454,8 @@
 
 documentGetSubject ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetSubject _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_subject _obj'
@@ -1324,11 +1465,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetSubjectMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetSubjectMethodInfo a signature where
+    overloadedMethod _ = documentGetSubject
+
 -- method Document::get_title
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1340,8 +1484,8 @@
 
 documentGetTitle ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 documentGetTitle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_get_title _obj'
@@ -1351,11 +1495,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentGetTitleMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, DocumentK a) => MethodInfo DocumentGetTitleMethodInfo a signature where
+    overloadedMethod _ = documentGetTitle
+
 -- method Document::has_attachments
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1367,8 +1514,8 @@
 
 documentHasAttachments ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 documentHasAttachments _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_has_attachments _obj'
@@ -1376,11 +1523,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentHasAttachmentsMethodInfo
+instance (signature ~ (m Bool), MonadIO m, DocumentK a) => MethodInfo DocumentHasAttachmentsMethodInfo a signature where
+    overloadedMethod _ = documentHasAttachments
+
 -- method Document::is_linearized
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1392,8 +1542,8 @@
 
 documentIsLinearized ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 documentIsLinearized _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_document_is_linearized _obj'
@@ -1401,11 +1551,14 @@
     touchManagedPtr _obj
     return result'
 
+data DocumentIsLinearizedMethodInfo
+instance (signature ~ (m Bool), MonadIO m, DocumentK a) => MethodInfo DocumentIsLinearizedMethodInfo a signature where
+    overloadedMethod _ = documentIsLinearized
+
 -- method Document::save
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : True
 -- Skip return : False
@@ -1419,9 +1572,9 @@
 
 documentSave ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- uri
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- uri
+    -> m ()                                 -- result
 documentSave _obj uri = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     uri' <- textToCString uri
@@ -1434,11 +1587,14 @@
         freeMem uri'
      )
 
+data DocumentSaveMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, DocumentK a) => MethodInfo DocumentSaveMethodInfo a signature where
+    overloadedMethod _ = documentSave
+
 -- method Document::save_a_copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : True
 -- Skip return : False
@@ -1452,9 +1608,9 @@
 
 documentSaveACopy ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- uri
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- uri
+    -> m ()                                 -- result
 documentSaveACopy _obj uri = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     uri' <- textToCString uri
@@ -1466,5 +1622,9 @@
      ) (do
         freeMem uri'
      )
+
+data DocumentSaveACopyMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, DocumentK a) => MethodInfo DocumentSaveACopyMethodInfo a signature where
+    overloadedMethod _ = documentSaveACopy
 
 
diff --git a/GI/Poppler/Objects/Document.hs-boot b/GI/Poppler/Objects/Document.hs-boot
--- a/GI/Poppler/Objects/Document.hs-boot
+++ b/GI/Poppler/Objects/Document.hs-boot
@@ -28,3 +28,29 @@
 data DocumentSubjectPropertyInfo
 data DocumentTitlePropertyInfo
 data DocumentViewerPreferencesPropertyInfo
+data DocumentFindDestMethodInfo
+data DocumentGetAttachmentsMethodInfo
+data DocumentGetAuthorMethodInfo
+data DocumentGetCreationDateMethodInfo
+data DocumentGetCreatorMethodInfo
+data DocumentGetFormFieldMethodInfo
+data DocumentGetIdMethodInfo
+data DocumentGetKeywordsMethodInfo
+data DocumentGetMetadataMethodInfo
+data DocumentGetModificationDateMethodInfo
+data DocumentGetNAttachmentsMethodInfo
+data DocumentGetNPagesMethodInfo
+data DocumentGetPageMethodInfo
+data DocumentGetPageByLabelMethodInfo
+data DocumentGetPageLayoutMethodInfo
+data DocumentGetPageModeMethodInfo
+data DocumentGetPdfVersionMethodInfo
+data DocumentGetPdfVersionStringMethodInfo
+data DocumentGetPermissionsMethodInfo
+data DocumentGetProducerMethodInfo
+data DocumentGetSubjectMethodInfo
+data DocumentGetTitleMethodInfo
+data DocumentHasAttachmentsMethodInfo
+data DocumentIsLinearizedMethodInfo
+data DocumentSaveMethodInfo
+data DocumentSaveACopyMethodInfo
diff --git a/GI/Poppler/Objects/FontInfo.hs b/GI/Poppler/Objects/FontInfo.hs
--- a/GI/Poppler/Objects/FontInfo.hs
+++ b/GI/Poppler/Objects/FontInfo.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,6 +18,7 @@
 
  -- * Methods
 -- ** fontInfoFree
+    FontInfoFreeMethodInfo                  ,
     fontInfoFree                            ,
 
 
@@ -25,6 +27,7 @@
 
 
 -- ** fontInfoScan
+    FontInfoScanMethodInfo                  ,
     fontInfoScan                            ,
 
 
@@ -64,17 +67,51 @@
 noFontInfo :: Maybe FontInfo
 noFontInfo = Nothing
 
+type family ResolveFontInfoMethod (t :: Symbol) (o :: *) :: * where
+    ResolveFontInfoMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveFontInfoMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveFontInfoMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveFontInfoMethod "free" o = FontInfoFreeMethodInfo
+    ResolveFontInfoMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveFontInfoMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveFontInfoMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveFontInfoMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveFontInfoMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveFontInfoMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveFontInfoMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveFontInfoMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveFontInfoMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveFontInfoMethod "scan" o = FontInfoScanMethodInfo
+    ResolveFontInfoMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveFontInfoMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveFontInfoMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveFontInfoMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveFontInfoMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveFontInfoMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveFontInfoMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveFontInfoMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveFontInfoMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveFontInfoMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveFontInfoMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveFontInfoMethod t FontInfo, MethodInfo info FontInfo p) => IsLabelProxy t (FontInfo -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveFontInfoMethod t FontInfo, MethodInfo info FontInfo p) => IsLabel t (FontInfo -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList FontInfo = FontInfoAttributeList
 type FontInfoAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList FontInfo = FontInfoSignalList
-type FontInfoSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type FontInfoSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method FontInfo::new
 -- method type : Constructor
--- Args : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FontInfo"
 -- throws : False
 -- Skip return : False
@@ -86,8 +123,8 @@
 
 fontInfoNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- document
-    m FontInfo
+    a                                       -- document
+    -> m FontInfo                           -- result
 fontInfoNew document = liftIO $ do
     let document' = unsafeManagedPtrCastPtr document
     result <- poppler_font_info_new document'
@@ -98,9 +135,8 @@
 
 -- method FontInfo::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -112,19 +148,22 @@
 
 fontInfoFree ::
     (MonadIO m, FontInfoK a) =>
-    a ->                                    -- _obj
-    m ()
+    a                                       -- _obj
+    -> m ()                                 -- result
 fontInfoFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_font_info_free _obj'
     touchManagedPtr _obj
     return ()
 
+data FontInfoFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m, FontInfoK a) => MethodInfo FontInfoFreeMethodInfo a signature where
+    overloadedMethod _ = fontInfoFree
+
 -- method FontInfo::scan
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_pages", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Poppler" "FontsIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_pages", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Poppler" "FontsIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_pages", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -138,18 +177,22 @@
 
 fontInfoScan ::
     (MonadIO m, FontInfoK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- n_pages
-    m (Bool,FontsIter)
-fontInfoScan _obj n_pages = liftIO $ do
+    a                                       -- _obj
+    -> Int32                                -- nPages
+    -> m (Bool,FontsIter)                   -- result
+fontInfoScan _obj nPages = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     iter <- allocMem :: IO (Ptr (Ptr FontsIter))
-    result <- poppler_font_info_scan _obj' n_pages iter
+    result <- poppler_font_info_scan _obj' nPages iter
     let result' = (/= 0) result
     iter' <- peek iter
     iter'' <- (wrapBoxed FontsIter) iter'
     touchManagedPtr _obj
     freeMem iter
     return (result', iter'')
+
+data FontInfoScanMethodInfo
+instance (signature ~ (Int32 -> m (Bool,FontsIter)), MonadIO m, FontInfoK a) => MethodInfo FontInfoScanMethodInfo a signature where
+    overloadedMethod _ = fontInfoScan
 
 
diff --git a/GI/Poppler/Objects/FontInfo.hs-boot b/GI/Poppler/Objects/FontInfo.hs-boot
--- a/GI/Poppler/Objects/FontInfo.hs-boot
+++ b/GI/Poppler/Objects/FontInfo.hs-boot
@@ -11,3 +11,5 @@
 instance GObject FontInfo where
 class GObject o => FontInfoK o
 instance (GObject o, IsDescendantOf FontInfo o) => FontInfoK o
+data FontInfoFreeMethodInfo
+data FontInfoScanMethodInfo
diff --git a/GI/Poppler/Objects/FormField.hs b/GI/Poppler/Objects/FormField.hs
--- a/GI/Poppler/Objects/FormField.hs
+++ b/GI/Poppler/Objects/FormField.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,130 +18,162 @@
 
  -- * Methods
 -- ** formFieldButtonGetButtonType
+    FormFieldButtonGetButtonTypeMethodInfo  ,
     formFieldButtonGetButtonType            ,
 
 
 -- ** formFieldButtonGetState
+    FormFieldButtonGetStateMethodInfo       ,
     formFieldButtonGetState                 ,
 
 
 -- ** formFieldButtonSetState
+    FormFieldButtonSetStateMethodInfo       ,
     formFieldButtonSetState                 ,
 
 
 -- ** formFieldChoiceCanSelectMultiple
+    FormFieldChoiceCanSelectMultipleMethodInfo,
     formFieldChoiceCanSelectMultiple        ,
 
 
 -- ** formFieldChoiceCommitOnChange
+    FormFieldChoiceCommitOnChangeMethodInfo ,
     formFieldChoiceCommitOnChange           ,
 
 
 -- ** formFieldChoiceDoSpellCheck
+    FormFieldChoiceDoSpellCheckMethodInfo   ,
     formFieldChoiceDoSpellCheck             ,
 
 
 -- ** formFieldChoiceGetChoiceType
+    FormFieldChoiceGetChoiceTypeMethodInfo  ,
     formFieldChoiceGetChoiceType            ,
 
 
 -- ** formFieldChoiceGetItem
+    FormFieldChoiceGetItemMethodInfo        ,
     formFieldChoiceGetItem                  ,
 
 
 -- ** formFieldChoiceGetNItems
+    FormFieldChoiceGetNItemsMethodInfo      ,
     formFieldChoiceGetNItems                ,
 
 
 -- ** formFieldChoiceGetText
+    FormFieldChoiceGetTextMethodInfo        ,
     formFieldChoiceGetText                  ,
 
 
 -- ** formFieldChoiceIsEditable
+    FormFieldChoiceIsEditableMethodInfo     ,
     formFieldChoiceIsEditable               ,
 
 
 -- ** formFieldChoiceIsItemSelected
+    FormFieldChoiceIsItemSelectedMethodInfo ,
     formFieldChoiceIsItemSelected           ,
 
 
 -- ** formFieldChoiceSelectItem
+    FormFieldChoiceSelectItemMethodInfo     ,
     formFieldChoiceSelectItem               ,
 
 
 -- ** formFieldChoiceSetText
+    FormFieldChoiceSetTextMethodInfo        ,
     formFieldChoiceSetText                  ,
 
 
 -- ** formFieldChoiceToggleItem
+    FormFieldChoiceToggleItemMethodInfo     ,
     formFieldChoiceToggleItem               ,
 
 
 -- ** formFieldChoiceUnselectAll
+    FormFieldChoiceUnselectAllMethodInfo    ,
     formFieldChoiceUnselectAll              ,
 
 
 -- ** formFieldGetAction
+    FormFieldGetActionMethodInfo            ,
     formFieldGetAction                      ,
 
 
 -- ** formFieldGetFieldType
+    FormFieldGetFieldTypeMethodInfo         ,
     formFieldGetFieldType                   ,
 
 
 -- ** formFieldGetFontSize
+    FormFieldGetFontSizeMethodInfo          ,
     formFieldGetFontSize                    ,
 
 
 -- ** formFieldGetId
+    FormFieldGetIdMethodInfo                ,
     formFieldGetId                          ,
 
 
 -- ** formFieldGetMappingName
+    FormFieldGetMappingNameMethodInfo       ,
     formFieldGetMappingName                 ,
 
 
 -- ** formFieldGetName
+    FormFieldGetNameMethodInfo              ,
     formFieldGetName                        ,
 
 
 -- ** formFieldGetPartialName
+    FormFieldGetPartialNameMethodInfo       ,
     formFieldGetPartialName                 ,
 
 
 -- ** formFieldIsReadOnly
+    FormFieldIsReadOnlyMethodInfo           ,
     formFieldIsReadOnly                     ,
 
 
 -- ** formFieldTextDoScroll
+    FormFieldTextDoScrollMethodInfo         ,
     formFieldTextDoScroll                   ,
 
 
 -- ** formFieldTextDoSpellCheck
+    FormFieldTextDoSpellCheckMethodInfo     ,
     formFieldTextDoSpellCheck               ,
 
 
 -- ** formFieldTextGetMaxLen
+    FormFieldTextGetMaxLenMethodInfo        ,
     formFieldTextGetMaxLen                  ,
 
 
 -- ** formFieldTextGetText
+    FormFieldTextGetTextMethodInfo          ,
     formFieldTextGetText                    ,
 
 
 -- ** formFieldTextGetTextType
+    FormFieldTextGetTextTypeMethodInfo      ,
     formFieldTextGetTextType                ,
 
 
 -- ** formFieldTextIsPassword
+    FormFieldTextIsPasswordMethodInfo       ,
     formFieldTextIsPassword                 ,
 
 
 -- ** formFieldTextIsRichText
+    FormFieldTextIsRichTextMethodInfo       ,
     formFieldTextIsRichText                 ,
 
 
 -- ** formFieldTextSetText
+    FormFieldTextSetTextMethodInfo          ,
     formFieldTextSetText                    ,
 
 
@@ -180,17 +213,81 @@
 noFormField :: Maybe FormField
 noFormField = Nothing
 
+type family ResolveFormFieldMethod (t :: Symbol) (o :: *) :: * where
+    ResolveFormFieldMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveFormFieldMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveFormFieldMethod "buttonGetButtonType" o = FormFieldButtonGetButtonTypeMethodInfo
+    ResolveFormFieldMethod "buttonGetState" o = FormFieldButtonGetStateMethodInfo
+    ResolveFormFieldMethod "buttonSetState" o = FormFieldButtonSetStateMethodInfo
+    ResolveFormFieldMethod "choiceCanSelectMultiple" o = FormFieldChoiceCanSelectMultipleMethodInfo
+    ResolveFormFieldMethod "choiceCommitOnChange" o = FormFieldChoiceCommitOnChangeMethodInfo
+    ResolveFormFieldMethod "choiceDoSpellCheck" o = FormFieldChoiceDoSpellCheckMethodInfo
+    ResolveFormFieldMethod "choiceGetChoiceType" o = FormFieldChoiceGetChoiceTypeMethodInfo
+    ResolveFormFieldMethod "choiceGetItem" o = FormFieldChoiceGetItemMethodInfo
+    ResolveFormFieldMethod "choiceGetNItems" o = FormFieldChoiceGetNItemsMethodInfo
+    ResolveFormFieldMethod "choiceGetText" o = FormFieldChoiceGetTextMethodInfo
+    ResolveFormFieldMethod "choiceIsEditable" o = FormFieldChoiceIsEditableMethodInfo
+    ResolveFormFieldMethod "choiceIsItemSelected" o = FormFieldChoiceIsItemSelectedMethodInfo
+    ResolveFormFieldMethod "choiceSelectItem" o = FormFieldChoiceSelectItemMethodInfo
+    ResolveFormFieldMethod "choiceSetText" o = FormFieldChoiceSetTextMethodInfo
+    ResolveFormFieldMethod "choiceToggleItem" o = FormFieldChoiceToggleItemMethodInfo
+    ResolveFormFieldMethod "choiceUnselectAll" o = FormFieldChoiceUnselectAllMethodInfo
+    ResolveFormFieldMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveFormFieldMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveFormFieldMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveFormFieldMethod "isReadOnly" o = FormFieldIsReadOnlyMethodInfo
+    ResolveFormFieldMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveFormFieldMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveFormFieldMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveFormFieldMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveFormFieldMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveFormFieldMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveFormFieldMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveFormFieldMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveFormFieldMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveFormFieldMethod "textDoScroll" o = FormFieldTextDoScrollMethodInfo
+    ResolveFormFieldMethod "textDoSpellCheck" o = FormFieldTextDoSpellCheckMethodInfo
+    ResolveFormFieldMethod "textGetMaxLen" o = FormFieldTextGetMaxLenMethodInfo
+    ResolveFormFieldMethod "textGetText" o = FormFieldTextGetTextMethodInfo
+    ResolveFormFieldMethod "textGetTextType" o = FormFieldTextGetTextTypeMethodInfo
+    ResolveFormFieldMethod "textIsPassword" o = FormFieldTextIsPasswordMethodInfo
+    ResolveFormFieldMethod "textIsRichText" o = FormFieldTextIsRichTextMethodInfo
+    ResolveFormFieldMethod "textSetText" o = FormFieldTextSetTextMethodInfo
+    ResolveFormFieldMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveFormFieldMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveFormFieldMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveFormFieldMethod "getAction" o = FormFieldGetActionMethodInfo
+    ResolveFormFieldMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveFormFieldMethod "getFieldType" o = FormFieldGetFieldTypeMethodInfo
+    ResolveFormFieldMethod "getFontSize" o = FormFieldGetFontSizeMethodInfo
+    ResolveFormFieldMethod "getId" o = FormFieldGetIdMethodInfo
+    ResolveFormFieldMethod "getMappingName" o = FormFieldGetMappingNameMethodInfo
+    ResolveFormFieldMethod "getName" o = FormFieldGetNameMethodInfo
+    ResolveFormFieldMethod "getPartialName" o = FormFieldGetPartialNameMethodInfo
+    ResolveFormFieldMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveFormFieldMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveFormFieldMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveFormFieldMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveFormFieldMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveFormFieldMethod t FormField, MethodInfo info FormField p) => IsLabelProxy t (FormField -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveFormFieldMethod t FormField, MethodInfo info FormField p) => IsLabel t (FormField -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList FormField = FormFieldAttributeList
 type FormFieldAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList FormField = FormFieldSignalList
-type FormFieldSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type FormFieldSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method FormField::button_get_button_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FormButtonType"
 -- throws : False
 -- Skip return : False
@@ -202,8 +299,8 @@
 
 formFieldButtonGetButtonType ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m FormButtonType
+    a                                       -- _obj
+    -> m FormButtonType                     -- result
 formFieldButtonGetButtonType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_button_get_button_type _obj'
@@ -211,11 +308,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldButtonGetButtonTypeMethodInfo
+instance (signature ~ (m FormButtonType), MonadIO m, FormFieldK a) => MethodInfo FormFieldButtonGetButtonTypeMethodInfo a signature where
+    overloadedMethod _ = formFieldButtonGetButtonType
+
 -- method FormField::button_get_state
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -227,8 +327,8 @@
 
 formFieldButtonGetState ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldButtonGetState _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_button_get_state _obj'
@@ -236,11 +336,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldButtonGetStateMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldButtonGetStateMethodInfo a signature where
+    overloadedMethod _ = formFieldButtonGetState
+
 -- method FormField::button_set_state
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "state", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "state", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "state", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -253,9 +356,9 @@
 
 formFieldButtonSetState ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    Bool ->                                 -- state
-    m ()
+    a                                       -- _obj
+    -> Bool                                 -- state
+    -> m ()                                 -- result
 formFieldButtonSetState _obj state = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let state' = (fromIntegral . fromEnum) state
@@ -263,11 +366,14 @@
     touchManagedPtr _obj
     return ()
 
+data FormFieldButtonSetStateMethodInfo
+instance (signature ~ (Bool -> m ()), MonadIO m, FormFieldK a) => MethodInfo FormFieldButtonSetStateMethodInfo a signature where
+    overloadedMethod _ = formFieldButtonSetState
+
 -- method FormField::choice_can_select_multiple
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -279,8 +385,8 @@
 
 formFieldChoiceCanSelectMultiple ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldChoiceCanSelectMultiple _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_can_select_multiple _obj'
@@ -288,11 +394,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceCanSelectMultipleMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceCanSelectMultipleMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceCanSelectMultiple
+
 -- method FormField::choice_commit_on_change
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -304,8 +413,8 @@
 
 formFieldChoiceCommitOnChange ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldChoiceCommitOnChange _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_commit_on_change _obj'
@@ -313,11 +422,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceCommitOnChangeMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceCommitOnChangeMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceCommitOnChange
+
 -- method FormField::choice_do_spell_check
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -329,8 +441,8 @@
 
 formFieldChoiceDoSpellCheck ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldChoiceDoSpellCheck _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_do_spell_check _obj'
@@ -338,11 +450,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceDoSpellCheckMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceDoSpellCheckMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceDoSpellCheck
+
 -- method FormField::choice_get_choice_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FormChoiceType"
 -- throws : False
 -- Skip return : False
@@ -354,8 +469,8 @@
 
 formFieldChoiceGetChoiceType ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m FormChoiceType
+    a                                       -- _obj
+    -> m FormChoiceType                     -- result
 formFieldChoiceGetChoiceType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_get_choice_type _obj'
@@ -363,11 +478,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceGetChoiceTypeMethodInfo
+instance (signature ~ (m FormChoiceType), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceGetChoiceTypeMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceGetChoiceType
+
 -- method FormField::choice_get_item
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -380,9 +498,9 @@
 
 formFieldChoiceGetItem ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- index
-    m T.Text
+    a                                       -- _obj
+    -> Int32                                -- index
+    -> m T.Text                             -- result
 formFieldChoiceGetItem _obj index = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_get_item _obj' index
@@ -392,11 +510,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceGetItemMethodInfo
+instance (signature ~ (Int32 -> m T.Text), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceGetItemMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceGetItem
+
 -- method FormField::choice_get_n_items
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -408,19 +529,22 @@
 
 formFieldChoiceGetNItems ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 formFieldChoiceGetNItems _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_get_n_items _obj'
     touchManagedPtr _obj
     return result
 
+data FormFieldChoiceGetNItemsMethodInfo
+instance (signature ~ (m Int32), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceGetNItemsMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceGetNItems
+
 -- method FormField::choice_get_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -432,8 +556,8 @@
 
 formFieldChoiceGetText ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 formFieldChoiceGetText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_get_text _obj'
@@ -443,11 +567,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceGetTextMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceGetTextMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceGetText
+
 -- method FormField::choice_is_editable
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -459,8 +586,8 @@
 
 formFieldChoiceIsEditable ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldChoiceIsEditable _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_is_editable _obj'
@@ -468,11 +595,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceIsEditableMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceIsEditableMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceIsEditable
+
 -- method FormField::choice_is_item_selected
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -485,9 +615,9 @@
 
 formFieldChoiceIsItemSelected ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- index
-    m Bool
+    a                                       -- _obj
+    -> Int32                                -- index
+    -> m Bool                               -- result
 formFieldChoiceIsItemSelected _obj index = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_choice_is_item_selected _obj' index
@@ -495,11 +625,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldChoiceIsItemSelectedMethodInfo
+instance (signature ~ (Int32 -> m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceIsItemSelectedMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceIsItemSelected
+
 -- method FormField::choice_select_item
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -512,20 +645,23 @@
 
 formFieldChoiceSelectItem ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- index
-    m ()
+    a                                       -- _obj
+    -> Int32                                -- index
+    -> m ()                                 -- result
 formFieldChoiceSelectItem _obj index = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_form_field_choice_select_item _obj' index
     touchManagedPtr _obj
     return ()
 
+data FormFieldChoiceSelectItemMethodInfo
+instance (signature ~ (Int32 -> m ()), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceSelectItemMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceSelectItem
+
 -- method FormField::choice_set_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -538,9 +674,9 @@
 
 formFieldChoiceSetText ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- text
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- text
+    -> m ()                                 -- result
 formFieldChoiceSetText _obj text = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     text' <- textToCString text
@@ -549,11 +685,14 @@
     freeMem text'
     return ()
 
+data FormFieldChoiceSetTextMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceSetTextMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceSetText
+
 -- method FormField::choice_toggle_item
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -566,20 +705,23 @@
 
 formFieldChoiceToggleItem ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- index
-    m ()
+    a                                       -- _obj
+    -> Int32                                -- index
+    -> m ()                                 -- result
 formFieldChoiceToggleItem _obj index = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_form_field_choice_toggle_item _obj' index
     touchManagedPtr _obj
     return ()
 
+data FormFieldChoiceToggleItemMethodInfo
+instance (signature ~ (Int32 -> m ()), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceToggleItemMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceToggleItem
+
 -- method FormField::choice_unselect_all
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -591,19 +733,22 @@
 
 formFieldChoiceUnselectAll ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m ()
+    a                                       -- _obj
+    -> m ()                                 -- result
 formFieldChoiceUnselectAll _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_form_field_choice_unselect_all _obj'
     touchManagedPtr _obj
     return ()
 
+data FormFieldChoiceUnselectAllMethodInfo
+instance (signature ~ (m ()), MonadIO m, FormFieldK a) => MethodInfo FormFieldChoiceUnselectAllMethodInfo a signature where
+    overloadedMethod _ = formFieldChoiceUnselectAll
+
 -- method FormField::get_action
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Action"
 -- throws : False
 -- Skip return : False
@@ -615,8 +760,8 @@
 
 formFieldGetAction ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Action
+    a                                       -- _obj
+    -> m Action                             -- result
 formFieldGetAction _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_action _obj'
@@ -625,11 +770,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldGetActionMethodInfo
+instance (signature ~ (m Action), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetActionMethodInfo a signature where
+    overloadedMethod _ = formFieldGetAction
+
 -- method FormField::get_field_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FormFieldType"
 -- throws : False
 -- Skip return : False
@@ -641,8 +789,8 @@
 
 formFieldGetFieldType ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m FormFieldType
+    a                                       -- _obj
+    -> m FormFieldType                      -- result
 formFieldGetFieldType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_field_type _obj'
@@ -650,11 +798,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldGetFieldTypeMethodInfo
+instance (signature ~ (m FormFieldType), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetFieldTypeMethodInfo a signature where
+    overloadedMethod _ = formFieldGetFieldType
+
 -- method FormField::get_font_size
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -666,8 +817,8 @@
 
 formFieldGetFontSize ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 formFieldGetFontSize _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_font_size _obj'
@@ -675,11 +826,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldGetFontSizeMethodInfo
+instance (signature ~ (m Double), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetFontSizeMethodInfo a signature where
+    overloadedMethod _ = formFieldGetFontSize
+
 -- method FormField::get_id
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -691,19 +845,22 @@
 
 formFieldGetId ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 formFieldGetId _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_id _obj'
     touchManagedPtr _obj
     return result
 
+data FormFieldGetIdMethodInfo
+instance (signature ~ (m Int32), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetIdMethodInfo a signature where
+    overloadedMethod _ = formFieldGetId
+
 -- method FormField::get_mapping_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -715,8 +872,8 @@
 
 formFieldGetMappingName ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 formFieldGetMappingName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_mapping_name _obj'
@@ -726,11 +883,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldGetMappingNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetMappingNameMethodInfo a signature where
+    overloadedMethod _ = formFieldGetMappingName
+
 -- method FormField::get_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -742,8 +902,8 @@
 
 formFieldGetName ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 formFieldGetName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_name _obj'
@@ -753,11 +913,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldGetNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetNameMethodInfo a signature where
+    overloadedMethod _ = formFieldGetName
+
 -- method FormField::get_partial_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -769,8 +932,8 @@
 
 formFieldGetPartialName ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 formFieldGetPartialName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_get_partial_name _obj'
@@ -780,11 +943,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldGetPartialNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, FormFieldK a) => MethodInfo FormFieldGetPartialNameMethodInfo a signature where
+    overloadedMethod _ = formFieldGetPartialName
+
 -- method FormField::is_read_only
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -796,8 +962,8 @@
 
 formFieldIsReadOnly ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldIsReadOnly _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_is_read_only _obj'
@@ -805,11 +971,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldIsReadOnlyMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldIsReadOnlyMethodInfo a signature where
+    overloadedMethod _ = formFieldIsReadOnly
+
 -- method FormField::text_do_scroll
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -821,8 +990,8 @@
 
 formFieldTextDoScroll ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldTextDoScroll _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_do_scroll _obj'
@@ -830,11 +999,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldTextDoScrollMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextDoScrollMethodInfo a signature where
+    overloadedMethod _ = formFieldTextDoScroll
+
 -- method FormField::text_do_spell_check
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -846,8 +1018,8 @@
 
 formFieldTextDoSpellCheck ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldTextDoSpellCheck _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_do_spell_check _obj'
@@ -855,11 +1027,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldTextDoSpellCheckMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextDoSpellCheckMethodInfo a signature where
+    overloadedMethod _ = formFieldTextDoSpellCheck
+
 -- method FormField::text_get_max_len
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -871,19 +1046,22 @@
 
 formFieldTextGetMaxLen ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 formFieldTextGetMaxLen _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_get_max_len _obj'
     touchManagedPtr _obj
     return result
 
+data FormFieldTextGetMaxLenMethodInfo
+instance (signature ~ (m Int32), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextGetMaxLenMethodInfo a signature where
+    overloadedMethod _ = formFieldTextGetMaxLen
+
 -- method FormField::text_get_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -895,8 +1073,8 @@
 
 formFieldTextGetText ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 formFieldTextGetText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_get_text _obj'
@@ -906,11 +1084,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldTextGetTextMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextGetTextMethodInfo a signature where
+    overloadedMethod _ = formFieldTextGetText
+
 -- method FormField::text_get_text_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FormTextType"
 -- throws : False
 -- Skip return : False
@@ -922,8 +1103,8 @@
 
 formFieldTextGetTextType ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m FormTextType
+    a                                       -- _obj
+    -> m FormTextType                       -- result
 formFieldTextGetTextType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_get_text_type _obj'
@@ -931,11 +1112,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldTextGetTextTypeMethodInfo
+instance (signature ~ (m FormTextType), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextGetTextTypeMethodInfo a signature where
+    overloadedMethod _ = formFieldTextGetTextType
+
 -- method FormField::text_is_password
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -947,8 +1131,8 @@
 
 formFieldTextIsPassword ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldTextIsPassword _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_is_password _obj'
@@ -956,11 +1140,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldTextIsPasswordMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextIsPasswordMethodInfo a signature where
+    overloadedMethod _ = formFieldTextIsPassword
+
 -- method FormField::text_is_rich_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -972,8 +1159,8 @@
 
 formFieldTextIsRichText ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 formFieldTextIsRichText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_form_field_text_is_rich_text _obj'
@@ -981,11 +1168,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldTextIsRichTextMethodInfo
+instance (signature ~ (m Bool), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextIsRichTextMethodInfo a signature where
+    overloadedMethod _ = formFieldTextIsRichText
+
 -- method FormField::text_set_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormField", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -998,9 +1188,9 @@
 
 formFieldTextSetText ::
     (MonadIO m, FormFieldK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- text
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- text
+    -> m ()                                 -- result
 formFieldTextSetText _obj text = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     text' <- textToCString text
@@ -1008,5 +1198,9 @@
     touchManagedPtr _obj
     freeMem text'
     return ()
+
+data FormFieldTextSetTextMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, FormFieldK a) => MethodInfo FormFieldTextSetTextMethodInfo a signature where
+    overloadedMethod _ = formFieldTextSetText
 
 
diff --git a/GI/Poppler/Objects/FormField.hs-boot b/GI/Poppler/Objects/FormField.hs-boot
--- a/GI/Poppler/Objects/FormField.hs-boot
+++ b/GI/Poppler/Objects/FormField.hs-boot
@@ -11,3 +11,35 @@
 instance GObject FormField where
 class GObject o => FormFieldK o
 instance (GObject o, IsDescendantOf FormField o) => FormFieldK o
+data FormFieldButtonGetButtonTypeMethodInfo
+data FormFieldButtonGetStateMethodInfo
+data FormFieldButtonSetStateMethodInfo
+data FormFieldChoiceCanSelectMultipleMethodInfo
+data FormFieldChoiceCommitOnChangeMethodInfo
+data FormFieldChoiceDoSpellCheckMethodInfo
+data FormFieldChoiceGetChoiceTypeMethodInfo
+data FormFieldChoiceGetItemMethodInfo
+data FormFieldChoiceGetNItemsMethodInfo
+data FormFieldChoiceGetTextMethodInfo
+data FormFieldChoiceIsEditableMethodInfo
+data FormFieldChoiceIsItemSelectedMethodInfo
+data FormFieldChoiceSelectItemMethodInfo
+data FormFieldChoiceSetTextMethodInfo
+data FormFieldChoiceToggleItemMethodInfo
+data FormFieldChoiceUnselectAllMethodInfo
+data FormFieldGetActionMethodInfo
+data FormFieldGetFieldTypeMethodInfo
+data FormFieldGetFontSizeMethodInfo
+data FormFieldGetIdMethodInfo
+data FormFieldGetMappingNameMethodInfo
+data FormFieldGetNameMethodInfo
+data FormFieldGetPartialNameMethodInfo
+data FormFieldIsReadOnlyMethodInfo
+data FormFieldTextDoScrollMethodInfo
+data FormFieldTextDoSpellCheckMethodInfo
+data FormFieldTextGetMaxLenMethodInfo
+data FormFieldTextGetTextMethodInfo
+data FormFieldTextGetTextTypeMethodInfo
+data FormFieldTextIsPasswordMethodInfo
+data FormFieldTextIsRichTextMethodInfo
+data FormFieldTextSetTextMethodInfo
diff --git a/GI/Poppler/Objects/Layer.hs b/GI/Poppler/Objects/Layer.hs
--- a/GI/Poppler/Objects/Layer.hs
+++ b/GI/Poppler/Objects/Layer.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,26 +18,32 @@
 
  -- * Methods
 -- ** layerGetRadioButtonGroupId
+    LayerGetRadioButtonGroupIdMethodInfo    ,
     layerGetRadioButtonGroupId              ,
 
 
 -- ** layerGetTitle
+    LayerGetTitleMethodInfo                 ,
     layerGetTitle                           ,
 
 
 -- ** layerHide
+    LayerHideMethodInfo                     ,
     layerHide                               ,
 
 
 -- ** layerIsParent
+    LayerIsParentMethodInfo                 ,
     layerIsParent                           ,
 
 
 -- ** layerIsVisible
+    LayerIsVisibleMethodInfo                ,
     layerIsVisible                          ,
 
 
 -- ** layerShow
+    LayerShowMethodInfo                     ,
     layerShow                               ,
 
 
@@ -76,17 +83,55 @@
 noLayer :: Maybe Layer
 noLayer = Nothing
 
+type family ResolveLayerMethod (t :: Symbol) (o :: *) :: * where
+    ResolveLayerMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveLayerMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveLayerMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveLayerMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveLayerMethod "hide" o = LayerHideMethodInfo
+    ResolveLayerMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveLayerMethod "isParent" o = LayerIsParentMethodInfo
+    ResolveLayerMethod "isVisible" o = LayerIsVisibleMethodInfo
+    ResolveLayerMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveLayerMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveLayerMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveLayerMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveLayerMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveLayerMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveLayerMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveLayerMethod "show" o = LayerShowMethodInfo
+    ResolveLayerMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveLayerMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveLayerMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveLayerMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveLayerMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveLayerMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveLayerMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveLayerMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveLayerMethod "getRadioButtonGroupId" o = LayerGetRadioButtonGroupIdMethodInfo
+    ResolveLayerMethod "getTitle" o = LayerGetTitleMethodInfo
+    ResolveLayerMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveLayerMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveLayerMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveLayerMethod t Layer, MethodInfo info Layer p) => IsLabelProxy t (Layer -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveLayerMethod t Layer, MethodInfo info Layer p) => IsLabel t (Layer -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList Layer = LayerAttributeList
 type LayerAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList Layer = LayerSignalList
-type LayerSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type LayerSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Layer::get_radio_button_group_id
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -98,19 +143,22 @@
 
 layerGetRadioButtonGroupId ::
     (MonadIO m, LayerK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 layerGetRadioButtonGroupId _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_layer_get_radio_button_group_id _obj'
     touchManagedPtr _obj
     return result
 
+data LayerGetRadioButtonGroupIdMethodInfo
+instance (signature ~ (m Int32), MonadIO m, LayerK a) => MethodInfo LayerGetRadioButtonGroupIdMethodInfo a signature where
+    overloadedMethod _ = layerGetRadioButtonGroupId
+
 -- method Layer::get_title
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -122,8 +170,8 @@
 
 layerGetTitle ::
     (MonadIO m, LayerK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 layerGetTitle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_layer_get_title _obj'
@@ -132,11 +180,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayerGetTitleMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, LayerK a) => MethodInfo LayerGetTitleMethodInfo a signature where
+    overloadedMethod _ = layerGetTitle
+
 -- method Layer::hide
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -148,19 +199,22 @@
 
 layerHide ::
     (MonadIO m, LayerK a) =>
-    a ->                                    -- _obj
-    m ()
+    a                                       -- _obj
+    -> m ()                                 -- result
 layerHide _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_layer_hide _obj'
     touchManagedPtr _obj
     return ()
 
+data LayerHideMethodInfo
+instance (signature ~ (m ()), MonadIO m, LayerK a) => MethodInfo LayerHideMethodInfo a signature where
+    overloadedMethod _ = layerHide
+
 -- method Layer::is_parent
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -172,8 +226,8 @@
 
 layerIsParent ::
     (MonadIO m, LayerK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 layerIsParent _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_layer_is_parent _obj'
@@ -181,11 +235,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayerIsParentMethodInfo
+instance (signature ~ (m Bool), MonadIO m, LayerK a) => MethodInfo LayerIsParentMethodInfo a signature where
+    overloadedMethod _ = layerIsParent
+
 -- method Layer::is_visible
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -197,8 +254,8 @@
 
 layerIsVisible ::
     (MonadIO m, LayerK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 layerIsVisible _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_layer_is_visible _obj'
@@ -206,11 +263,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayerIsVisibleMethodInfo
+instance (signature ~ (m Bool), MonadIO m, LayerK a) => MethodInfo LayerIsVisibleMethodInfo a signature where
+    overloadedMethod _ = layerIsVisible
+
 -- method Layer::show
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Layer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -222,12 +282,16 @@
 
 layerShow ::
     (MonadIO m, LayerK a) =>
-    a ->                                    -- _obj
-    m ()
+    a                                       -- _obj
+    -> m ()                                 -- result
 layerShow _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_layer_show _obj'
     touchManagedPtr _obj
     return ()
+
+data LayerShowMethodInfo
+instance (signature ~ (m ()), MonadIO m, LayerK a) => MethodInfo LayerShowMethodInfo a signature where
+    overloadedMethod _ = layerShow
 
 
diff --git a/GI/Poppler/Objects/Layer.hs-boot b/GI/Poppler/Objects/Layer.hs-boot
--- a/GI/Poppler/Objects/Layer.hs-boot
+++ b/GI/Poppler/Objects/Layer.hs-boot
@@ -11,3 +11,9 @@
 instance GObject Layer where
 class GObject o => LayerK o
 instance (GObject o, IsDescendantOf Layer o) => LayerK o
+data LayerGetRadioButtonGroupIdMethodInfo
+data LayerGetTitleMethodInfo
+data LayerHideMethodInfo
+data LayerIsParentMethodInfo
+data LayerIsVisibleMethodInfo
+data LayerShowMethodInfo
diff --git a/GI/Poppler/Objects/Media.hs b/GI/Poppler/Objects/Media.hs
--- a/GI/Poppler/Objects/Media.hs
+++ b/GI/Poppler/Objects/Media.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,22 +18,27 @@
 
  -- * Methods
 -- ** mediaGetFilename
+    MediaGetFilenameMethodInfo              ,
     mediaGetFilename                        ,
 
 
 -- ** mediaGetMimeType
+    MediaGetMimeTypeMethodInfo              ,
     mediaGetMimeType                        ,
 
 
 -- ** mediaIsEmbedded
+    MediaIsEmbeddedMethodInfo               ,
     mediaIsEmbedded                         ,
 
 
 -- ** mediaSave
+    MediaSaveMethodInfo                     ,
     mediaSave                               ,
 
 
 -- ** mediaSaveToCallback
+    MediaSaveToCallbackMethodInfo           ,
     mediaSaveToCallback                     ,
 
 
@@ -72,17 +78,54 @@
 noMedia :: Maybe Media
 noMedia = Nothing
 
+type family ResolveMediaMethod (t :: Symbol) (o :: *) :: * where
+    ResolveMediaMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveMediaMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveMediaMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveMediaMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveMediaMethod "isEmbedded" o = MediaIsEmbeddedMethodInfo
+    ResolveMediaMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveMediaMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveMediaMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveMediaMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveMediaMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveMediaMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveMediaMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveMediaMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveMediaMethod "save" o = MediaSaveMethodInfo
+    ResolveMediaMethod "saveToCallback" o = MediaSaveToCallbackMethodInfo
+    ResolveMediaMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveMediaMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveMediaMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveMediaMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveMediaMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveMediaMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveMediaMethod "getFilename" o = MediaGetFilenameMethodInfo
+    ResolveMediaMethod "getMimeType" o = MediaGetMimeTypeMethodInfo
+    ResolveMediaMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveMediaMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveMediaMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveMediaMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveMediaMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveMediaMethod t Media, MethodInfo info Media p) => IsLabelProxy t (Media -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveMediaMethod t Media, MethodInfo info Media p) => IsLabel t (Media -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList Media = MediaAttributeList
 type MediaAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList Media = MediaSignalList
-type MediaSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type MediaSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Media::get_filename
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -94,8 +137,8 @@
 
 mediaGetFilename ::
     (MonadIO m, MediaK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 mediaGetFilename _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_media_get_filename _obj'
@@ -104,11 +147,14 @@
     touchManagedPtr _obj
     return result'
 
+data MediaGetFilenameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, MediaK a) => MethodInfo MediaGetFilenameMethodInfo a signature where
+    overloadedMethod _ = mediaGetFilename
+
 -- method Media::get_mime_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -120,8 +166,8 @@
 
 mediaGetMimeType ::
     (MonadIO m, MediaK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 mediaGetMimeType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_media_get_mime_type _obj'
@@ -130,11 +176,14 @@
     touchManagedPtr _obj
     return result'
 
+data MediaGetMimeTypeMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, MediaK a) => MethodInfo MediaGetMimeTypeMethodInfo a signature where
+    overloadedMethod _ = mediaGetMimeType
+
 -- method Media::is_embedded
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -146,8 +195,8 @@
 
 mediaIsEmbedded ::
     (MonadIO m, MediaK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 mediaIsEmbedded _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_media_is_embedded _obj'
@@ -155,11 +204,14 @@
     touchManagedPtr _obj
     return result'
 
+data MediaIsEmbeddedMethodInfo
+instance (signature ~ (m Bool), MonadIO m, MediaK a) => MethodInfo MediaIsEmbeddedMethodInfo a signature where
+    overloadedMethod _ = mediaIsEmbedded
+
 -- method Media::save
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : True
 -- Skip return : False
@@ -173,9 +225,9 @@
 
 mediaSave ::
     (MonadIO m, MediaK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- filename
-    m ()
+    a                                       -- _obj
+    -> T.Text                               -- filename
+    -> m ()                                 -- result
 mediaSave _obj filename = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     filename' <- textToCString filename
@@ -188,11 +240,14 @@
         freeMem filename'
      )
 
+data MediaSaveMethodInfo
+instance (signature ~ (T.Text -> m ()), MonadIO m, MediaK a) => MethodInfo MediaSaveMethodInfo a signature where
+    overloadedMethod _ = mediaSave
+
 -- method Media::save_to_callback
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "save_func", argType = TInterface "Poppler" "MediaSaveFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "save_func", argType = TInterface "Poppler" "MediaSaveFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Media", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "save_func", argType = TInterface "Poppler" "MediaSaveFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : True
 -- Skip return : False
@@ -207,21 +262,25 @@
 
 mediaSaveToCallback ::
     (MonadIO m, MediaK a) =>
-    a ->                                    -- _obj
-    MediaSaveFunc ->                        -- save_func
-    m ()
-mediaSaveToCallback _obj save_func = liftIO $ do
+    a                                       -- _obj
+    -> MediaSaveFunc                        -- saveFunc
+    -> m ()                                 -- result
+mediaSaveToCallback _obj saveFunc = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    save_func' <- mkMediaSaveFunc (mediaSaveFuncWrapper Nothing save_func)
-    let user_data = nullPtr
+    saveFunc' <- mkMediaSaveFunc (mediaSaveFuncWrapper Nothing saveFunc)
+    let userData = nullPtr
     onException (do
-        _ <- propagateGError $ poppler_media_save_to_callback _obj' save_func' user_data
-        safeFreeFunPtr $ castFunPtrToPtr save_func'
+        _ <- propagateGError $ poppler_media_save_to_callback _obj' saveFunc' userData
+        safeFreeFunPtr $ castFunPtrToPtr saveFunc'
         touchManagedPtr _obj
         return ()
      ) (do
-        safeFreeFunPtr $ castFunPtrToPtr save_func'
+        safeFreeFunPtr $ castFunPtrToPtr saveFunc'
         return ()
      )
+
+data MediaSaveToCallbackMethodInfo
+instance (signature ~ (MediaSaveFunc -> m ()), MonadIO m, MediaK a) => MethodInfo MediaSaveToCallbackMethodInfo a signature where
+    overloadedMethod _ = mediaSaveToCallback
 
 
diff --git a/GI/Poppler/Objects/Media.hs-boot b/GI/Poppler/Objects/Media.hs-boot
--- a/GI/Poppler/Objects/Media.hs-boot
+++ b/GI/Poppler/Objects/Media.hs-boot
@@ -11,3 +11,8 @@
 instance GObject Media where
 class GObject o => MediaK o
 instance (GObject o, IsDescendantOf Media o) => MediaK o
+data MediaGetFilenameMethodInfo
+data MediaGetMimeTypeMethodInfo
+data MediaIsEmbeddedMethodInfo
+data MediaSaveMethodInfo
+data MediaSaveToCallbackMethodInfo
diff --git a/GI/Poppler/Objects/Movie.hs b/GI/Poppler/Objects/Movie.hs
--- a/GI/Poppler/Objects/Movie.hs
+++ b/GI/Poppler/Objects/Movie.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,14 +18,17 @@
 
  -- * Methods
 -- ** movieGetFilename
+    MovieGetFilenameMethodInfo              ,
     movieGetFilename                        ,
 
 
 -- ** movieNeedPoster
+    MovieNeedPosterMethodInfo               ,
     movieNeedPoster                         ,
 
 
 -- ** movieShowControls
+    MovieShowControlsMethodInfo             ,
     movieShowControls                       ,
 
 
@@ -64,17 +68,52 @@
 noMovie :: Maybe Movie
 noMovie = Nothing
 
+type family ResolveMovieMethod (t :: Symbol) (o :: *) :: * where
+    ResolveMovieMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveMovieMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveMovieMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveMovieMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveMovieMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveMovieMethod "needPoster" o = MovieNeedPosterMethodInfo
+    ResolveMovieMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveMovieMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveMovieMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveMovieMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveMovieMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveMovieMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveMovieMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveMovieMethod "showControls" o = MovieShowControlsMethodInfo
+    ResolveMovieMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveMovieMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveMovieMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveMovieMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveMovieMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveMovieMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveMovieMethod "getFilename" o = MovieGetFilenameMethodInfo
+    ResolveMovieMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveMovieMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveMovieMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveMovieMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveMovieMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveMovieMethod t Movie, MethodInfo info Movie p) => IsLabelProxy t (Movie -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveMovieMethod t Movie, MethodInfo info Movie p) => IsLabel t (Movie -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList Movie = MovieAttributeList
 type MovieAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList Movie = MovieSignalList
-type MovieSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type MovieSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Movie::get_filename
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -86,8 +125,8 @@
 
 movieGetFilename ::
     (MonadIO m, MovieK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 movieGetFilename _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_movie_get_filename _obj'
@@ -96,11 +135,14 @@
     touchManagedPtr _obj
     return result'
 
+data MovieGetFilenameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, MovieK a) => MethodInfo MovieGetFilenameMethodInfo a signature where
+    overloadedMethod _ = movieGetFilename
+
 -- method Movie::need_poster
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -112,8 +154,8 @@
 
 movieNeedPoster ::
     (MonadIO m, MovieK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 movieNeedPoster _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_movie_need_poster _obj'
@@ -121,11 +163,14 @@
     touchManagedPtr _obj
     return result'
 
+data MovieNeedPosterMethodInfo
+instance (signature ~ (m Bool), MonadIO m, MovieK a) => MethodInfo MovieNeedPosterMethodInfo a signature where
+    overloadedMethod _ = movieNeedPoster
+
 -- method Movie::show_controls
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Movie", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -137,13 +182,17 @@
 
 movieShowControls ::
     (MonadIO m, MovieK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 movieShowControls _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_movie_show_controls _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data MovieShowControlsMethodInfo
+instance (signature ~ (m Bool), MonadIO m, MovieK a) => MethodInfo MovieShowControlsMethodInfo a signature where
+    overloadedMethod _ = movieShowControls
 
 
diff --git a/GI/Poppler/Objects/Movie.hs-boot b/GI/Poppler/Objects/Movie.hs-boot
--- a/GI/Poppler/Objects/Movie.hs-boot
+++ b/GI/Poppler/Objects/Movie.hs-boot
@@ -11,3 +11,6 @@
 instance GObject Movie where
 class GObject o => MovieK o
 instance (GObject o, IsDescendantOf Movie o) => MovieK o
+data MovieGetFilenameMethodInfo
+data MovieNeedPosterMethodInfo
+data MovieShowControlsMethodInfo
diff --git a/GI/Poppler/Objects/PSFile.hs b/GI/Poppler/Objects/PSFile.hs
--- a/GI/Poppler/Objects/PSFile.hs
+++ b/GI/Poppler/Objects/PSFile.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,6 +18,7 @@
 
  -- * Methods
 -- ** pSFileFree
+    PSFileFreeMethodInfo                    ,
     pSFileFree                              ,
 
 
@@ -25,10 +27,12 @@
 
 
 -- ** pSFileSetDuplex
+    PSFileSetDuplexMethodInfo               ,
     pSFileSetDuplex                         ,
 
 
 -- ** pSFileSetPaperSize
+    PSFileSetPaperSizeMethodInfo            ,
     pSFileSetPaperSize                      ,
 
 
@@ -68,17 +72,52 @@
 noPSFile :: Maybe PSFile
 noPSFile = Nothing
 
+type family ResolvePSFileMethod (t :: Symbol) (o :: *) :: * where
+    ResolvePSFileMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolvePSFileMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolvePSFileMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolvePSFileMethod "free" o = PSFileFreeMethodInfo
+    ResolvePSFileMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolvePSFileMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolvePSFileMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolvePSFileMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolvePSFileMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolvePSFileMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolvePSFileMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolvePSFileMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolvePSFileMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolvePSFileMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolvePSFileMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolvePSFileMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolvePSFileMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolvePSFileMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolvePSFileMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolvePSFileMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolvePSFileMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolvePSFileMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolvePSFileMethod "setDuplex" o = PSFileSetDuplexMethodInfo
+    ResolvePSFileMethod "setPaperSize" o = PSFileSetPaperSizeMethodInfo
+    ResolvePSFileMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolvePSFileMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolvePSFileMethod t PSFile, MethodInfo info PSFile p) => IsLabelProxy t (PSFile -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolvePSFileMethod t PSFile, MethodInfo info PSFile p) => IsLabel t (PSFile -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList PSFile = PSFileAttributeList
 type PSFileAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList PSFile = PSFileSignalList
-type PSFileSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type PSFileSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method PSFile::new
 -- method type : Constructor
--- Args : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "first_page", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_pages", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "first_page", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_pages", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "first_page", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_pages", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "PSFile"
 -- throws : False
 -- Skip return : False
@@ -93,15 +132,15 @@
 
 pSFileNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- document
-    T.Text ->                               -- filename
-    Int32 ->                                -- first_page
-    Int32 ->                                -- n_pages
-    m PSFile
-pSFileNew document filename first_page n_pages = liftIO $ do
+    a                                       -- document
+    -> T.Text                               -- filename
+    -> Int32                                -- firstPage
+    -> Int32                                -- nPages
+    -> m PSFile                             -- result
+pSFileNew document filename firstPage nPages = liftIO $ do
     let document' = unsafeManagedPtrCastPtr document
     filename' <- textToCString filename
-    result <- poppler_ps_file_new document' filename' first_page n_pages
+    result <- poppler_ps_file_new document' filename' firstPage nPages
     checkUnexpectedReturnNULL "poppler_ps_file_new" result
     result' <- (wrapObject PSFile) result
     touchManagedPtr document
@@ -110,9 +149,8 @@
 
 -- method PSFile::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -124,19 +162,22 @@
 
 pSFileFree ::
     (MonadIO m, PSFileK a) =>
-    a ->                                    -- _obj
-    m ()
+    a                                       -- _obj
+    -> m ()                                 -- result
 pSFileFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     poppler_ps_file_free _obj'
     touchManagedPtr _obj
     return ()
 
+data PSFileFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m, PSFileK a) => MethodInfo PSFileFreeMethodInfo a signature where
+    overloadedMethod _ = pSFileFree
+
 -- method PSFile::set_duplex
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "duplex", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "duplex", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "duplex", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -149,9 +190,9 @@
 
 pSFileSetDuplex ::
     (MonadIO m, PSFileK a) =>
-    a ->                                    -- _obj
-    Bool ->                                 -- duplex
-    m ()
+    a                                       -- _obj
+    -> Bool                                 -- duplex
+    -> m ()                                 -- result
 pSFileSetDuplex _obj duplex = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let duplex' = (fromIntegral . fromEnum) duplex
@@ -159,11 +200,14 @@
     touchManagedPtr _obj
     return ()
 
+data PSFileSetDuplexMethodInfo
+instance (signature ~ (Bool -> m ()), MonadIO m, PSFileK a) => MethodInfo PSFileSetDuplexMethodInfo a signature where
+    overloadedMethod _ = pSFileSetDuplex
+
 -- method PSFile::set_paper_size
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -177,10 +221,10 @@
 
 pSFileSetPaperSize ::
     (MonadIO m, PSFileK a) =>
-    a ->                                    -- _obj
-    Double ->                               -- width
-    Double ->                               -- height
-    m ()
+    a                                       -- _obj
+    -> Double                               -- width
+    -> Double                               -- height
+    -> m ()                                 -- result
 pSFileSetPaperSize _obj width height = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let width' = realToFrac width
@@ -188,5 +232,9 @@
     poppler_ps_file_set_paper_size _obj' width' height'
     touchManagedPtr _obj
     return ()
+
+data PSFileSetPaperSizeMethodInfo
+instance (signature ~ (Double -> Double -> m ()), MonadIO m, PSFileK a) => MethodInfo PSFileSetPaperSizeMethodInfo a signature where
+    overloadedMethod _ = pSFileSetPaperSize
 
 
diff --git a/GI/Poppler/Objects/PSFile.hs-boot b/GI/Poppler/Objects/PSFile.hs-boot
--- a/GI/Poppler/Objects/PSFile.hs-boot
+++ b/GI/Poppler/Objects/PSFile.hs-boot
@@ -11,3 +11,6 @@
 instance GObject PSFile where
 class GObject o => PSFileK o
 instance (GObject o, IsDescendantOf PSFile o) => PSFileK o
+data PSFileFreeMethodInfo
+data PSFileSetDuplexMethodInfo
+data PSFileSetPaperSizeMethodInfo
diff --git a/GI/Poppler/Objects/Page.hs b/GI/Poppler/Objects/Page.hs
--- a/GI/Poppler/Objects/Page.hs
+++ b/GI/Poppler/Objects/Page.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,14 +18,17 @@
 
  -- * Methods
 -- ** pageAddAnnot
+    PageAddAnnotMethodInfo                  ,
     pageAddAnnot                            ,
 
 
 -- ** pageFindText
+    PageFindTextMethodInfo                  ,
     pageFindText                            ,
 
 
 -- ** pageFindTextWithOptions
+    PageFindTextWithOptionsMethodInfo       ,
     pageFindTextWithOptions                 ,
 
 
@@ -49,114 +53,142 @@
 
 
 -- ** pageGetAnnotMapping
+    PageGetAnnotMappingMethodInfo           ,
     pageGetAnnotMapping                     ,
 
 
 -- ** pageGetCropBox
+    PageGetCropBoxMethodInfo                ,
     pageGetCropBox                          ,
 
 
 -- ** pageGetDuration
+    PageGetDurationMethodInfo               ,
     pageGetDuration                         ,
 
 
 -- ** pageGetFormFieldMapping
+    PageGetFormFieldMappingMethodInfo       ,
     pageGetFormFieldMapping                 ,
 
 
 -- ** pageGetImage
+    PageGetImageMethodInfo                  ,
     pageGetImage                            ,
 
 
 -- ** pageGetImageMapping
+    PageGetImageMappingMethodInfo           ,
     pageGetImageMapping                     ,
 
 
 -- ** pageGetIndex
+    PageGetIndexMethodInfo                  ,
     pageGetIndex                            ,
 
 
 -- ** pageGetLabel
+    PageGetLabelMethodInfo                  ,
     pageGetLabel                            ,
 
 
 -- ** pageGetLinkMapping
+    PageGetLinkMappingMethodInfo            ,
     pageGetLinkMapping                      ,
 
 
 -- ** pageGetSelectedRegion
+    PageGetSelectedRegionMethodInfo         ,
     pageGetSelectedRegion                   ,
 
 
 -- ** pageGetSelectedText
+    PageGetSelectedTextMethodInfo           ,
     pageGetSelectedText                     ,
 
 
 -- ** pageGetSelectionRegion
+    PageGetSelectionRegionMethodInfo        ,
     pageGetSelectionRegion                  ,
 
 
 -- ** pageGetSize
+    PageGetSizeMethodInfo                   ,
     pageGetSize                             ,
 
 
 -- ** pageGetText
+    PageGetTextMethodInfo                   ,
     pageGetText                             ,
 
 
 -- ** pageGetTextAttributes
+    PageGetTextAttributesMethodInfo         ,
     pageGetTextAttributes                   ,
 
 
 -- ** pageGetTextAttributesForArea
+    PageGetTextAttributesForAreaMethodInfo  ,
     pageGetTextAttributesForArea            ,
 
 
 -- ** pageGetTextForArea
+    PageGetTextForAreaMethodInfo            ,
     pageGetTextForArea                      ,
 
 
 -- ** pageGetTextLayout
+    PageGetTextLayoutMethodInfo             ,
     pageGetTextLayout                       ,
 
 
 -- ** pageGetTextLayoutForArea
+    PageGetTextLayoutForAreaMethodInfo      ,
     pageGetTextLayoutForArea                ,
 
 
 -- ** pageGetThumbnail
+    PageGetThumbnailMethodInfo              ,
     pageGetThumbnail                        ,
 
 
 -- ** pageGetThumbnailSize
+    PageGetThumbnailSizeMethodInfo          ,
     pageGetThumbnailSize                    ,
 
 
 -- ** pageGetTransition
+    PageGetTransitionMethodInfo             ,
     pageGetTransition                       ,
 
 
 -- ** pageRemoveAnnot
+    PageRemoveAnnotMethodInfo               ,
     pageRemoveAnnot                         ,
 
 
 -- ** pageRender
+    PageRenderMethodInfo                    ,
     pageRender                              ,
 
 
 -- ** pageRenderForPrinting
+    PageRenderForPrintingMethodInfo         ,
     pageRenderForPrinting                   ,
 
 
 -- ** pageRenderForPrintingWithOptions
+    PageRenderForPrintingWithOptionsMethodInfo,
     pageRenderForPrintingWithOptions        ,
 
 
 -- ** pageRenderSelection
+    PageRenderSelectionMethodInfo           ,
     pageRenderSelection                     ,
 
 
 -- ** pageRenderToPs
+    PageRenderToPsMethodInfo                ,
     pageRenderToPs                          ,
 
 
@@ -209,6 +241,70 @@
 noPage :: Maybe Page
 noPage = Nothing
 
+type family ResolvePageMethod (t :: Symbol) (o :: *) :: * where
+    ResolvePageMethod "addAnnot" o = PageAddAnnotMethodInfo
+    ResolvePageMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolvePageMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolvePageMethod "findText" o = PageFindTextMethodInfo
+    ResolvePageMethod "findTextWithOptions" o = PageFindTextWithOptionsMethodInfo
+    ResolvePageMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolvePageMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolvePageMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolvePageMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolvePageMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolvePageMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolvePageMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolvePageMethod "removeAnnot" o = PageRemoveAnnotMethodInfo
+    ResolvePageMethod "render" o = PageRenderMethodInfo
+    ResolvePageMethod "renderForPrinting" o = PageRenderForPrintingMethodInfo
+    ResolvePageMethod "renderForPrintingWithOptions" o = PageRenderForPrintingWithOptionsMethodInfo
+    ResolvePageMethod "renderSelection" o = PageRenderSelectionMethodInfo
+    ResolvePageMethod "renderToPs" o = PageRenderToPsMethodInfo
+    ResolvePageMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolvePageMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolvePageMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolvePageMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolvePageMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolvePageMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolvePageMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolvePageMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolvePageMethod "getAnnotMapping" o = PageGetAnnotMappingMethodInfo
+    ResolvePageMethod "getCropBox" o = PageGetCropBoxMethodInfo
+    ResolvePageMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolvePageMethod "getDuration" o = PageGetDurationMethodInfo
+    ResolvePageMethod "getFormFieldMapping" o = PageGetFormFieldMappingMethodInfo
+    ResolvePageMethod "getImage" o = PageGetImageMethodInfo
+    ResolvePageMethod "getImageMapping" o = PageGetImageMappingMethodInfo
+    ResolvePageMethod "getIndex" o = PageGetIndexMethodInfo
+    ResolvePageMethod "getLabel" o = PageGetLabelMethodInfo
+    ResolvePageMethod "getLinkMapping" o = PageGetLinkMappingMethodInfo
+    ResolvePageMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolvePageMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolvePageMethod "getSelectedRegion" o = PageGetSelectedRegionMethodInfo
+    ResolvePageMethod "getSelectedText" o = PageGetSelectedTextMethodInfo
+    ResolvePageMethod "getSelectionRegion" o = PageGetSelectionRegionMethodInfo
+    ResolvePageMethod "getSize" o = PageGetSizeMethodInfo
+    ResolvePageMethod "getText" o = PageGetTextMethodInfo
+    ResolvePageMethod "getTextAttributes" o = PageGetTextAttributesMethodInfo
+    ResolvePageMethod "getTextAttributesForArea" o = PageGetTextAttributesForAreaMethodInfo
+    ResolvePageMethod "getTextForArea" o = PageGetTextForAreaMethodInfo
+    ResolvePageMethod "getTextLayout" o = PageGetTextLayoutMethodInfo
+    ResolvePageMethod "getTextLayoutForArea" o = PageGetTextLayoutForAreaMethodInfo
+    ResolvePageMethod "getThumbnail" o = PageGetThumbnailMethodInfo
+    ResolvePageMethod "getThumbnailSize" o = PageGetThumbnailSizeMethodInfo
+    ResolvePageMethod "getTransition" o = PageGetTransitionMethodInfo
+    ResolvePageMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolvePageMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolvePageMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolvePageMethod t Page, MethodInfo info Page p) => IsLabelProxy t (Page -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolvePageMethod t Page, MethodInfo info Page p) => IsLabel t (Page -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 -- VVV Prop "label"
    -- Type: TBasicType TUTF8
    -- Flags: [PropertyReadable]
@@ -222,7 +318,7 @@
     type AttrSetTypeConstraint PageLabelPropertyInfo = (~) ()
     type AttrBaseTypeConstraint PageLabelPropertyInfo = PageK
     type AttrGetType PageLabelPropertyInfo = T.Text
-    type AttrLabel PageLabelPropertyInfo = "Page::label"
+    type AttrLabel PageLabelPropertyInfo = "label"
     attrGet _ = getPageLabel
     attrSet _ = undefined
     attrConstruct _ = undefined
@@ -231,13 +327,12 @@
 type PageAttributeList = ('[ '("label", PageLabelPropertyInfo)] :: [(Symbol, *)])
 
 type instance SignalList Page = PageSignalList
-type PageSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type PageSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method Page::add_annot
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "annot", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "annot", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "annot", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -250,9 +345,9 @@
 
 pageAddAnnot ::
     (MonadIO m, PageK a, AnnotK b) =>
-    a ->                                    -- _obj
-    b ->                                    -- annot
-    m ()
+    a                                       -- _obj
+    -> b                                    -- annot
+    -> m ()                                 -- result
 pageAddAnnot _obj annot = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let annot' = unsafeManagedPtrCastPtr annot
@@ -261,11 +356,14 @@
     touchManagedPtr annot
     return ()
 
+data PageAddAnnotMethodInfo
+instance (signature ~ (b -> m ()), MonadIO m, PageK a, AnnotK b) => MethodInfo PageAddAnnotMethodInfo a signature where
+    overloadedMethod _ = pageAddAnnot
+
 -- method Page::find_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "Rectangle")
 -- throws : False
 -- Skip return : False
@@ -278,9 +376,9 @@
 
 pageFindText ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- text
-    m [Rectangle]
+    a                                       -- _obj
+    -> T.Text                               -- text
+    -> m [Rectangle]                        -- result
 pageFindText _obj text = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     text' <- textToCString text
@@ -293,11 +391,14 @@
     freeMem text'
     return result''
 
+data PageFindTextMethodInfo
+instance (signature ~ (T.Text -> m [Rectangle]), MonadIO m, PageK a) => MethodInfo PageFindTextMethodInfo a signature where
+    overloadedMethod _ = pageFindText
+
 -- method Page::find_text_with_options
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "options", argType = TInterface "Poppler" "FindFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "options", argType = TInterface "Poppler" "FindFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "options", argType = TInterface "Poppler" "FindFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "Rectangle")
 -- throws : False
 -- Skip return : False
@@ -311,10 +412,10 @@
 
 pageFindTextWithOptions ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    T.Text ->                               -- text
-    [FindFlags] ->                          -- options
-    m [Rectangle]
+    a                                       -- _obj
+    -> T.Text                               -- text
+    -> [FindFlags]                          -- options
+    -> m [Rectangle]                        -- result
 pageFindTextWithOptions _obj text options = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     text' <- textToCString text
@@ -328,11 +429,14 @@
     freeMem text'
     return result''
 
+data PageFindTextWithOptionsMethodInfo
+instance (signature ~ (T.Text -> [FindFlags] -> m [Rectangle]), MonadIO m, PageK a) => MethodInfo PageFindTextWithOptionsMethodInfo a signature where
+    overloadedMethod _ = pageFindTextWithOptions
+
 -- method Page::get_annot_mapping
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "AnnotMapping")
 -- throws : False
 -- Skip return : False
@@ -344,8 +448,8 @@
 
 pageGetAnnotMapping ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m [AnnotMapping]
+    a                                       -- _obj
+    -> m [AnnotMapping]                     -- result
 pageGetAnnotMapping _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_annot_mapping _obj'
@@ -356,11 +460,14 @@
     touchManagedPtr _obj
     return result''
 
+data PageGetAnnotMappingMethodInfo
+instance (signature ~ (m [AnnotMapping]), MonadIO m, PageK a) => MethodInfo PageGetAnnotMappingMethodInfo a signature where
+    overloadedMethod _ = pageGetAnnotMapping
+
 -- method Page::get_crop_box
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rect", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -373,8 +480,8 @@
 
 pageGetCropBox ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m (Rectangle)
+    a                                       -- _obj
+    -> m (Rectangle)                        -- result
 pageGetCropBox _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     rect <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
@@ -383,11 +490,14 @@
     touchManagedPtr _obj
     return rect'
 
+data PageGetCropBoxMethodInfo
+instance (signature ~ (m (Rectangle)), MonadIO m, PageK a) => MethodInfo PageGetCropBoxMethodInfo a signature where
+    overloadedMethod _ = pageGetCropBox
+
 -- method Page::get_duration
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -399,8 +509,8 @@
 
 pageGetDuration ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 pageGetDuration _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_duration _obj'
@@ -408,11 +518,14 @@
     touchManagedPtr _obj
     return result'
 
+data PageGetDurationMethodInfo
+instance (signature ~ (m Double), MonadIO m, PageK a) => MethodInfo PageGetDurationMethodInfo a signature where
+    overloadedMethod _ = pageGetDuration
+
 -- method Page::get_form_field_mapping
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "FormFieldMapping")
 -- throws : False
 -- Skip return : False
@@ -424,8 +537,8 @@
 
 pageGetFormFieldMapping ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m [FormFieldMapping]
+    a                                       -- _obj
+    -> m [FormFieldMapping]                 -- result
 pageGetFormFieldMapping _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_form_field_mapping _obj'
@@ -436,11 +549,14 @@
     touchManagedPtr _obj
     return result''
 
+data PageGetFormFieldMappingMethodInfo
+instance (signature ~ (m [FormFieldMapping]), MonadIO m, PageK a) => MethodInfo PageGetFormFieldMappingMethodInfo a signature where
+    overloadedMethod _ = pageGetFormFieldMapping
+
 -- method Page::get_image
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "image_id", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "image_id", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "image_id", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "cairo" "Surface"
 -- throws : False
 -- Skip return : False
@@ -453,22 +569,25 @@
 
 pageGetImage ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Int32 ->                                -- image_id
-    m Cairo.Surface
-pageGetImage _obj image_id = liftIO $ do
+    a                                       -- _obj
+    -> Int32                                -- imageId
+    -> m Cairo.Surface                      -- result
+pageGetImage _obj imageId = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    result <- poppler_page_get_image _obj' image_id
+    result <- poppler_page_get_image _obj' imageId
     checkUnexpectedReturnNULL "poppler_page_get_image" result
     result' <- (wrapBoxed Cairo.Surface) result
     touchManagedPtr _obj
     return result'
 
+data PageGetImageMethodInfo
+instance (signature ~ (Int32 -> m Cairo.Surface), MonadIO m, PageK a) => MethodInfo PageGetImageMethodInfo a signature where
+    overloadedMethod _ = pageGetImage
+
 -- method Page::get_image_mapping
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "ImageMapping")
 -- throws : False
 -- Skip return : False
@@ -480,8 +599,8 @@
 
 pageGetImageMapping ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m [ImageMapping]
+    a                                       -- _obj
+    -> m [ImageMapping]                     -- result
 pageGetImageMapping _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_image_mapping _obj'
@@ -492,11 +611,14 @@
     touchManagedPtr _obj
     return result''
 
+data PageGetImageMappingMethodInfo
+instance (signature ~ (m [ImageMapping]), MonadIO m, PageK a) => MethodInfo PageGetImageMappingMethodInfo a signature where
+    overloadedMethod _ = pageGetImageMapping
+
 -- method Page::get_index
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -508,19 +630,22 @@
 
 pageGetIndex ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 pageGetIndex _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_index _obj'
     touchManagedPtr _obj
     return result
 
+data PageGetIndexMethodInfo
+instance (signature ~ (m Int32), MonadIO m, PageK a) => MethodInfo PageGetIndexMethodInfo a signature where
+    overloadedMethod _ = pageGetIndex
+
 -- method Page::get_label
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -532,8 +657,8 @@
 
 pageGetLabel ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 pageGetLabel _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_label _obj'
@@ -543,11 +668,14 @@
     touchManagedPtr _obj
     return result'
 
+data PageGetLabelMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, PageK a) => MethodInfo PageGetLabelMethodInfo a signature where
+    overloadedMethod _ = pageGetLabel
+
 -- method Page::get_link_mapping
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "LinkMapping")
 -- throws : False
 -- Skip return : False
@@ -559,8 +687,8 @@
 
 pageGetLinkMapping ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m [LinkMapping]
+    a                                       -- _obj
+    -> m [LinkMapping]                      -- result
 pageGetLinkMapping _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_link_mapping _obj'
@@ -571,11 +699,14 @@
     touchManagedPtr _obj
     return result''
 
+data PageGetLinkMappingMethodInfo
+instance (signature ~ (m [LinkMapping]), MonadIO m, PageK a) => MethodInfo PageGetLinkMappingMethodInfo a signature where
+    overloadedMethod _ = pageGetLinkMapping
+
 -- method Page::get_selected_region
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "scale", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "cairo" "Region"
 -- throws : False
 -- Skip return : False
@@ -590,11 +721,11 @@
 
 pageGetSelectedRegion ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Double ->                               -- scale
-    SelectionStyle ->                       -- style
-    Rectangle ->                            -- selection
-    m Cairo.Region
+    a                                       -- _obj
+    -> Double                               -- scale
+    -> SelectionStyle                       -- style
+    -> Rectangle                            -- selection
+    -> m Cairo.Region                       -- result
 pageGetSelectedRegion _obj scale style selection = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let scale' = realToFrac scale
@@ -607,11 +738,14 @@
     touchManagedPtr selection
     return result'
 
+data PageGetSelectedRegionMethodInfo
+instance (signature ~ (Double -> SelectionStyle -> Rectangle -> m Cairo.Region), MonadIO m, PageK a) => MethodInfo PageGetSelectedRegionMethodInfo a signature where
+    overloadedMethod _ = pageGetSelectedRegion
+
 -- method Page::get_selected_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -625,10 +759,10 @@
 
 pageGetSelectedText ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    SelectionStyle ->                       -- style
-    Rectangle ->                            -- selection
-    m T.Text
+    a                                       -- _obj
+    -> SelectionStyle                       -- style
+    -> Rectangle                            -- selection
+    -> m T.Text                             -- result
 pageGetSelectedText _obj style selection = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let style' = (fromIntegral . fromEnum) style
@@ -641,11 +775,14 @@
     touchManagedPtr selection
     return result'
 
+data PageGetSelectedTextMethodInfo
+instance (signature ~ (SelectionStyle -> Rectangle -> m T.Text), MonadIO m, PageK a) => MethodInfo PageGetSelectedTextMethodInfo a signature where
+    overloadedMethod _ = pageGetSelectedText
+
 -- method Page::get_selection_region
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "scale", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "Rectangle")
 -- throws : False
 -- Skip return : False
@@ -660,11 +797,11 @@
 {-# DEPRECATED pageGetSelectionRegion ["(Since version 0.16)","Use poppler_page_get_selected_region() instead."]#-}
 pageGetSelectionRegion ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Double ->                               -- scale
-    SelectionStyle ->                       -- style
-    Rectangle ->                            -- selection
-    m [Rectangle]
+    a                                       -- _obj
+    -> Double                               -- scale
+    -> SelectionStyle                       -- style
+    -> Rectangle                            -- selection
+    -> m [Rectangle]                        -- result
 pageGetSelectionRegion _obj scale style selection = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let scale' = realToFrac scale
@@ -679,11 +816,14 @@
     touchManagedPtr selection
     return result''
 
+data PageGetSelectionRegionMethodInfo
+instance (signature ~ (Double -> SelectionStyle -> Rectangle -> m [Rectangle]), MonadIO m, PageK a) => MethodInfo PageGetSelectionRegionMethodInfo a signature where
+    overloadedMethod _ = pageGetSelectionRegion
+
 -- method Page::get_size
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "height", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "height", argType = TBasicType TDouble, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -697,8 +837,8 @@
 
 pageGetSize ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m (Double,Double)
+    a                                       -- _obj
+    -> m (Double,Double)                    -- result
 pageGetSize _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     width <- allocMem :: IO (Ptr CDouble)
@@ -713,11 +853,14 @@
     freeMem height
     return (width'', height'')
 
+data PageGetSizeMethodInfo
+instance (signature ~ (m (Double,Double)), MonadIO m, PageK a) => MethodInfo PageGetSizeMethodInfo a signature where
+    overloadedMethod _ = pageGetSize
+
 -- method Page::get_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -729,8 +872,8 @@
 
 pageGetText ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 pageGetText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_text _obj'
@@ -740,11 +883,14 @@
     touchManagedPtr _obj
     return result'
 
+data PageGetTextMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, PageK a) => MethodInfo PageGetTextMethodInfo a signature where
+    overloadedMethod _ = pageGetText
+
 -- method Page::get_text_attributes
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "TextAttributes")
 -- throws : False
 -- Skip return : False
@@ -756,8 +902,8 @@
 
 pageGetTextAttributes ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m [TextAttributes]
+    a                                       -- _obj
+    -> m [TextAttributes]                   -- result
 pageGetTextAttributes _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_text_attributes _obj'
@@ -768,11 +914,14 @@
     touchManagedPtr _obj
     return result''
 
+data PageGetTextAttributesMethodInfo
+instance (signature ~ (m [TextAttributes]), MonadIO m, PageK a) => MethodInfo PageGetTextAttributesMethodInfo a signature where
+    overloadedMethod _ = pageGetTextAttributes
+
 -- method Page::get_text_attributes_for_area
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TGList (TInterface "Poppler" "TextAttributes")
 -- throws : False
 -- Skip return : False
@@ -785,9 +934,9 @@
 
 pageGetTextAttributesForArea ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Rectangle ->                            -- area
-    m [TextAttributes]
+    a                                       -- _obj
+    -> Rectangle                            -- area
+    -> m [TextAttributes]                   -- result
 pageGetTextAttributesForArea _obj area = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let area' = unsafeManagedPtrGetPtr area
@@ -800,11 +949,14 @@
     touchManagedPtr area
     return result''
 
+data PageGetTextAttributesForAreaMethodInfo
+instance (signature ~ (Rectangle -> m [TextAttributes]), MonadIO m, PageK a) => MethodInfo PageGetTextAttributesForAreaMethodInfo a signature where
+    overloadedMethod _ = pageGetTextAttributesForArea
+
 -- method Page::get_text_for_area
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -817,9 +969,9 @@
 
 pageGetTextForArea ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Rectangle ->                            -- area
-    m T.Text
+    a                                       -- _obj
+    -> Rectangle                            -- area
+    -> m T.Text                             -- result
 pageGetTextForArea _obj area = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let area' = unsafeManagedPtrGetPtr area
@@ -831,11 +983,14 @@
     touchManagedPtr area
     return result'
 
+data PageGetTextForAreaMethodInfo
+instance (signature ~ (Rectangle -> m T.Text), MonadIO m, PageK a) => MethodInfo PageGetTextForAreaMethodInfo a signature where
+    overloadedMethod _ = pageGetTextForArea
+
 -- method Page::get_text_layout
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rectangles", argType = TCArray False (-1) 2 (TInterface "Poppler" "Rectangle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferContainer},Arg {argName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- Lengths : [Arg {argName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rectangles", argType = TCArray False (-1) 2 (TInterface "Poppler" "Rectangle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferContainer},Arg {argCName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
+-- Lengths : [Arg {argCName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -849,29 +1004,32 @@
 
 pageGetTextLayout ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m (Bool,[Rectangle])
+    a                                       -- _obj
+    -> m (Bool,[Rectangle])                 -- result
 pageGetTextLayout _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     rectangles <- allocMem :: IO (Ptr (Ptr Rectangle))
-    n_rectangles <- allocMem :: IO (Ptr Word32)
-    result <- poppler_page_get_text_layout _obj' rectangles n_rectangles
-    n_rectangles' <- peek n_rectangles
+    nRectangles <- allocMem :: IO (Ptr Word32)
+    result <- poppler_page_get_text_layout _obj' rectangles nRectangles
+    nRectangles' <- peek nRectangles
     let result' = (/= 0) result
     rectangles' <- peek rectangles
-    rectangles'' <- (unpackBoxedArrayWithLength 32 n_rectangles') rectangles'
+    rectangles'' <- (unpackBoxedArrayWithLength 32 nRectangles') rectangles'
     rectangles''' <- mapM (newBoxed Rectangle) rectangles''
     freeMem rectangles'
     touchManagedPtr _obj
     freeMem rectangles
-    freeMem n_rectangles
+    freeMem nRectangles
     return (result', rectangles''')
 
+data PageGetTextLayoutMethodInfo
+instance (signature ~ (m (Bool,[Rectangle])), MonadIO m, PageK a) => MethodInfo PageGetTextLayoutMethodInfo a signature where
+    overloadedMethod _ = pageGetTextLayout
+
 -- method Page::get_text_layout_for_area
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rectangles", argType = TCArray False (-1) 3 (TInterface "Poppler" "Rectangle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferContainer},Arg {argName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- Lengths : [Arg {argName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "area", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "rectangles", argType = TCArray False (-1) 3 (TInterface "Poppler" "Rectangle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferContainer},Arg {argCName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
+-- Lengths : [Arg {argCName = "n_rectangles", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -886,32 +1044,35 @@
 
 pageGetTextLayoutForArea ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Rectangle ->                            -- area
-    m (Bool,[Rectangle])
+    a                                       -- _obj
+    -> Rectangle                            -- area
+    -> m (Bool,[Rectangle])                 -- result
 pageGetTextLayoutForArea _obj area = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let area' = unsafeManagedPtrGetPtr area
     rectangles <- allocMem :: IO (Ptr (Ptr Rectangle))
-    n_rectangles <- allocMem :: IO (Ptr Word32)
-    result <- poppler_page_get_text_layout_for_area _obj' area' rectangles n_rectangles
-    n_rectangles' <- peek n_rectangles
+    nRectangles <- allocMem :: IO (Ptr Word32)
+    result <- poppler_page_get_text_layout_for_area _obj' area' rectangles nRectangles
+    nRectangles' <- peek nRectangles
     let result' = (/= 0) result
     rectangles' <- peek rectangles
-    rectangles'' <- (unpackBoxedArrayWithLength 32 n_rectangles') rectangles'
+    rectangles'' <- (unpackBoxedArrayWithLength 32 nRectangles') rectangles'
     rectangles''' <- mapM (newBoxed Rectangle) rectangles''
     freeMem rectangles'
     touchManagedPtr _obj
     touchManagedPtr area
     freeMem rectangles
-    freeMem n_rectangles
+    freeMem nRectangles
     return (result', rectangles''')
 
+data PageGetTextLayoutForAreaMethodInfo
+instance (signature ~ (Rectangle -> m (Bool,[Rectangle])), MonadIO m, PageK a) => MethodInfo PageGetTextLayoutForAreaMethodInfo a signature where
+    overloadedMethod _ = pageGetTextLayoutForArea
+
 -- method Page::get_thumbnail
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "cairo" "Surface"
 -- throws : False
 -- Skip return : False
@@ -923,8 +1084,8 @@
 
 pageGetThumbnail ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m Cairo.Surface
+    a                                       -- _obj
+    -> m Cairo.Surface                      -- result
 pageGetThumbnail _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_thumbnail _obj'
@@ -933,11 +1094,14 @@
     touchManagedPtr _obj
     return result'
 
+data PageGetThumbnailMethodInfo
+instance (signature ~ (m Cairo.Surface), MonadIO m, PageK a) => MethodInfo PageGetThumbnailMethodInfo a signature where
+    overloadedMethod _ = pageGetThumbnail
+
 -- method Page::get_thumbnail_size
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "height", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -951,8 +1115,8 @@
 
 pageGetThumbnailSize ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m (Bool,Int32,Int32)
+    a                                       -- _obj
+    -> m (Bool,Int32,Int32)                 -- result
 pageGetThumbnailSize _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     width <- allocMem :: IO (Ptr Int32)
@@ -966,11 +1130,14 @@
     freeMem height
     return (result', width', height')
 
+data PageGetThumbnailSizeMethodInfo
+instance (signature ~ (m (Bool,Int32,Int32)), MonadIO m, PageK a) => MethodInfo PageGetThumbnailSizeMethodInfo a signature where
+    overloadedMethod _ = pageGetThumbnailSize
+
 -- method Page::get_transition
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "PageTransition"
 -- throws : False
 -- Skip return : False
@@ -982,8 +1149,8 @@
 
 pageGetTransition ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    m PageTransition
+    a                                       -- _obj
+    -> m PageTransition                     -- result
 pageGetTransition _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_page_get_transition _obj'
@@ -992,11 +1159,14 @@
     touchManagedPtr _obj
     return result'
 
+data PageGetTransitionMethodInfo
+instance (signature ~ (m PageTransition), MonadIO m, PageK a) => MethodInfo PageGetTransitionMethodInfo a signature where
+    overloadedMethod _ = pageGetTransition
+
 -- method Page::remove_annot
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "annot", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "annot", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "annot", argType = TInterface "Poppler" "Annot", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1009,9 +1179,9 @@
 
 pageRemoveAnnot ::
     (MonadIO m, PageK a, AnnotK b) =>
-    a ->                                    -- _obj
-    b ->                                    -- annot
-    m ()
+    a                                       -- _obj
+    -> b                                    -- annot
+    -> m ()                                 -- result
 pageRemoveAnnot _obj annot = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let annot' = unsafeManagedPtrCastPtr annot
@@ -1020,11 +1190,14 @@
     touchManagedPtr annot
     return ()
 
+data PageRemoveAnnotMethodInfo
+instance (signature ~ (b -> m ()), MonadIO m, PageK a, AnnotK b) => MethodInfo PageRemoveAnnotMethodInfo a signature where
+    overloadedMethod _ = pageRemoveAnnot
+
 -- method Page::render
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1037,9 +1210,9 @@
 
 pageRender ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Cairo.Context ->                        -- cairo
-    m ()
+    a                                       -- _obj
+    -> Cairo.Context                        -- cairo
+    -> m ()                                 -- result
 pageRender _obj cairo = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let cairo' = unsafeManagedPtrGetPtr cairo
@@ -1048,11 +1221,14 @@
     touchManagedPtr cairo
     return ()
 
+data PageRenderMethodInfo
+instance (signature ~ (Cairo.Context -> m ()), MonadIO m, PageK a) => MethodInfo PageRenderMethodInfo a signature where
+    overloadedMethod _ = pageRender
+
 -- method Page::render_for_printing
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1065,9 +1241,9 @@
 
 pageRenderForPrinting ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Cairo.Context ->                        -- cairo
-    m ()
+    a                                       -- _obj
+    -> Cairo.Context                        -- cairo
+    -> m ()                                 -- result
 pageRenderForPrinting _obj cairo = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let cairo' = unsafeManagedPtrGetPtr cairo
@@ -1076,11 +1252,14 @@
     touchManagedPtr cairo
     return ()
 
+data PageRenderForPrintingMethodInfo
+instance (signature ~ (Cairo.Context -> m ()), MonadIO m, PageK a) => MethodInfo PageRenderForPrintingMethodInfo a signature where
+    overloadedMethod _ = pageRenderForPrinting
+
 -- method Page::render_for_printing_with_options
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "options", argType = TInterface "Poppler" "PrintFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "options", argType = TInterface "Poppler" "PrintFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "options", argType = TInterface "Poppler" "PrintFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1094,10 +1273,10 @@
 
 pageRenderForPrintingWithOptions ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Cairo.Context ->                        -- cairo
-    [PrintFlags] ->                         -- options
-    m ()
+    a                                       -- _obj
+    -> Cairo.Context                        -- cairo
+    -> [PrintFlags]                         -- options
+    -> m ()                                 -- result
 pageRenderForPrintingWithOptions _obj cairo options = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let cairo' = unsafeManagedPtrGetPtr cairo
@@ -1107,11 +1286,14 @@
     touchManagedPtr cairo
     return ()
 
+data PageRenderForPrintingWithOptionsMethodInfo
+instance (signature ~ (Cairo.Context -> [PrintFlags] -> m ()), MonadIO m, PageK a) => MethodInfo PageRenderForPrintingWithOptionsMethodInfo a signature where
+    overloadedMethod _ = pageRenderForPrintingWithOptions
+
 -- method Page::render_selection
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "background_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "old_selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "glyph_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "background_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cairo", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_selection", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Poppler" "SelectionStyle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "background_color", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1129,36 +1311,39 @@
 
 pageRenderSelection ::
     (MonadIO m, PageK a) =>
-    a ->                                    -- _obj
-    Cairo.Context ->                        -- cairo
-    Rectangle ->                            -- selection
-    Rectangle ->                            -- old_selection
-    SelectionStyle ->                       -- style
-    Color ->                                -- glyph_color
-    Color ->                                -- background_color
-    m ()
-pageRenderSelection _obj cairo selection old_selection style glyph_color background_color = liftIO $ do
+    a                                       -- _obj
+    -> Cairo.Context                        -- cairo
+    -> Rectangle                            -- selection
+    -> Rectangle                            -- oldSelection
+    -> SelectionStyle                       -- style
+    -> Color                                -- glyphColor
+    -> Color                                -- backgroundColor
+    -> m ()                                 -- result
+pageRenderSelection _obj cairo selection oldSelection style glyphColor backgroundColor = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let cairo' = unsafeManagedPtrGetPtr cairo
     let selection' = unsafeManagedPtrGetPtr selection
-    let old_selection' = unsafeManagedPtrGetPtr old_selection
+    let oldSelection' = unsafeManagedPtrGetPtr oldSelection
     let style' = (fromIntegral . fromEnum) style
-    let glyph_color' = unsafeManagedPtrGetPtr glyph_color
-    let background_color' = unsafeManagedPtrGetPtr background_color
-    poppler_page_render_selection _obj' cairo' selection' old_selection' style' glyph_color' background_color'
+    let glyphColor' = unsafeManagedPtrGetPtr glyphColor
+    let backgroundColor' = unsafeManagedPtrGetPtr backgroundColor
+    poppler_page_render_selection _obj' cairo' selection' oldSelection' style' glyphColor' backgroundColor'
     touchManagedPtr _obj
     touchManagedPtr cairo
     touchManagedPtr selection
-    touchManagedPtr old_selection
-    touchManagedPtr glyph_color
-    touchManagedPtr background_color
+    touchManagedPtr oldSelection
+    touchManagedPtr glyphColor
+    touchManagedPtr backgroundColor
     return ()
 
+data PageRenderSelectionMethodInfo
+instance (signature ~ (Cairo.Context -> Rectangle -> Rectangle -> SelectionStyle -> Color -> Color -> m ()), MonadIO m, PageK a) => MethodInfo PageRenderSelectionMethodInfo a signature where
+    overloadedMethod _ = pageRenderSelection
+
 -- method Page::render_to_ps
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ps_file", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "ps_file", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Page", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ps_file", argType = TInterface "Poppler" "PSFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1171,22 +1356,25 @@
 
 pageRenderToPs ::
     (MonadIO m, PageK a, PSFileK b) =>
-    a ->                                    -- _obj
-    b ->                                    -- ps_file
-    m ()
-pageRenderToPs _obj ps_file = liftIO $ do
+    a                                       -- _obj
+    -> b                                    -- psFile
+    -> m ()                                 -- result
+pageRenderToPs _obj psFile = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    let ps_file' = unsafeManagedPtrCastPtr ps_file
-    poppler_page_render_to_ps _obj' ps_file'
+    let psFile' = unsafeManagedPtrCastPtr psFile
+    poppler_page_render_to_ps _obj' psFile'
     touchManagedPtr _obj
-    touchManagedPtr ps_file
+    touchManagedPtr psFile
     return ()
 
+data PageRenderToPsMethodInfo
+instance (signature ~ (b -> m ()), MonadIO m, PageK a, PSFileK b) => MethodInfo PageRenderToPsMethodInfo a signature where
+    overloadedMethod _ = pageRenderToPs
+
 -- method Page::free_annot_mapping
 -- method type : MemberFunction
--- Args : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "AnnotMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "list", argType = TGList (TInterface "Poppler" "AnnotMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "AnnotMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1198,8 +1386,8 @@
 
 pageFreeAnnotMapping ::
     (MonadIO m) =>
-    [AnnotMapping] ->                       -- list
-    m ()
+    [AnnotMapping]                          -- list
+    -> m ()                                 -- result
 pageFreeAnnotMapping list = liftIO $ do
     let list' = map unsafeManagedPtrGetPtr list
     list'' <- packGList list'
@@ -1210,9 +1398,8 @@
 
 -- method Page::free_form_field_mapping
 -- method type : MemberFunction
--- Args : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "FormFieldMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "list", argType = TGList (TInterface "Poppler" "FormFieldMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "FormFieldMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1224,8 +1411,8 @@
 
 pageFreeFormFieldMapping ::
     (MonadIO m) =>
-    [FormFieldMapping] ->                   -- list
-    m ()
+    [FormFieldMapping]                      -- list
+    -> m ()                                 -- result
 pageFreeFormFieldMapping list = liftIO $ do
     let list' = map unsafeManagedPtrGetPtr list
     list'' <- packGList list'
@@ -1236,9 +1423,8 @@
 
 -- method Page::free_image_mapping
 -- method type : MemberFunction
--- Args : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "ImageMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "list", argType = TGList (TInterface "Poppler" "ImageMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "ImageMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1250,8 +1436,8 @@
 
 pageFreeImageMapping ::
     (MonadIO m) =>
-    [ImageMapping] ->                       -- list
-    m ()
+    [ImageMapping]                          -- list
+    -> m ()                                 -- result
 pageFreeImageMapping list = liftIO $ do
     let list' = map unsafeManagedPtrGetPtr list
     list'' <- packGList list'
@@ -1262,9 +1448,8 @@
 
 -- method Page::free_link_mapping
 -- method type : MemberFunction
--- Args : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "LinkMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "list", argType = TGList (TInterface "Poppler" "LinkMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "LinkMapping"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1276,8 +1461,8 @@
 
 pageFreeLinkMapping ::
     (MonadIO m) =>
-    [LinkMapping] ->                        -- list
-    m ()
+    [LinkMapping]                           -- list
+    -> m ()                                 -- result
 pageFreeLinkMapping list = liftIO $ do
     let list' = map unsafeManagedPtrGetPtr list
     list'' <- packGList list'
@@ -1288,9 +1473,8 @@
 
 -- method Page::free_text_attributes
 -- method type : MemberFunction
--- Args : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "TextAttributes"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "list", argType = TGList (TInterface "Poppler" "TextAttributes"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "list", argType = TGList (TInterface "Poppler" "TextAttributes"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1302,8 +1486,8 @@
 
 pageFreeTextAttributes ::
     (MonadIO m) =>
-    [TextAttributes] ->                     -- list
-    m ()
+    [TextAttributes]                        -- list
+    -> m ()                                 -- result
 pageFreeTextAttributes list = liftIO $ do
     let list' = map unsafeManagedPtrGetPtr list
     list'' <- packGList list'
@@ -1314,9 +1498,8 @@
 
 -- method Page::selection_region_free
 -- method type : MemberFunction
--- Args : [Arg {argName = "region", argType = TGList (TInterface "Poppler" "Rectangle"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "region", argType = TGList (TInterface "Poppler" "Rectangle"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "region", argType = TGList (TInterface "Poppler" "Rectangle"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1328,8 +1511,8 @@
 {-# DEPRECATED pageSelectionRegionFree ["(Since version 0.16)"]#-}
 pageSelectionRegionFree ::
     (MonadIO m) =>
-    [Rectangle] ->                          -- region
-    m ()
+    [Rectangle]                             -- region
+    -> m ()                                 -- result
 pageSelectionRegionFree region = liftIO $ do
     let region' = map unsafeManagedPtrGetPtr region
     region'' <- packGList region'
diff --git a/GI/Poppler/Objects/Page.hs-boot b/GI/Poppler/Objects/Page.hs-boot
--- a/GI/Poppler/Objects/Page.hs-boot
+++ b/GI/Poppler/Objects/Page.hs-boot
@@ -12,3 +12,34 @@
 class GObject o => PageK o
 instance (GObject o, IsDescendantOf Page o) => PageK o
 data PageLabelPropertyInfo
+data PageAddAnnotMethodInfo
+data PageFindTextMethodInfo
+data PageFindTextWithOptionsMethodInfo
+data PageGetAnnotMappingMethodInfo
+data PageGetCropBoxMethodInfo
+data PageGetDurationMethodInfo
+data PageGetFormFieldMappingMethodInfo
+data PageGetImageMethodInfo
+data PageGetImageMappingMethodInfo
+data PageGetIndexMethodInfo
+data PageGetLabelMethodInfo
+data PageGetLinkMappingMethodInfo
+data PageGetSelectedRegionMethodInfo
+data PageGetSelectedTextMethodInfo
+data PageGetSelectionRegionMethodInfo
+data PageGetSizeMethodInfo
+data PageGetTextMethodInfo
+data PageGetTextAttributesMethodInfo
+data PageGetTextAttributesForAreaMethodInfo
+data PageGetTextForAreaMethodInfo
+data PageGetTextLayoutMethodInfo
+data PageGetTextLayoutForAreaMethodInfo
+data PageGetThumbnailMethodInfo
+data PageGetThumbnailSizeMethodInfo
+data PageGetTransitionMethodInfo
+data PageRemoveAnnotMethodInfo
+data PageRenderMethodInfo
+data PageRenderForPrintingMethodInfo
+data PageRenderForPrintingWithOptionsMethodInfo
+data PageRenderSelectionMethodInfo
+data PageRenderToPsMethodInfo
diff --git a/GI/Poppler/Objects/StructureElement.hs b/GI/Poppler/Objects/StructureElement.hs
--- a/GI/Poppler/Objects/StructureElement.hs
+++ b/GI/Poppler/Objects/StructureElement.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -17,222 +18,277 @@
 
  -- * Methods
 -- ** structureElementGetAbbreviation
+    StructureElementGetAbbreviationMethodInfo,
     structureElementGetAbbreviation         ,
 
 
 -- ** structureElementGetActualText
+    StructureElementGetActualTextMethodInfo ,
     structureElementGetActualText           ,
 
 
 -- ** structureElementGetAltText
+    StructureElementGetAltTextMethodInfo    ,
     structureElementGetAltText              ,
 
 
 -- ** structureElementGetBackgroundColor
+    StructureElementGetBackgroundColorMethodInfo,
     structureElementGetBackgroundColor      ,
 
 
 -- ** structureElementGetBaselineShift
+    StructureElementGetBaselineShiftMethodInfo,
     structureElementGetBaselineShift        ,
 
 
 -- ** structureElementGetBlockAlign
+    StructureElementGetBlockAlignMethodInfo ,
     structureElementGetBlockAlign           ,
 
 
 -- ** structureElementGetBorderColor
+    StructureElementGetBorderColorMethodInfo,
     structureElementGetBorderColor          ,
 
 
 -- ** structureElementGetBorderStyle
+    StructureElementGetBorderStyleMethodInfo,
     structureElementGetBorderStyle          ,
 
 
 -- ** structureElementGetBorderThickness
+    StructureElementGetBorderThicknessMethodInfo,
     structureElementGetBorderThickness      ,
 
 
 -- ** structureElementGetBoundingBox
+    StructureElementGetBoundingBoxMethodInfo,
     structureElementGetBoundingBox          ,
 
 
 -- ** structureElementGetColor
+    StructureElementGetColorMethodInfo      ,
     structureElementGetColor                ,
 
 
 -- ** structureElementGetColumnCount
+    StructureElementGetColumnCountMethodInfo,
     structureElementGetColumnCount          ,
 
 
 -- ** structureElementGetColumnGaps
+    StructureElementGetColumnGapsMethodInfo ,
     structureElementGetColumnGaps           ,
 
 
 -- ** structureElementGetColumnWidths
+    StructureElementGetColumnWidthsMethodInfo,
     structureElementGetColumnWidths         ,
 
 
 -- ** structureElementGetEndIndent
+    StructureElementGetEndIndentMethodInfo  ,
     structureElementGetEndIndent            ,
 
 
 -- ** structureElementGetFormDescription
+    StructureElementGetFormDescriptionMethodInfo,
     structureElementGetFormDescription      ,
 
 
 -- ** structureElementGetFormRole
+    StructureElementGetFormRoleMethodInfo   ,
     structureElementGetFormRole             ,
 
 
 -- ** structureElementGetFormState
+    StructureElementGetFormStateMethodInfo  ,
     structureElementGetFormState            ,
 
 
 -- ** structureElementGetGlyphOrientation
+    StructureElementGetGlyphOrientationMethodInfo,
     structureElementGetGlyphOrientation     ,
 
 
 -- ** structureElementGetHeight
+    StructureElementGetHeightMethodInfo     ,
     structureElementGetHeight               ,
 
 
 -- ** structureElementGetId
+    StructureElementGetIdMethodInfo         ,
     structureElementGetId                   ,
 
 
 -- ** structureElementGetInlineAlign
+    StructureElementGetInlineAlignMethodInfo,
     structureElementGetInlineAlign          ,
 
 
 -- ** structureElementGetKind
+    StructureElementGetKindMethodInfo       ,
     structureElementGetKind                 ,
 
 
 -- ** structureElementGetLanguage
+    StructureElementGetLanguageMethodInfo   ,
     structureElementGetLanguage             ,
 
 
 -- ** structureElementGetLineHeight
+    StructureElementGetLineHeightMethodInfo ,
     structureElementGetLineHeight           ,
 
 
 -- ** structureElementGetListNumbering
+    StructureElementGetListNumberingMethodInfo,
     structureElementGetListNumbering        ,
 
 
 -- ** structureElementGetPadding
+    StructureElementGetPaddingMethodInfo    ,
     structureElementGetPadding              ,
 
 
 -- ** structureElementGetPage
+    StructureElementGetPageMethodInfo       ,
     structureElementGetPage                 ,
 
 
 -- ** structureElementGetPlacement
+    StructureElementGetPlacementMethodInfo  ,
     structureElementGetPlacement            ,
 
 
 -- ** structureElementGetRubyAlign
+    StructureElementGetRubyAlignMethodInfo  ,
     structureElementGetRubyAlign            ,
 
 
 -- ** structureElementGetRubyPosition
+    StructureElementGetRubyPositionMethodInfo,
     structureElementGetRubyPosition         ,
 
 
 -- ** structureElementGetSpaceAfter
+    StructureElementGetSpaceAfterMethodInfo ,
     structureElementGetSpaceAfter           ,
 
 
 -- ** structureElementGetSpaceBefore
+    StructureElementGetSpaceBeforeMethodInfo,
     structureElementGetSpaceBefore          ,
 
 
 -- ** structureElementGetStartIndent
+    StructureElementGetStartIndentMethodInfo,
     structureElementGetStartIndent          ,
 
 
 -- ** structureElementGetTableBorderStyle
+    StructureElementGetTableBorderStyleMethodInfo,
     structureElementGetTableBorderStyle     ,
 
 
 -- ** structureElementGetTableColumnSpan
+    StructureElementGetTableColumnSpanMethodInfo,
     structureElementGetTableColumnSpan      ,
 
 
 -- ** structureElementGetTableHeaders
+    StructureElementGetTableHeadersMethodInfo,
     structureElementGetTableHeaders         ,
 
 
 -- ** structureElementGetTablePadding
+    StructureElementGetTablePaddingMethodInfo,
     structureElementGetTablePadding         ,
 
 
 -- ** structureElementGetTableRowSpan
+    StructureElementGetTableRowSpanMethodInfo,
     structureElementGetTableRowSpan         ,
 
 
 -- ** structureElementGetTableScope
+    StructureElementGetTableScopeMethodInfo ,
     structureElementGetTableScope           ,
 
 
 -- ** structureElementGetTableSummary
+    StructureElementGetTableSummaryMethodInfo,
     structureElementGetTableSummary         ,
 
 
 -- ** structureElementGetText
+    StructureElementGetTextMethodInfo       ,
     structureElementGetText                 ,
 
 
 -- ** structureElementGetTextAlign
+    StructureElementGetTextAlignMethodInfo  ,
     structureElementGetTextAlign            ,
 
 
 -- ** structureElementGetTextDecorationColor
+    StructureElementGetTextDecorationColorMethodInfo,
     structureElementGetTextDecorationColor  ,
 
 
 -- ** structureElementGetTextDecorationThickness
+    StructureElementGetTextDecorationThicknessMethodInfo,
     structureElementGetTextDecorationThickness,
 
 
 -- ** structureElementGetTextDecorationType
+    StructureElementGetTextDecorationTypeMethodInfo,
     structureElementGetTextDecorationType   ,
 
 
 -- ** structureElementGetTextIndent
+    StructureElementGetTextIndentMethodInfo ,
     structureElementGetTextIndent           ,
 
 
 -- ** structureElementGetTextSpans
+    StructureElementGetTextSpansMethodInfo  ,
     structureElementGetTextSpans            ,
 
 
 -- ** structureElementGetTitle
+    StructureElementGetTitleMethodInfo      ,
     structureElementGetTitle                ,
 
 
 -- ** structureElementGetWidth
+    StructureElementGetWidthMethodInfo      ,
     structureElementGetWidth                ,
 
 
 -- ** structureElementGetWritingMode
+    StructureElementGetWritingModeMethodInfo,
     structureElementGetWritingMode          ,
 
 
 -- ** structureElementIsBlock
+    StructureElementIsBlockMethodInfo       ,
     structureElementIsBlock                 ,
 
 
 -- ** structureElementIsContent
+    StructureElementIsContentMethodInfo     ,
     structureElementIsContent               ,
 
 
 -- ** structureElementIsGrouping
+    StructureElementIsGroupingMethodInfo    ,
     structureElementIsGrouping              ,
 
 
 -- ** structureElementIsInline
+    StructureElementIsInlineMethodInfo      ,
     structureElementIsInline                ,
 
 
@@ -272,17 +328,104 @@
 noStructureElement :: Maybe StructureElement
 noStructureElement = Nothing
 
+type family ResolveStructureElementMethod (t :: Symbol) (o :: *) :: * where
+    ResolveStructureElementMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
+    ResolveStructureElementMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
+    ResolveStructureElementMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
+    ResolveStructureElementMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
+    ResolveStructureElementMethod "isBlock" o = StructureElementIsBlockMethodInfo
+    ResolveStructureElementMethod "isContent" o = StructureElementIsContentMethodInfo
+    ResolveStructureElementMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
+    ResolveStructureElementMethod "isGrouping" o = StructureElementIsGroupingMethodInfo
+    ResolveStructureElementMethod "isInline" o = StructureElementIsInlineMethodInfo
+    ResolveStructureElementMethod "notify" o = GObject.ObjectNotifyMethodInfo
+    ResolveStructureElementMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
+    ResolveStructureElementMethod "ref" o = GObject.ObjectRefMethodInfo
+    ResolveStructureElementMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
+    ResolveStructureElementMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
+    ResolveStructureElementMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
+    ResolveStructureElementMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
+    ResolveStructureElementMethod "stealData" o = GObject.ObjectStealDataMethodInfo
+    ResolveStructureElementMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
+    ResolveStructureElementMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
+    ResolveStructureElementMethod "unref" o = GObject.ObjectUnrefMethodInfo
+    ResolveStructureElementMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
+    ResolveStructureElementMethod "getAbbreviation" o = StructureElementGetAbbreviationMethodInfo
+    ResolveStructureElementMethod "getActualText" o = StructureElementGetActualTextMethodInfo
+    ResolveStructureElementMethod "getAltText" o = StructureElementGetAltTextMethodInfo
+    ResolveStructureElementMethod "getBackgroundColor" o = StructureElementGetBackgroundColorMethodInfo
+    ResolveStructureElementMethod "getBaselineShift" o = StructureElementGetBaselineShiftMethodInfo
+    ResolveStructureElementMethod "getBlockAlign" o = StructureElementGetBlockAlignMethodInfo
+    ResolveStructureElementMethod "getBorderColor" o = StructureElementGetBorderColorMethodInfo
+    ResolveStructureElementMethod "getBorderStyle" o = StructureElementGetBorderStyleMethodInfo
+    ResolveStructureElementMethod "getBorderThickness" o = StructureElementGetBorderThicknessMethodInfo
+    ResolveStructureElementMethod "getBoundingBox" o = StructureElementGetBoundingBoxMethodInfo
+    ResolveStructureElementMethod "getColor" o = StructureElementGetColorMethodInfo
+    ResolveStructureElementMethod "getColumnCount" o = StructureElementGetColumnCountMethodInfo
+    ResolveStructureElementMethod "getColumnGaps" o = StructureElementGetColumnGapsMethodInfo
+    ResolveStructureElementMethod "getColumnWidths" o = StructureElementGetColumnWidthsMethodInfo
+    ResolveStructureElementMethod "getData" o = GObject.ObjectGetDataMethodInfo
+    ResolveStructureElementMethod "getEndIndent" o = StructureElementGetEndIndentMethodInfo
+    ResolveStructureElementMethod "getFormDescription" o = StructureElementGetFormDescriptionMethodInfo
+    ResolveStructureElementMethod "getFormRole" o = StructureElementGetFormRoleMethodInfo
+    ResolveStructureElementMethod "getFormState" o = StructureElementGetFormStateMethodInfo
+    ResolveStructureElementMethod "getGlyphOrientation" o = StructureElementGetGlyphOrientationMethodInfo
+    ResolveStructureElementMethod "getHeight" o = StructureElementGetHeightMethodInfo
+    ResolveStructureElementMethod "getId" o = StructureElementGetIdMethodInfo
+    ResolveStructureElementMethod "getInlineAlign" o = StructureElementGetInlineAlignMethodInfo
+    ResolveStructureElementMethod "getKind" o = StructureElementGetKindMethodInfo
+    ResolveStructureElementMethod "getLanguage" o = StructureElementGetLanguageMethodInfo
+    ResolveStructureElementMethod "getLineHeight" o = StructureElementGetLineHeightMethodInfo
+    ResolveStructureElementMethod "getListNumbering" o = StructureElementGetListNumberingMethodInfo
+    ResolveStructureElementMethod "getPadding" o = StructureElementGetPaddingMethodInfo
+    ResolveStructureElementMethod "getPage" o = StructureElementGetPageMethodInfo
+    ResolveStructureElementMethod "getPlacement" o = StructureElementGetPlacementMethodInfo
+    ResolveStructureElementMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
+    ResolveStructureElementMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
+    ResolveStructureElementMethod "getRubyAlign" o = StructureElementGetRubyAlignMethodInfo
+    ResolveStructureElementMethod "getRubyPosition" o = StructureElementGetRubyPositionMethodInfo
+    ResolveStructureElementMethod "getSpaceAfter" o = StructureElementGetSpaceAfterMethodInfo
+    ResolveStructureElementMethod "getSpaceBefore" o = StructureElementGetSpaceBeforeMethodInfo
+    ResolveStructureElementMethod "getStartIndent" o = StructureElementGetStartIndentMethodInfo
+    ResolveStructureElementMethod "getTableBorderStyle" o = StructureElementGetTableBorderStyleMethodInfo
+    ResolveStructureElementMethod "getTableColumnSpan" o = StructureElementGetTableColumnSpanMethodInfo
+    ResolveStructureElementMethod "getTableHeaders" o = StructureElementGetTableHeadersMethodInfo
+    ResolveStructureElementMethod "getTablePadding" o = StructureElementGetTablePaddingMethodInfo
+    ResolveStructureElementMethod "getTableRowSpan" o = StructureElementGetTableRowSpanMethodInfo
+    ResolveStructureElementMethod "getTableScope" o = StructureElementGetTableScopeMethodInfo
+    ResolveStructureElementMethod "getTableSummary" o = StructureElementGetTableSummaryMethodInfo
+    ResolveStructureElementMethod "getText" o = StructureElementGetTextMethodInfo
+    ResolveStructureElementMethod "getTextAlign" o = StructureElementGetTextAlignMethodInfo
+    ResolveStructureElementMethod "getTextDecorationColor" o = StructureElementGetTextDecorationColorMethodInfo
+    ResolveStructureElementMethod "getTextDecorationThickness" o = StructureElementGetTextDecorationThicknessMethodInfo
+    ResolveStructureElementMethod "getTextDecorationType" o = StructureElementGetTextDecorationTypeMethodInfo
+    ResolveStructureElementMethod "getTextIndent" o = StructureElementGetTextIndentMethodInfo
+    ResolveStructureElementMethod "getTextSpans" o = StructureElementGetTextSpansMethodInfo
+    ResolveStructureElementMethod "getTitle" o = StructureElementGetTitleMethodInfo
+    ResolveStructureElementMethod "getWidth" o = StructureElementGetWidthMethodInfo
+    ResolveStructureElementMethod "getWritingMode" o = StructureElementGetWritingModeMethodInfo
+    ResolveStructureElementMethod "setData" o = GObject.ObjectSetDataMethodInfo
+    ResolveStructureElementMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
+    ResolveStructureElementMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveStructureElementMethod t StructureElement, MethodInfo info StructureElement p) => IsLabelProxy t (StructureElement -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveStructureElementMethod t StructureElement, MethodInfo info StructureElement p) => IsLabel t (StructureElement -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
+
 type instance AttributeList StructureElement = StructureElementAttributeList
 type StructureElementAttributeList = ('[ ] :: [(Symbol, *)])
 
 type instance SignalList StructureElement = StructureElementSignalList
-type StructureElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+type StructureElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
 
 -- method StructureElement::get_abbreviation
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -294,8 +437,8 @@
 
 structureElementGetAbbreviation ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetAbbreviation _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_abbreviation _obj'
@@ -305,11 +448,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetAbbreviationMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetAbbreviationMethodInfo a signature where
+    overloadedMethod _ = structureElementGetAbbreviation
+
 -- method StructureElement::get_actual_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -321,8 +467,8 @@
 
 structureElementGetActualText ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetActualText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_actual_text _obj'
@@ -332,11 +478,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetActualTextMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetActualTextMethodInfo a signature where
+    overloadedMethod _ = structureElementGetActualText
+
 -- method StructureElement::get_alt_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -348,8 +497,8 @@
 
 structureElementGetAltText ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetAltText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_alt_text _obj'
@@ -359,11 +508,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetAltTextMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetAltTextMethodInfo a signature where
+    overloadedMethod _ = structureElementGetAltText
+
 -- method StructureElement::get_background_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -376,8 +528,8 @@
 
 structureElementGetBackgroundColor ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m (Bool,Color)
+    a                                       -- _obj
+    -> m (Bool,Color)                       -- result
 structureElementGetBackgroundColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     color <- callocBoxedBytes 6 :: IO (Ptr Color)
@@ -387,11 +539,14 @@
     touchManagedPtr _obj
     return (result', color')
 
+data StructureElementGetBackgroundColorMethodInfo
+instance (signature ~ (m (Bool,Color)), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBackgroundColorMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBackgroundColor
+
 -- method StructureElement::get_baseline_shift
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -403,8 +558,8 @@
 
 structureElementGetBaselineShift ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetBaselineShift _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_baseline_shift _obj'
@@ -412,11 +567,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetBaselineShiftMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBaselineShiftMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBaselineShift
+
 -- method StructureElement::get_block_align
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureBlockAlign"
 -- throws : False
 -- Skip return : False
@@ -428,8 +586,8 @@
 
 structureElementGetBlockAlign ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureBlockAlign
+    a                                       -- _obj
+    -> m StructureBlockAlign                -- result
 structureElementGetBlockAlign _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_block_align _obj'
@@ -437,42 +595,50 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetBlockAlignMethodInfo
+instance (signature ~ (m StructureBlockAlign), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBlockAlignMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBlockAlign
+
 -- method StructureElement::get_border_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "colors", argType = TCArray False 4 (-1) (TInterface "Poppler" "Color"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "colors", argType = TCArray False 4 (-1) (TInterface "Poppler" "Color"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
 
 foreign import ccall "poppler_structure_element_get_border_color" poppler_structure_element_get_border_color :: 
     Ptr StructureElement ->                 -- _obj : TInterface "Poppler" "StructureElement"
-    Ptr (Ptr Color) ->                      -- colors : TCArray False 4 (-1) (TInterface "Poppler" "Color")
+    Ptr Color ->                            -- colors : TCArray False 4 (-1) (TInterface "Poppler" "Color")
     IO CInt
 
 
 structureElementGetBorderColor ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m (Bool,[Color])
-structureElementGetBorderColor _obj = liftIO $ do
+    a                                       -- _obj
+    -> [Color]                              -- colors
+    -> m (Bool,[Color])                     -- result
+structureElementGetBorderColor _obj colors = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    colors <- allocMem :: IO (Ptr (Ptr Color))
-    result <- poppler_structure_element_get_border_color _obj' colors
+    let colors' = map unsafeManagedPtrGetPtr colors
+    colors'' <- packBlockArray 6 colors'
+    result <- poppler_structure_element_get_border_color _obj' colors''
     let result' = (/= 0) result
-    colors' <- peek colors
-    colors'' <- (unpackBoxedArrayWithLength 6 4) colors'
-    colors''' <- mapM (newBoxed Color) colors''
+    colors''' <- (unpackBoxedArrayWithLength 6 4) colors''
+    colors'''' <- mapM (newBoxed Color) colors'''
     touchManagedPtr _obj
-    freeMem colors
-    return (result', colors''')
+    mapM_ touchManagedPtr colors
+    freeMem colors''
+    return (result', colors'''')
 
+data StructureElementGetBorderColorMethodInfo
+instance (signature ~ ([Color] -> m (Bool,[Color])), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBorderColorMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBorderColor
+
 -- method StructureElement::get_border_style
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "border_styles", argType = TCArray False 4 (-1) (TInterface "Poppler" "StructureBorderStyle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "border_styles", argType = TCArray False 4 (-1) (TInterface "Poppler" "StructureBorderStyle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -485,25 +651,28 @@
 
 structureElementGetBorderStyle ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m ([StructureBorderStyle])
+    a                                       -- _obj
+    -> m ([StructureBorderStyle])           -- result
 structureElementGetBorderStyle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    border_styles <- allocMem :: IO (Ptr (Ptr CUInt))
-    poppler_structure_element_get_border_style _obj' border_styles
-    border_styles' <- peek border_styles
-    border_styles'' <- (unpackStorableArrayWithLength 4) border_styles'
-    let border_styles''' = map (toEnum . fromIntegral) border_styles''
-    freeMem border_styles'
+    borderStyles <- allocMem :: IO (Ptr (Ptr CUInt))
+    poppler_structure_element_get_border_style _obj' borderStyles
+    borderStyles' <- peek borderStyles
+    borderStyles'' <- (unpackStorableArrayWithLength 4) borderStyles'
+    let borderStyles''' = map (toEnum . fromIntegral) borderStyles''
+    freeMem borderStyles'
     touchManagedPtr _obj
-    freeMem border_styles
-    return border_styles'''
+    freeMem borderStyles
+    return borderStyles'''
 
+data StructureElementGetBorderStyleMethodInfo
+instance (signature ~ (m ([StructureBorderStyle])), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBorderStyleMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBorderStyle
+
 -- method StructureElement::get_border_thickness
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "border_thicknesses", argType = TCArray False 4 (-1) (TBasicType TDouble), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "border_thicknesses", argType = TCArray False 4 (-1) (TBasicType TDouble), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -516,25 +685,28 @@
 
 structureElementGetBorderThickness ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m (Bool,[Double])
+    a                                       -- _obj
+    -> m (Bool,[Double])                    -- result
 structureElementGetBorderThickness _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    border_thicknesses <- allocMem :: IO (Ptr (Ptr CDouble))
-    result <- poppler_structure_element_get_border_thickness _obj' border_thicknesses
+    borderThicknesses <- allocMem :: IO (Ptr (Ptr CDouble))
+    result <- poppler_structure_element_get_border_thickness _obj' borderThicknesses
     let result' = (/= 0) result
-    border_thicknesses' <- peek border_thicknesses
-    border_thicknesses'' <- (unpackMapStorableArrayWithLength realToFrac 4) border_thicknesses'
-    freeMem border_thicknesses'
+    borderThicknesses' <- peek borderThicknesses
+    borderThicknesses'' <- (unpackMapStorableArrayWithLength realToFrac 4) borderThicknesses'
+    freeMem borderThicknesses'
     touchManagedPtr _obj
-    freeMem border_thicknesses
-    return (result', border_thicknesses'')
+    freeMem borderThicknesses
+    return (result', borderThicknesses'')
 
+data StructureElementGetBorderThicknessMethodInfo
+instance (signature ~ (m (Bool,[Double])), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBorderThicknessMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBorderThickness
+
 -- method StructureElement::get_bounding_box
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "bounding_box", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "bounding_box", argType = TInterface "Poppler" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -547,22 +719,25 @@
 
 structureElementGetBoundingBox ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m (Bool,Rectangle)
+    a                                       -- _obj
+    -> m (Bool,Rectangle)                   -- result
 structureElementGetBoundingBox _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    bounding_box <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
-    result <- poppler_structure_element_get_bounding_box _obj' bounding_box
+    boundingBox <- callocBoxedBytes 32 :: IO (Ptr Rectangle)
+    result <- poppler_structure_element_get_bounding_box _obj' boundingBox
     let result' = (/= 0) result
-    bounding_box' <- (wrapBoxed Rectangle) bounding_box
+    boundingBox' <- (wrapBoxed Rectangle) boundingBox
     touchManagedPtr _obj
-    return (result', bounding_box')
+    return (result', boundingBox')
 
+data StructureElementGetBoundingBoxMethodInfo
+instance (signature ~ (m (Bool,Rectangle)), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetBoundingBoxMethodInfo a signature where
+    overloadedMethod _ = structureElementGetBoundingBox
+
 -- method StructureElement::get_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -575,8 +750,8 @@
 
 structureElementGetColor ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m (Bool,Color)
+    a                                       -- _obj
+    -> m (Bool,Color)                       -- result
 structureElementGetColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     color <- callocBoxedBytes 6 :: IO (Ptr Color)
@@ -586,11 +761,14 @@
     touchManagedPtr _obj
     return (result', color')
 
+data StructureElementGetColorMethodInfo
+instance (signature ~ (m (Bool,Color)), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetColorMethodInfo a signature where
+    overloadedMethod _ = structureElementGetColor
+
 -- method StructureElement::get_column_count
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUInt32
 -- throws : False
 -- Skip return : False
@@ -602,19 +780,22 @@
 
 structureElementGetColumnCount ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Word32
+    a                                       -- _obj
+    -> m Word32                             -- result
 structureElementGetColumnCount _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_column_count _obj'
     touchManagedPtr _obj
     return result
 
+data StructureElementGetColumnCountMethodInfo
+instance (signature ~ (m Word32), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetColumnCountMethodInfo a signature where
+    overloadedMethod _ = structureElementGetColumnCount
+
 -- method StructureElement::get_column_gaps
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- Lengths : [Arg {argName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
+-- Lengths : [Arg {argCName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- returnType : TCArray False (-1) 1 (TBasicType TDouble)
 -- throws : False
 -- Skip return : False
@@ -627,25 +808,28 @@
 
 structureElementGetColumnGaps ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m [Double]
+    a                                       -- _obj
+    -> m [Double]                           -- result
 structureElementGetColumnGaps _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    n_values <- allocMem :: IO (Ptr Word32)
-    result <- poppler_structure_element_get_column_gaps _obj' n_values
-    n_values' <- peek n_values
+    nValues <- allocMem :: IO (Ptr Word32)
+    result <- poppler_structure_element_get_column_gaps _obj' nValues
+    nValues' <- peek nValues
     checkUnexpectedReturnNULL "poppler_structure_element_get_column_gaps" result
-    result' <- (unpackMapStorableArrayWithLength realToFrac n_values') result
+    result' <- (unpackMapStorableArrayWithLength realToFrac nValues') result
     freeMem result
     touchManagedPtr _obj
-    freeMem n_values
+    freeMem nValues
     return result'
 
+data StructureElementGetColumnGapsMethodInfo
+instance (signature ~ (m [Double]), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetColumnGapsMethodInfo a signature where
+    overloadedMethod _ = structureElementGetColumnGaps
+
 -- method StructureElement::get_column_widths
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- Lengths : [Arg {argName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
+-- Lengths : [Arg {argCName = "n_values", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- returnType : TCArray False (-1) 1 (TBasicType TDouble)
 -- throws : False
 -- Skip return : False
@@ -658,25 +842,28 @@
 
 structureElementGetColumnWidths ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m [Double]
+    a                                       -- _obj
+    -> m [Double]                           -- result
 structureElementGetColumnWidths _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    n_values <- allocMem :: IO (Ptr Word32)
-    result <- poppler_structure_element_get_column_widths _obj' n_values
-    n_values' <- peek n_values
+    nValues <- allocMem :: IO (Ptr Word32)
+    result <- poppler_structure_element_get_column_widths _obj' nValues
+    nValues' <- peek nValues
     checkUnexpectedReturnNULL "poppler_structure_element_get_column_widths" result
-    result' <- (unpackMapStorableArrayWithLength realToFrac n_values') result
+    result' <- (unpackMapStorableArrayWithLength realToFrac nValues') result
     freeMem result
     touchManagedPtr _obj
-    freeMem n_values
+    freeMem nValues
     return result'
 
+data StructureElementGetColumnWidthsMethodInfo
+instance (signature ~ (m [Double]), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetColumnWidthsMethodInfo a signature where
+    overloadedMethod _ = structureElementGetColumnWidths
+
 -- method StructureElement::get_end_indent
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -688,8 +875,8 @@
 
 structureElementGetEndIndent ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetEndIndent _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_end_indent _obj'
@@ -697,11 +884,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetEndIndentMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetEndIndentMethodInfo a signature where
+    overloadedMethod _ = structureElementGetEndIndent
+
 -- method StructureElement::get_form_description
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -713,8 +903,8 @@
 
 structureElementGetFormDescription ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetFormDescription _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_form_description _obj'
@@ -724,11 +914,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetFormDescriptionMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetFormDescriptionMethodInfo a signature where
+    overloadedMethod _ = structureElementGetFormDescription
+
 -- method StructureElement::get_form_role
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureFormRole"
 -- throws : False
 -- Skip return : False
@@ -740,8 +933,8 @@
 
 structureElementGetFormRole ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureFormRole
+    a                                       -- _obj
+    -> m StructureFormRole                  -- result
 structureElementGetFormRole _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_form_role _obj'
@@ -749,11 +942,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetFormRoleMethodInfo
+instance (signature ~ (m StructureFormRole), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetFormRoleMethodInfo a signature where
+    overloadedMethod _ = structureElementGetFormRole
+
 -- method StructureElement::get_form_state
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureFormState"
 -- throws : False
 -- Skip return : False
@@ -765,8 +961,8 @@
 
 structureElementGetFormState ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureFormState
+    a                                       -- _obj
+    -> m StructureFormState                 -- result
 structureElementGetFormState _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_form_state _obj'
@@ -774,11 +970,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetFormStateMethodInfo
+instance (signature ~ (m StructureFormState), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetFormStateMethodInfo a signature where
+    overloadedMethod _ = structureElementGetFormState
+
 -- method StructureElement::get_glyph_orientation
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureGlyphOrientation"
 -- throws : False
 -- Skip return : False
@@ -790,8 +989,8 @@
 
 structureElementGetGlyphOrientation ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureGlyphOrientation
+    a                                       -- _obj
+    -> m StructureGlyphOrientation          -- result
 structureElementGetGlyphOrientation _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_glyph_orientation _obj'
@@ -799,11 +998,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetGlyphOrientationMethodInfo
+instance (signature ~ (m StructureGlyphOrientation), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetGlyphOrientationMethodInfo a signature where
+    overloadedMethod _ = structureElementGetGlyphOrientation
+
 -- method StructureElement::get_height
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -815,8 +1017,8 @@
 
 structureElementGetHeight ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetHeight _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_height _obj'
@@ -824,11 +1026,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetHeightMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetHeightMethodInfo a signature where
+    overloadedMethod _ = structureElementGetHeight
+
 -- method StructureElement::get_id
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -840,8 +1045,8 @@
 
 structureElementGetId ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetId _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_id _obj'
@@ -851,11 +1056,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetIdMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetIdMethodInfo a signature where
+    overloadedMethod _ = structureElementGetId
+
 -- method StructureElement::get_inline_align
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureInlineAlign"
 -- throws : False
 -- Skip return : False
@@ -867,8 +1075,8 @@
 
 structureElementGetInlineAlign ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureInlineAlign
+    a                                       -- _obj
+    -> m StructureInlineAlign               -- result
 structureElementGetInlineAlign _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_inline_align _obj'
@@ -876,11 +1084,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetInlineAlignMethodInfo
+instance (signature ~ (m StructureInlineAlign), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetInlineAlignMethodInfo a signature where
+    overloadedMethod _ = structureElementGetInlineAlign
+
 -- method StructureElement::get_kind
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureElementKind"
 -- throws : False
 -- Skip return : False
@@ -892,8 +1103,8 @@
 
 structureElementGetKind ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureElementKind
+    a                                       -- _obj
+    -> m StructureElementKind               -- result
 structureElementGetKind _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_kind _obj'
@@ -901,11 +1112,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetKindMethodInfo
+instance (signature ~ (m StructureElementKind), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetKindMethodInfo a signature where
+    overloadedMethod _ = structureElementGetKind
+
 -- method StructureElement::get_language
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -917,8 +1131,8 @@
 
 structureElementGetLanguage ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetLanguage _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_language _obj'
@@ -928,11 +1142,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetLanguageMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetLanguageMethodInfo a signature where
+    overloadedMethod _ = structureElementGetLanguage
+
 -- method StructureElement::get_line_height
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -944,8 +1161,8 @@
 
 structureElementGetLineHeight ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetLineHeight _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_line_height _obj'
@@ -953,11 +1170,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetLineHeightMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetLineHeightMethodInfo a signature where
+    overloadedMethod _ = structureElementGetLineHeight
+
 -- method StructureElement::get_list_numbering
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureListNumbering"
 -- throws : False
 -- Skip return : False
@@ -969,8 +1189,8 @@
 
 structureElementGetListNumbering ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureListNumbering
+    a                                       -- _obj
+    -> m StructureListNumbering             -- result
 structureElementGetListNumbering _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_list_numbering _obj'
@@ -978,11 +1198,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetListNumberingMethodInfo
+instance (signature ~ (m StructureListNumbering), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetListNumberingMethodInfo a signature where
+    overloadedMethod _ = structureElementGetListNumbering
+
 -- method StructureElement::get_padding
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paddings", argType = TCArray False 4 (-1) (TBasicType TDouble), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "paddings", argType = TCArray False 4 (-1) (TBasicType TDouble), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -995,8 +1218,8 @@
 
 structureElementGetPadding ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m ([Double])
+    a                                       -- _obj
+    -> m ([Double])                         -- result
 structureElementGetPadding _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     paddings <- allocMem :: IO (Ptr (Ptr CDouble))
@@ -1008,11 +1231,14 @@
     freeMem paddings
     return paddings''
 
+data StructureElementGetPaddingMethodInfo
+instance (signature ~ (m ([Double])), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetPaddingMethodInfo a signature where
+    overloadedMethod _ = structureElementGetPadding
+
 -- method StructureElement::get_page
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TInt32
 -- throws : False
 -- Skip return : False
@@ -1024,19 +1250,22 @@
 
 structureElementGetPage ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Int32
+    a                                       -- _obj
+    -> m Int32                              -- result
 structureElementGetPage _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_page _obj'
     touchManagedPtr _obj
     return result
 
+data StructureElementGetPageMethodInfo
+instance (signature ~ (m Int32), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetPageMethodInfo a signature where
+    overloadedMethod _ = structureElementGetPage
+
 -- method StructureElement::get_placement
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructurePlacement"
 -- throws : False
 -- Skip return : False
@@ -1048,8 +1277,8 @@
 
 structureElementGetPlacement ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructurePlacement
+    a                                       -- _obj
+    -> m StructurePlacement                 -- result
 structureElementGetPlacement _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_placement _obj'
@@ -1057,11 +1286,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetPlacementMethodInfo
+instance (signature ~ (m StructurePlacement), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetPlacementMethodInfo a signature where
+    overloadedMethod _ = structureElementGetPlacement
+
 -- method StructureElement::get_ruby_align
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureRubyAlign"
 -- throws : False
 -- Skip return : False
@@ -1073,8 +1305,8 @@
 
 structureElementGetRubyAlign ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureRubyAlign
+    a                                       -- _obj
+    -> m StructureRubyAlign                 -- result
 structureElementGetRubyAlign _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_ruby_align _obj'
@@ -1082,11 +1314,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetRubyAlignMethodInfo
+instance (signature ~ (m StructureRubyAlign), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetRubyAlignMethodInfo a signature where
+    overloadedMethod _ = structureElementGetRubyAlign
+
 -- method StructureElement::get_ruby_position
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureRubyPosition"
 -- throws : False
 -- Skip return : False
@@ -1098,8 +1333,8 @@
 
 structureElementGetRubyPosition ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureRubyPosition
+    a                                       -- _obj
+    -> m StructureRubyPosition              -- result
 structureElementGetRubyPosition _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_ruby_position _obj'
@@ -1107,11 +1342,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetRubyPositionMethodInfo
+instance (signature ~ (m StructureRubyPosition), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetRubyPositionMethodInfo a signature where
+    overloadedMethod _ = structureElementGetRubyPosition
+
 -- method StructureElement::get_space_after
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -1123,8 +1361,8 @@
 
 structureElementGetSpaceAfter ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetSpaceAfter _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_space_after _obj'
@@ -1132,11 +1370,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetSpaceAfterMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetSpaceAfterMethodInfo a signature where
+    overloadedMethod _ = structureElementGetSpaceAfter
+
 -- method StructureElement::get_space_before
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -1148,8 +1389,8 @@
 
 structureElementGetSpaceBefore ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetSpaceBefore _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_space_before _obj'
@@ -1157,11 +1398,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetSpaceBeforeMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetSpaceBeforeMethodInfo a signature where
+    overloadedMethod _ = structureElementGetSpaceBefore
+
 -- method StructureElement::get_start_indent
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -1173,8 +1417,8 @@
 
 structureElementGetStartIndent ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetStartIndent _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_start_indent _obj'
@@ -1182,11 +1426,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetStartIndentMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetStartIndentMethodInfo a signature where
+    overloadedMethod _ = structureElementGetStartIndent
+
 -- method StructureElement::get_table_border_style
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "border_styles", argType = TCArray False 4 (-1) (TInterface "Poppler" "StructureBorderStyle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "border_styles", argType = TCArray False 4 (-1) (TInterface "Poppler" "StructureBorderStyle"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1199,25 +1446,28 @@
 
 structureElementGetTableBorderStyle ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m ([StructureBorderStyle])
+    a                                       -- _obj
+    -> m ([StructureBorderStyle])           -- result
 structureElementGetTableBorderStyle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    border_styles <- allocMem :: IO (Ptr (Ptr CUInt))
-    poppler_structure_element_get_table_border_style _obj' border_styles
-    border_styles' <- peek border_styles
-    border_styles'' <- (unpackStorableArrayWithLength 4) border_styles'
-    let border_styles''' = map (toEnum . fromIntegral) border_styles''
-    freeMem border_styles'
+    borderStyles <- allocMem :: IO (Ptr (Ptr CUInt))
+    poppler_structure_element_get_table_border_style _obj' borderStyles
+    borderStyles' <- peek borderStyles
+    borderStyles'' <- (unpackStorableArrayWithLength 4) borderStyles'
+    let borderStyles''' = map (toEnum . fromIntegral) borderStyles''
+    freeMem borderStyles'
     touchManagedPtr _obj
-    freeMem border_styles
-    return border_styles'''
+    freeMem borderStyles
+    return borderStyles'''
 
+data StructureElementGetTableBorderStyleMethodInfo
+instance (signature ~ (m ([StructureBorderStyle])), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTableBorderStyleMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTableBorderStyle
+
 -- method StructureElement::get_table_column_span
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUInt32
 -- throws : False
 -- Skip return : False
@@ -1229,19 +1479,22 @@
 
 structureElementGetTableColumnSpan ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Word32
+    a                                       -- _obj
+    -> m Word32                             -- result
 structureElementGetTableColumnSpan _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_table_column_span _obj'
     touchManagedPtr _obj
     return result
 
+data StructureElementGetTableColumnSpanMethodInfo
+instance (signature ~ (m Word32), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTableColumnSpanMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTableColumnSpan
+
 -- method StructureElement::get_table_headers
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)
 -- throws : False
 -- Skip return : False
@@ -1253,8 +1506,8 @@
 
 structureElementGetTableHeaders ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m [T.Text]
+    a                                       -- _obj
+    -> m [T.Text]                           -- result
 structureElementGetTableHeaders _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_table_headers _obj'
@@ -1265,11 +1518,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTableHeadersMethodInfo
+instance (signature ~ (m [T.Text]), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTableHeadersMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTableHeaders
+
 -- method StructureElement::get_table_padding
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paddings", argType = TCArray False 4 (-1) (TBasicType TDouble), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "paddings", argType = TCArray False 4 (-1) (TBasicType TDouble), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -1282,8 +1538,8 @@
 
 structureElementGetTablePadding ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m ([Double])
+    a                                       -- _obj
+    -> m ([Double])                         -- result
 structureElementGetTablePadding _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     paddings <- allocMem :: IO (Ptr (Ptr CDouble))
@@ -1295,11 +1551,14 @@
     freeMem paddings
     return paddings''
 
+data StructureElementGetTablePaddingMethodInfo
+instance (signature ~ (m ([Double])), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTablePaddingMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTablePadding
+
 -- method StructureElement::get_table_row_span
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUInt32
 -- throws : False
 -- Skip return : False
@@ -1311,19 +1570,22 @@
 
 structureElementGetTableRowSpan ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Word32
+    a                                       -- _obj
+    -> m Word32                             -- result
 structureElementGetTableRowSpan _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_table_row_span _obj'
     touchManagedPtr _obj
     return result
 
+data StructureElementGetTableRowSpanMethodInfo
+instance (signature ~ (m Word32), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTableRowSpanMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTableRowSpan
+
 -- method StructureElement::get_table_scope
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureTableScope"
 -- throws : False
 -- Skip return : False
@@ -1335,8 +1597,8 @@
 
 structureElementGetTableScope ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureTableScope
+    a                                       -- _obj
+    -> m StructureTableScope                -- result
 structureElementGetTableScope _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_table_scope _obj'
@@ -1344,11 +1606,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTableScopeMethodInfo
+instance (signature ~ (m StructureTableScope), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTableScopeMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTableScope
+
 -- method StructureElement::get_table_summary
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1360,8 +1625,8 @@
 
 structureElementGetTableSummary ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetTableSummary _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_table_summary _obj'
@@ -1371,11 +1636,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTableSummaryMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTableSummaryMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTableSummary
+
 -- method StructureElement::get_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Poppler" "StructureGetTextFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface "Poppler" "StructureGetTextFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "Poppler" "StructureGetTextFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1388,9 +1656,9 @@
 
 structureElementGetText ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    [StructureGetTextFlags] ->              -- flags
-    m T.Text
+    a                                       -- _obj
+    -> [StructureGetTextFlags]              -- flags
+    -> m T.Text                             -- result
 structureElementGetText _obj flags = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     let flags' = gflagsToWord flags
@@ -1401,11 +1669,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTextMethodInfo
+instance (signature ~ ([StructureGetTextFlags] -> m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextMethodInfo a signature where
+    overloadedMethod _ = structureElementGetText
+
 -- method StructureElement::get_text_align
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureTextAlign"
 -- throws : False
 -- Skip return : False
@@ -1417,8 +1688,8 @@
 
 structureElementGetTextAlign ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureTextAlign
+    a                                       -- _obj
+    -> m StructureTextAlign                 -- result
 structureElementGetTextAlign _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_text_align _obj'
@@ -1426,11 +1697,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTextAlignMethodInfo
+instance (signature ~ (m StructureTextAlign), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextAlignMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTextAlign
+
 -- method StructureElement::get_text_decoration_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1443,8 +1717,8 @@
 
 structureElementGetTextDecorationColor ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m (Bool,Color)
+    a                                       -- _obj
+    -> m (Bool,Color)                       -- result
 structureElementGetTextDecorationColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     color <- callocBoxedBytes 6 :: IO (Ptr Color)
@@ -1454,11 +1728,14 @@
     touchManagedPtr _obj
     return (result', color')
 
+data StructureElementGetTextDecorationColorMethodInfo
+instance (signature ~ (m (Bool,Color)), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextDecorationColorMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTextDecorationColor
+
 -- method StructureElement::get_text_decoration_thickness
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -1470,8 +1747,8 @@
 
 structureElementGetTextDecorationThickness ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetTextDecorationThickness _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_text_decoration_thickness _obj'
@@ -1479,11 +1756,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTextDecorationThicknessMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextDecorationThicknessMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTextDecorationThickness
+
 -- method StructureElement::get_text_decoration_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureTextDecoration"
 -- throws : False
 -- Skip return : False
@@ -1495,8 +1775,8 @@
 
 structureElementGetTextDecorationType ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureTextDecoration
+    a                                       -- _obj
+    -> m StructureTextDecoration            -- result
 structureElementGetTextDecorationType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_text_decoration_type _obj'
@@ -1504,11 +1784,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTextDecorationTypeMethodInfo
+instance (signature ~ (m StructureTextDecoration), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextDecorationTypeMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTextDecorationType
+
 -- method StructureElement::get_text_indent
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -1520,8 +1803,8 @@
 
 structureElementGetTextIndent ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetTextIndent _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_text_indent _obj'
@@ -1529,11 +1812,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTextIndentMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextIndentMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTextIndent
+
 -- method StructureElement::get_text_spans
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_text_spans", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- Lengths : [Arg {argName = "n_text_spans", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_text_spans", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
+-- Lengths : [Arg {argCName = "n_text_spans", argType = TBasicType TUInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
 -- returnType : TCArray False (-1) 1 (TInterface "Poppler" "TextSpan")
 -- throws : False
 -- Skip return : False
@@ -1546,26 +1832,29 @@
 
 structureElementGetTextSpans ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m [TextSpan]
+    a                                       -- _obj
+    -> m [TextSpan]                         -- result
 structureElementGetTextSpans _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
-    n_text_spans <- allocMem :: IO (Ptr Word32)
-    result <- poppler_structure_element_get_text_spans _obj' n_text_spans
-    n_text_spans' <- peek n_text_spans
+    nTextSpans <- allocMem :: IO (Ptr Word32)
+    result <- poppler_structure_element_get_text_spans _obj' nTextSpans
+    nTextSpans' <- peek nTextSpans
     checkUnexpectedReturnNULL "poppler_structure_element_get_text_spans" result
-    result' <- (unpackPtrArrayWithLength n_text_spans') result
+    result' <- (unpackPtrArrayWithLength nTextSpans') result
     result'' <- mapM (wrapBoxed TextSpan) result'
     freeMem result
     touchManagedPtr _obj
-    freeMem n_text_spans
+    freeMem nTextSpans
     return result''
 
+data StructureElementGetTextSpansMethodInfo
+instance (signature ~ (m [TextSpan]), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTextSpansMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTextSpans
+
 -- method StructureElement::get_title
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -1577,8 +1866,8 @@
 
 structureElementGetTitle ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m T.Text
+    a                                       -- _obj
+    -> m T.Text                             -- result
 structureElementGetTitle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_title _obj'
@@ -1588,11 +1877,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetTitleMethodInfo
+instance (signature ~ (m T.Text), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetTitleMethodInfo a signature where
+    overloadedMethod _ = structureElementGetTitle
+
 -- method StructureElement::get_width
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TDouble
 -- throws : False
 -- Skip return : False
@@ -1604,8 +1896,8 @@
 
 structureElementGetWidth ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Double
+    a                                       -- _obj
+    -> m Double                             -- result
 structureElementGetWidth _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_width _obj'
@@ -1613,11 +1905,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetWidthMethodInfo
+instance (signature ~ (m Double), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetWidthMethodInfo a signature where
+    overloadedMethod _ = structureElementGetWidth
+
 -- method StructureElement::get_writing_mode
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureWritingMode"
 -- throws : False
 -- Skip return : False
@@ -1629,8 +1924,8 @@
 
 structureElementGetWritingMode ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m StructureWritingMode
+    a                                       -- _obj
+    -> m StructureWritingMode               -- result
 structureElementGetWritingMode _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_get_writing_mode _obj'
@@ -1638,11 +1933,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementGetWritingModeMethodInfo
+instance (signature ~ (m StructureWritingMode), MonadIO m, StructureElementK a) => MethodInfo StructureElementGetWritingModeMethodInfo a signature where
+    overloadedMethod _ = structureElementGetWritingMode
+
 -- method StructureElement::is_block
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1654,8 +1952,8 @@
 
 structureElementIsBlock ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 structureElementIsBlock _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_is_block _obj'
@@ -1663,11 +1961,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementIsBlockMethodInfo
+instance (signature ~ (m Bool), MonadIO m, StructureElementK a) => MethodInfo StructureElementIsBlockMethodInfo a signature where
+    overloadedMethod _ = structureElementIsBlock
+
 -- method StructureElement::is_content
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1679,8 +1980,8 @@
 
 structureElementIsContent ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 structureElementIsContent _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_is_content _obj'
@@ -1688,11 +1989,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementIsContentMethodInfo
+instance (signature ~ (m Bool), MonadIO m, StructureElementK a) => MethodInfo StructureElementIsContentMethodInfo a signature where
+    overloadedMethod _ = structureElementIsContent
+
 -- method StructureElement::is_grouping
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1704,8 +2008,8 @@
 
 structureElementIsGrouping ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 structureElementIsGrouping _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_is_grouping _obj'
@@ -1713,11 +2017,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementIsGroupingMethodInfo
+instance (signature ~ (m Bool), MonadIO m, StructureElementK a) => MethodInfo StructureElementIsGroupingMethodInfo a signature where
+    overloadedMethod _ = structureElementIsGrouping
+
 -- method StructureElement::is_inline
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -1729,13 +2036,17 @@
 
 structureElementIsInline ::
     (MonadIO m, StructureElementK a) =>
-    a ->                                    -- _obj
-    m Bool
+    a                                       -- _obj
+    -> m Bool                               -- result
 structureElementIsInline _obj = liftIO $ do
     let _obj' = unsafeManagedPtrCastPtr _obj
     result <- poppler_structure_element_is_inline _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data StructureElementIsInlineMethodInfo
+instance (signature ~ (m Bool), MonadIO m, StructureElementK a) => MethodInfo StructureElementIsInlineMethodInfo a signature where
+    overloadedMethod _ = structureElementIsInline
 
 
diff --git a/GI/Poppler/Objects/StructureElement.hs-boot b/GI/Poppler/Objects/StructureElement.hs-boot
--- a/GI/Poppler/Objects/StructureElement.hs-boot
+++ b/GI/Poppler/Objects/StructureElement.hs-boot
@@ -11,3 +11,58 @@
 instance GObject StructureElement where
 class GObject o => StructureElementK o
 instance (GObject o, IsDescendantOf StructureElement o) => StructureElementK o
+data StructureElementGetAbbreviationMethodInfo
+data StructureElementGetActualTextMethodInfo
+data StructureElementGetAltTextMethodInfo
+data StructureElementGetBackgroundColorMethodInfo
+data StructureElementGetBaselineShiftMethodInfo
+data StructureElementGetBlockAlignMethodInfo
+data StructureElementGetBorderColorMethodInfo
+data StructureElementGetBorderStyleMethodInfo
+data StructureElementGetBorderThicknessMethodInfo
+data StructureElementGetBoundingBoxMethodInfo
+data StructureElementGetColorMethodInfo
+data StructureElementGetColumnCountMethodInfo
+data StructureElementGetColumnGapsMethodInfo
+data StructureElementGetColumnWidthsMethodInfo
+data StructureElementGetEndIndentMethodInfo
+data StructureElementGetFormDescriptionMethodInfo
+data StructureElementGetFormRoleMethodInfo
+data StructureElementGetFormStateMethodInfo
+data StructureElementGetGlyphOrientationMethodInfo
+data StructureElementGetHeightMethodInfo
+data StructureElementGetIdMethodInfo
+data StructureElementGetInlineAlignMethodInfo
+data StructureElementGetKindMethodInfo
+data StructureElementGetLanguageMethodInfo
+data StructureElementGetLineHeightMethodInfo
+data StructureElementGetListNumberingMethodInfo
+data StructureElementGetPaddingMethodInfo
+data StructureElementGetPageMethodInfo
+data StructureElementGetPlacementMethodInfo
+data StructureElementGetRubyAlignMethodInfo
+data StructureElementGetRubyPositionMethodInfo
+data StructureElementGetSpaceAfterMethodInfo
+data StructureElementGetSpaceBeforeMethodInfo
+data StructureElementGetStartIndentMethodInfo
+data StructureElementGetTableBorderStyleMethodInfo
+data StructureElementGetTableColumnSpanMethodInfo
+data StructureElementGetTableHeadersMethodInfo
+data StructureElementGetTablePaddingMethodInfo
+data StructureElementGetTableRowSpanMethodInfo
+data StructureElementGetTableScopeMethodInfo
+data StructureElementGetTableSummaryMethodInfo
+data StructureElementGetTextMethodInfo
+data StructureElementGetTextAlignMethodInfo
+data StructureElementGetTextDecorationColorMethodInfo
+data StructureElementGetTextDecorationThicknessMethodInfo
+data StructureElementGetTextDecorationTypeMethodInfo
+data StructureElementGetTextIndentMethodInfo
+data StructureElementGetTextSpansMethodInfo
+data StructureElementGetTitleMethodInfo
+data StructureElementGetWidthMethodInfo
+data StructureElementGetWritingModeMethodInfo
+data StructureElementIsBlockMethodInfo
+data StructureElementIsContentMethodInfo
+data StructureElementIsGroupingMethodInfo
+data StructureElementIsInlineMethodInfo
diff --git a/GI/Poppler/Structs.hs b/GI/Poppler/Structs.hs
--- a/GI/Poppler/Structs.hs
+++ b/GI/Poppler/Structs.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Structs/ActionAny.hs b/GI/Poppler/Structs/ActionAny.hs
--- a/GI/Poppler/Structs/ActionAny.hs
+++ b/GI/Poppler/Structs/ActionAny.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionAny(..)                           ,
+    newZeroActionAny                        ,
     noActionAny                             ,
 
 
@@ -37,6 +39,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionAny = ActionAny (ForeignPtr ActionAny)
+-- | Construct a `ActionAny` struct initialized to zero.
+newZeroActionAny :: MonadIO m => m ActionAny
+newZeroActionAny = liftIO $ callocBytes 16 >>= wrapPtr ActionAny
+
 noActionAny :: Maybe ActionAny
 noActionAny = Nothing
 
@@ -51,5 +57,16 @@
     val <- peek (ptr `plusPtr` 8) :: IO CString
     val' <- cstringToText val
     return val'
+
+type family ResolveActionAnyMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionAnyMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionAnyMethod t ActionAny, MethodInfo info ActionAny p) => IsLabelProxy t (ActionAny -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionAnyMethod t ActionAny, MethodInfo info ActionAny p) => IsLabel t (ActionAny -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionGotoDest.hs b/GI/Poppler/Structs/ActionGotoDest.hs
--- a/GI/Poppler/Structs/ActionGotoDest.hs
+++ b/GI/Poppler/Structs/ActionGotoDest.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionGotoDest(..)                      ,
+    newZeroActionGotoDest                   ,
     noActionGotoDest                        ,
 
 
@@ -41,6 +43,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionGotoDest = ActionGotoDest (ForeignPtr ActionGotoDest)
+-- | Construct a `ActionGotoDest` struct initialized to zero.
+newZeroActionGotoDest :: MonadIO m => m ActionGotoDest
+newZeroActionGotoDest = liftIO $ callocBytes 24 >>= wrapPtr ActionGotoDest
+
 noActionGotoDest :: Maybe ActionGotoDest
 noActionGotoDest = Nothing
 
@@ -61,5 +67,16 @@
     val <- peek (ptr `plusPtr` 16) :: IO (Ptr Dest)
     val' <- (newBoxed Dest) val
     return val'
+
+type family ResolveActionGotoDestMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionGotoDestMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionGotoDestMethod t ActionGotoDest, MethodInfo info ActionGotoDest p) => IsLabelProxy t (ActionGotoDest -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionGotoDestMethod t ActionGotoDest, MethodInfo info ActionGotoDest p) => IsLabel t (ActionGotoDest -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionGotoRemote.hs b/GI/Poppler/Structs/ActionGotoRemote.hs
--- a/GI/Poppler/Structs/ActionGotoRemote.hs
+++ b/GI/Poppler/Structs/ActionGotoRemote.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionGotoRemote(..)                    ,
+    newZeroActionGotoRemote                 ,
     noActionGotoRemote                      ,
 
 
@@ -45,6 +47,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionGotoRemote = ActionGotoRemote (ForeignPtr ActionGotoRemote)
+-- | Construct a `ActionGotoRemote` struct initialized to zero.
+newZeroActionGotoRemote :: MonadIO m => m ActionGotoRemote
+newZeroActionGotoRemote = liftIO $ callocBytes 32 >>= wrapPtr ActionGotoRemote
+
 noActionGotoRemote :: Maybe ActionGotoRemote
 noActionGotoRemote = Nothing
 
@@ -71,5 +77,16 @@
     val <- peek (ptr `plusPtr` 24) :: IO (Ptr Dest)
     val' <- (newBoxed Dest) val
     return val'
+
+type family ResolveActionGotoRemoteMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionGotoRemoteMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionGotoRemoteMethod t ActionGotoRemote, MethodInfo info ActionGotoRemote p) => IsLabelProxy t (ActionGotoRemote -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionGotoRemoteMethod t ActionGotoRemote, MethodInfo info ActionGotoRemote p) => IsLabel t (ActionGotoRemote -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionJavascript.hs b/GI/Poppler/Structs/ActionJavascript.hs
--- a/GI/Poppler/Structs/ActionJavascript.hs
+++ b/GI/Poppler/Structs/ActionJavascript.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionJavascript(..)                    ,
+    newZeroActionJavascript                 ,
     noActionJavascript                      ,
 
 
@@ -41,6 +43,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionJavascript = ActionJavascript (ForeignPtr ActionJavascript)
+-- | Construct a `ActionJavascript` struct initialized to zero.
+newZeroActionJavascript :: MonadIO m => m ActionJavascript
+newZeroActionJavascript = liftIO $ callocBytes 24 >>= wrapPtr ActionJavascript
+
 noActionJavascript :: Maybe ActionJavascript
 noActionJavascript = Nothing
 
@@ -61,5 +67,16 @@
     val <- peek (ptr `plusPtr` 16) :: IO CString
     val' <- cstringToText val
     return val'
+
+type family ResolveActionJavascriptMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionJavascriptMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionJavascriptMethod t ActionJavascript, MethodInfo info ActionJavascript p) => IsLabelProxy t (ActionJavascript -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionJavascriptMethod t ActionJavascript, MethodInfo info ActionJavascript p) => IsLabel t (ActionJavascript -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionLaunch.hs b/GI/Poppler/Structs/ActionLaunch.hs
--- a/GI/Poppler/Structs/ActionLaunch.hs
+++ b/GI/Poppler/Structs/ActionLaunch.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionLaunch(..)                        ,
+    newZeroActionLaunch                     ,
     noActionLaunch                          ,
 
 
@@ -45,6 +47,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionLaunch = ActionLaunch (ForeignPtr ActionLaunch)
+-- | Construct a `ActionLaunch` struct initialized to zero.
+newZeroActionLaunch :: MonadIO m => m ActionLaunch
+newZeroActionLaunch = liftIO $ callocBytes 32 >>= wrapPtr ActionLaunch
+
 noActionLaunch :: Maybe ActionLaunch
 noActionLaunch = Nothing
 
@@ -71,5 +77,16 @@
     val <- peek (ptr `plusPtr` 24) :: IO CString
     val' <- cstringToText val
     return val'
+
+type family ResolveActionLaunchMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionLaunchMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionLaunchMethod t ActionLaunch, MethodInfo info ActionLaunch p) => IsLabelProxy t (ActionLaunch -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionLaunchMethod t ActionLaunch, MethodInfo info ActionLaunch p) => IsLabel t (ActionLaunch -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionLayer.hs b/GI/Poppler/Structs/ActionLayer.hs
--- a/GI/Poppler/Structs/ActionLayer.hs
+++ b/GI/Poppler/Structs/ActionLayer.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -12,6 +13,7 @@
 
 -- * Exported types
     ActionLayer(..)                         ,
+    newZeroActionLayer                      ,
     noActionLayer                           ,
 
 
@@ -39,6 +41,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionLayer = ActionLayer (ForeignPtr ActionLayer)
+-- | Construct a `ActionLayer` struct initialized to zero.
+newZeroActionLayer :: MonadIO m => m ActionLayer
+newZeroActionLayer = liftIO $ callocBytes 16 >>= wrapPtr ActionLayer
+
 noActionLayer :: Maybe ActionLayer
 noActionLayer = Nothing
 
@@ -53,5 +59,16 @@
     val <- peek (ptr `plusPtr` 8) :: IO (Ptr (GList (Ptr ())))
     val' <- unpackGList val
     return val'
+
+type family ResolveActionLayerMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionLayerMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionLayerMethod t ActionLayer, MethodInfo info ActionLayer p) => IsLabelProxy t (ActionLayer -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionLayerMethod t ActionLayer, MethodInfo info ActionLayer p) => IsLabel t (ActionLayer -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionMovie.hs b/GI/Poppler/Structs/ActionMovie.hs
--- a/GI/Poppler/Structs/ActionMovie.hs
+++ b/GI/Poppler/Structs/ActionMovie.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionMovie(..)                         ,
+    newZeroActionMovie                      ,
     noActionMovie                           ,
 
 
@@ -45,6 +47,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionMovie = ActionMovie (ForeignPtr ActionMovie)
+-- | Construct a `ActionMovie` struct initialized to zero.
+newZeroActionMovie :: MonadIO m => m ActionMovie
+newZeroActionMovie = liftIO $ callocBytes 32 >>= wrapPtr ActionMovie
+
 noActionMovie :: Maybe ActionMovie
 noActionMovie = Nothing
 
@@ -71,5 +77,16 @@
     val <- peek (ptr `plusPtr` 24) :: IO (Ptr Movie)
     val' <- (newObject Movie) val
     return val'
+
+type family ResolveActionMovieMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionMovieMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionMovieMethod t ActionMovie, MethodInfo info ActionMovie p) => IsLabelProxy t (ActionMovie -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionMovieMethod t ActionMovie, MethodInfo info ActionMovie p) => IsLabel t (ActionMovie -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionNamed.hs b/GI/Poppler/Structs/ActionNamed.hs
--- a/GI/Poppler/Structs/ActionNamed.hs
+++ b/GI/Poppler/Structs/ActionNamed.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionNamed(..)                         ,
+    newZeroActionNamed                      ,
     noActionNamed                           ,
 
 
@@ -41,6 +43,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionNamed = ActionNamed (ForeignPtr ActionNamed)
+-- | Construct a `ActionNamed` struct initialized to zero.
+newZeroActionNamed :: MonadIO m => m ActionNamed
+newZeroActionNamed = liftIO $ callocBytes 24 >>= wrapPtr ActionNamed
+
 noActionNamed :: Maybe ActionNamed
 noActionNamed = Nothing
 
@@ -61,5 +67,16 @@
     val <- peek (ptr `plusPtr` 16) :: IO CString
     val' <- cstringToText val
     return val'
+
+type family ResolveActionNamedMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionNamedMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionNamedMethod t ActionNamed, MethodInfo info ActionNamed p) => IsLabelProxy t (ActionNamed -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionNamedMethod t ActionNamed, MethodInfo info ActionNamed p) => IsLabel t (ActionNamed -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionOCGState.hs b/GI/Poppler/Structs/ActionOCGState.hs
--- a/GI/Poppler/Structs/ActionOCGState.hs
+++ b/GI/Poppler/Structs/ActionOCGState.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionOCGState(..)                      ,
+    newZeroActionOCGState                   ,
     noActionOCGState                        ,
 
 
@@ -41,6 +43,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionOCGState = ActionOCGState (ForeignPtr ActionOCGState)
+-- | Construct a `ActionOCGState` struct initialized to zero.
+newZeroActionOCGState :: MonadIO m => m ActionOCGState
+newZeroActionOCGState = liftIO $ callocBytes 24 >>= wrapPtr ActionOCGState
+
 noActionOCGState :: Maybe ActionOCGState
 noActionOCGState = Nothing
 
@@ -61,5 +67,16 @@
     val <- peek (ptr `plusPtr` 16) :: IO (Ptr (GList (Ptr ())))
     val' <- unpackGList val
     return val'
+
+type family ResolveActionOCGStateMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionOCGStateMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionOCGStateMethod t ActionOCGState, MethodInfo info ActionOCGState p) => IsLabelProxy t (ActionOCGState -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionOCGStateMethod t ActionOCGState, MethodInfo info ActionOCGState p) => IsLabel t (ActionOCGState -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionRendition.hs b/GI/Poppler/Structs/ActionRendition.hs
--- a/GI/Poppler/Structs/ActionRendition.hs
+++ b/GI/Poppler/Structs/ActionRendition.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionRendition(..)                     ,
+    newZeroActionRendition                  ,
     noActionRendition                       ,
 
 
@@ -45,6 +47,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionRendition = ActionRendition (ForeignPtr ActionRendition)
+-- | Construct a `ActionRendition` struct initialized to zero.
+newZeroActionRendition :: MonadIO m => m ActionRendition
+newZeroActionRendition = liftIO $ callocBytes 32 >>= wrapPtr ActionRendition
+
 noActionRendition :: Maybe ActionRendition
 noActionRendition = Nothing
 
@@ -70,5 +76,16 @@
     val <- peek (ptr `plusPtr` 24) :: IO (Ptr Media)
     val' <- (newObject Media) val
     return val'
+
+type family ResolveActionRenditionMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionRenditionMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionRenditionMethod t ActionRendition, MethodInfo info ActionRendition p) => IsLabelProxy t (ActionRendition -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionRenditionMethod t ActionRendition, MethodInfo info ActionRendition p) => IsLabel t (ActionRendition -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ActionUri.hs b/GI/Poppler/Structs/ActionUri.hs
--- a/GI/Poppler/Structs/ActionUri.hs
+++ b/GI/Poppler/Structs/ActionUri.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,6 +11,7 @@
 
 -- * Exported types
     ActionUri(..)                           ,
+    newZeroActionUri                        ,
     noActionUri                             ,
 
 
@@ -41,6 +43,10 @@
 import GI.Poppler.Callbacks
 
 newtype ActionUri = ActionUri (ForeignPtr ActionUri)
+-- | Construct a `ActionUri` struct initialized to zero.
+newZeroActionUri :: MonadIO m => m ActionUri
+newZeroActionUri = liftIO $ callocBytes 24 >>= wrapPtr ActionUri
+
 noActionUri :: Maybe ActionUri
 noActionUri = Nothing
 
@@ -61,5 +67,16 @@
     val <- peek (ptr `plusPtr` 16) :: IO CString
     val' <- cstringToText val
     return val'
+
+type family ResolveActionUriMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionUriMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionUriMethod t ActionUri, MethodInfo info ActionUri p) => IsLabelProxy t (ActionUri -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionUriMethod t ActionUri, MethodInfo info ActionUri p) => IsLabel t (ActionUri -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/AnnotCalloutLine.hs b/GI/Poppler/Structs/AnnotCalloutLine.hs
--- a/GI/Poppler/Structs/AnnotCalloutLine.hs
+++ b/GI/Poppler/Structs/AnnotCalloutLine.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,15 +11,18 @@
 
 -- * Exported types
     AnnotCalloutLine(..)                    ,
+    newZeroAnnotCalloutLine                 ,
     noAnnotCalloutLine                      ,
 
 
  -- * Methods
 -- ** annotCalloutLineCopy
+    AnnotCalloutLineCopyMethodInfo          ,
     annotCalloutLineCopy                    ,
 
 
 -- ** annotCalloutLineFree
+    AnnotCalloutLineFreeMethodInfo          ,
     annotCalloutLineFree                    ,
 
 
@@ -78,6 +82,10 @@
 instance BoxedObject AnnotCalloutLine where
     boxedType _ = c_poppler_annot_callout_line_get_type
 
+-- | Construct a `AnnotCalloutLine` struct initialized to zero.
+newZeroAnnotCalloutLine :: MonadIO m => m AnnotCalloutLine
+newZeroAnnotCalloutLine = liftIO $ callocBoxedBytes 56 >>= wrapBoxed AnnotCalloutLine
+
 noAnnotCalloutLine :: Maybe AnnotCalloutLine
 noAnnotCalloutLine = Nothing
 
@@ -127,7 +135,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "AnnotCalloutLine"
 -- throws : False
 -- Skip return : False
@@ -138,7 +145,7 @@
 
 annotCalloutLineNew ::
     (MonadIO m) =>
-    m AnnotCalloutLine
+    m AnnotCalloutLine                      -- result
 annotCalloutLineNew  = liftIO $ do
     result <- poppler_annot_callout_line_new
     checkUnexpectedReturnNULL "poppler_annot_callout_line_new" result
@@ -147,9 +154,8 @@
 
 -- method AnnotCalloutLine::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCalloutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotCalloutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCalloutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotCalloutLine"
 -- throws : False
 -- Skip return : False
@@ -161,8 +167,8 @@
 
 annotCalloutLineCopy ::
     (MonadIO m) =>
-    AnnotCalloutLine ->                     -- _obj
-    m AnnotCalloutLine
+    AnnotCalloutLine                        -- _obj
+    -> m AnnotCalloutLine                   -- result
 annotCalloutLineCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_annot_callout_line_copy _obj'
@@ -171,11 +177,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotCalloutLineCopyMethodInfo
+instance (signature ~ (m AnnotCalloutLine), MonadIO m) => MethodInfo AnnotCalloutLineCopyMethodInfo AnnotCalloutLine signature where
+    overloadedMethod _ = annotCalloutLineCopy
+
 -- method AnnotCalloutLine::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCalloutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotCalloutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotCalloutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -187,12 +196,29 @@
 
 annotCalloutLineFree ::
     (MonadIO m) =>
-    AnnotCalloutLine ->                     -- _obj
-    m ()
+    AnnotCalloutLine                        -- _obj
+    -> m ()                                 -- result
 annotCalloutLineFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_annot_callout_line_free _obj'
     touchManagedPtr _obj
     return ()
+
+data AnnotCalloutLineFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo AnnotCalloutLineFreeMethodInfo AnnotCalloutLine signature where
+    overloadedMethod _ = annotCalloutLineFree
+
+type family ResolveAnnotCalloutLineMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotCalloutLineMethod "copy" o = AnnotCalloutLineCopyMethodInfo
+    ResolveAnnotCalloutLineMethod "free" o = AnnotCalloutLineFreeMethodInfo
+    ResolveAnnotCalloutLineMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotCalloutLineMethod t AnnotCalloutLine, MethodInfo info AnnotCalloutLine p) => IsLabelProxy t (AnnotCalloutLine -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotCalloutLineMethod t AnnotCalloutLine, MethodInfo info AnnotCalloutLine p) => IsLabel t (AnnotCalloutLine -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/AnnotCalloutLine.hs-boot b/GI/Poppler/Structs/AnnotCalloutLine.hs-boot
--- a/GI/Poppler/Structs/AnnotCalloutLine.hs-boot
+++ b/GI/Poppler/Structs/AnnotCalloutLine.hs-boot
@@ -9,3 +9,5 @@
 
 newtype AnnotCalloutLine = AnnotCalloutLine (ForeignPtr AnnotCalloutLine)
 instance BoxedObject AnnotCalloutLine where
+data AnnotCalloutLineCopyMethodInfo
+data AnnotCalloutLineFreeMethodInfo
diff --git a/GI/Poppler/Structs/AnnotMapping.hs b/GI/Poppler/Structs/AnnotMapping.hs
--- a/GI/Poppler/Structs/AnnotMapping.hs
+++ b/GI/Poppler/Structs/AnnotMapping.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     AnnotMapping(..)                        ,
+    newZeroAnnotMapping                     ,
     noAnnotMapping                          ,
 
 
  -- * Methods
 -- ** annotMappingCopy
+    AnnotMappingCopyMethodInfo              ,
     annotMappingCopy                        ,
 
 
 -- ** annotMappingFree
+    AnnotMappingFreeMethodInfo              ,
     annotMappingFree                        ,
 
 
@@ -61,6 +65,10 @@
 instance BoxedObject AnnotMapping where
     boxedType _ = c_poppler_annot_mapping_get_type
 
+-- | Construct a `AnnotMapping` struct initialized to zero.
+newZeroAnnotMapping :: MonadIO m => m AnnotMapping
+newZeroAnnotMapping = liftIO $ callocBoxedBytes 40 >>= wrapBoxed AnnotMapping
+
 noAnnotMapping :: Maybe AnnotMapping
 noAnnotMapping = Nothing
 
@@ -80,7 +88,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "AnnotMapping"
 -- throws : False
 -- Skip return : False
@@ -91,7 +98,7 @@
 
 annotMappingNew ::
     (MonadIO m) =>
-    m AnnotMapping
+    m AnnotMapping                          -- result
 annotMappingNew  = liftIO $ do
     result <- poppler_annot_mapping_new
     checkUnexpectedReturnNULL "poppler_annot_mapping_new" result
@@ -100,9 +107,8 @@
 
 -- method AnnotMapping::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "AnnotMapping"
 -- throws : False
 -- Skip return : False
@@ -114,8 +120,8 @@
 
 annotMappingCopy ::
     (MonadIO m) =>
-    AnnotMapping ->                         -- _obj
-    m AnnotMapping
+    AnnotMapping                            -- _obj
+    -> m AnnotMapping                       -- result
 annotMappingCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_annot_mapping_copy _obj'
@@ -124,11 +130,14 @@
     touchManagedPtr _obj
     return result'
 
+data AnnotMappingCopyMethodInfo
+instance (signature ~ (m AnnotMapping), MonadIO m) => MethodInfo AnnotMappingCopyMethodInfo AnnotMapping signature where
+    overloadedMethod _ = annotMappingCopy
+
 -- method AnnotMapping::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "AnnotMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "AnnotMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -140,12 +149,29 @@
 
 annotMappingFree ::
     (MonadIO m) =>
-    AnnotMapping ->                         -- _obj
-    m ()
+    AnnotMapping                            -- _obj
+    -> m ()                                 -- result
 annotMappingFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_annot_mapping_free _obj'
     touchManagedPtr _obj
     return ()
+
+data AnnotMappingFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo AnnotMappingFreeMethodInfo AnnotMapping signature where
+    overloadedMethod _ = annotMappingFree
+
+type family ResolveAnnotMappingMethod (t :: Symbol) (o :: *) :: * where
+    ResolveAnnotMappingMethod "copy" o = AnnotMappingCopyMethodInfo
+    ResolveAnnotMappingMethod "free" o = AnnotMappingFreeMethodInfo
+    ResolveAnnotMappingMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveAnnotMappingMethod t AnnotMapping, MethodInfo info AnnotMapping p) => IsLabelProxy t (AnnotMapping -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveAnnotMappingMethod t AnnotMapping, MethodInfo info AnnotMapping p) => IsLabel t (AnnotMapping -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/AnnotMapping.hs-boot b/GI/Poppler/Structs/AnnotMapping.hs-boot
--- a/GI/Poppler/Structs/AnnotMapping.hs-boot
+++ b/GI/Poppler/Structs/AnnotMapping.hs-boot
@@ -9,3 +9,5 @@
 
 newtype AnnotMapping = AnnotMapping (ForeignPtr AnnotMapping)
 instance BoxedObject AnnotMapping where
+data AnnotMappingCopyMethodInfo
+data AnnotMappingFreeMethodInfo
diff --git a/GI/Poppler/Structs/Color.hs b/GI/Poppler/Structs/Color.hs
--- a/GI/Poppler/Structs/Color.hs
+++ b/GI/Poppler/Structs/Color.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     Color(..)                               ,
+    newZeroColor                            ,
     noColor                                 ,
 
 
  -- * Methods
 -- ** colorCopy
+    ColorCopyMethodInfo                     ,
     colorCopy                               ,
 
 
 -- ** colorFree
+    ColorFreeMethodInfo                     ,
     colorFree                               ,
 
 
@@ -65,6 +69,10 @@
 instance BoxedObject Color where
     boxedType _ = c_poppler_color_get_type
 
+-- | Construct a `Color` struct initialized to zero.
+newZeroColor :: MonadIO m => m Color
+newZeroColor = liftIO $ callocBoxedBytes 6 >>= wrapBoxed Color
+
 noColor :: Maybe Color
 noColor = Nothing
 
@@ -87,7 +95,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "Color"
 -- throws : False
 -- Skip return : False
@@ -98,7 +105,7 @@
 
 colorNew ::
     (MonadIO m) =>
-    m Color
+    m Color                                 -- result
 colorNew  = liftIO $ do
     result <- poppler_color_new
     checkUnexpectedReturnNULL "poppler_color_new" result
@@ -107,9 +114,8 @@
 
 -- method Color::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Color"
 -- throws : False
 -- Skip return : False
@@ -121,8 +127,8 @@
 
 colorCopy ::
     (MonadIO m) =>
-    Color ->                                -- _obj
-    m Color
+    Color                                   -- _obj
+    -> m Color                              -- result
 colorCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_color_copy _obj'
@@ -131,11 +137,14 @@
     touchManagedPtr _obj
     return result'
 
+data ColorCopyMethodInfo
+instance (signature ~ (m Color), MonadIO m) => MethodInfo ColorCopyMethodInfo Color signature where
+    overloadedMethod _ = colorCopy
+
 -- method Color::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -147,12 +156,29 @@
 
 colorFree ::
     (MonadIO m) =>
-    Color ->                                -- _obj
-    m ()
+    Color                                   -- _obj
+    -> m ()                                 -- result
 colorFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_color_free _obj'
     touchManagedPtr _obj
     return ()
+
+data ColorFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo ColorFreeMethodInfo Color signature where
+    overloadedMethod _ = colorFree
+
+type family ResolveColorMethod (t :: Symbol) (o :: *) :: * where
+    ResolveColorMethod "copy" o = ColorCopyMethodInfo
+    ResolveColorMethod "free" o = ColorFreeMethodInfo
+    ResolveColorMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveColorMethod t Color, MethodInfo info Color p) => IsLabelProxy t (Color -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveColorMethod t Color, MethodInfo info Color p) => IsLabel t (Color -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/Color.hs-boot b/GI/Poppler/Structs/Color.hs-boot
--- a/GI/Poppler/Structs/Color.hs-boot
+++ b/GI/Poppler/Structs/Color.hs-boot
@@ -9,3 +9,5 @@
 
 newtype Color = Color (ForeignPtr Color)
 instance BoxedObject Color where
+data ColorCopyMethodInfo
+data ColorFreeMethodInfo
diff --git a/GI/Poppler/Structs/Dest.hs b/GI/Poppler/Structs/Dest.hs
--- a/GI/Poppler/Structs/Dest.hs
+++ b/GI/Poppler/Structs/Dest.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -12,15 +13,18 @@
 
 -- * Exported types
     Dest(..)                                ,
+    newZeroDest                             ,
     noDest                                  ,
 
 
  -- * Methods
 -- ** destCopy
+    DestCopyMethodInfo                      ,
     destCopy                                ,
 
 
 -- ** destFree
+    DestFreeMethodInfo                      ,
     destFree                                ,
 
 
@@ -92,6 +96,10 @@
 instance BoxedObject Dest where
     boxedType _ = c_poppler_dest_get_type
 
+-- | Construct a `Dest` struct initialized to zero.
+newZeroDest :: MonadIO m => m Dest
+newZeroDest = liftIO $ callocBoxedBytes 72 >>= wrapBoxed Dest
+
 noDest :: Maybe Dest
 noDest = Nothing
 
@@ -159,9 +167,8 @@
 
 -- method Dest::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Dest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Dest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Dest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Dest"
 -- throws : False
 -- Skip return : False
@@ -173,8 +180,8 @@
 
 destCopy ::
     (MonadIO m) =>
-    Dest ->                                 -- _obj
-    m Dest
+    Dest                                    -- _obj
+    -> m Dest                               -- result
 destCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_dest_copy _obj'
@@ -183,11 +190,14 @@
     touchManagedPtr _obj
     return result'
 
+data DestCopyMethodInfo
+instance (signature ~ (m Dest), MonadIO m) => MethodInfo DestCopyMethodInfo Dest signature where
+    overloadedMethod _ = destCopy
+
 -- method Dest::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Dest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Dest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Dest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -199,12 +209,29 @@
 
 destFree ::
     (MonadIO m) =>
-    Dest ->                                 -- _obj
-    m ()
+    Dest                                    -- _obj
+    -> m ()                                 -- result
 destFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_dest_free _obj'
     touchManagedPtr _obj
     return ()
+
+data DestFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo DestFreeMethodInfo Dest signature where
+    overloadedMethod _ = destFree
+
+type family ResolveDestMethod (t :: Symbol) (o :: *) :: * where
+    ResolveDestMethod "copy" o = DestCopyMethodInfo
+    ResolveDestMethod "free" o = DestFreeMethodInfo
+    ResolveDestMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveDestMethod t Dest, MethodInfo info Dest p) => IsLabelProxy t (Dest -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveDestMethod t Dest, MethodInfo info Dest p) => IsLabel t (Dest -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/Dest.hs-boot b/GI/Poppler/Structs/Dest.hs-boot
--- a/GI/Poppler/Structs/Dest.hs-boot
+++ b/GI/Poppler/Structs/Dest.hs-boot
@@ -9,3 +9,5 @@
 
 newtype Dest = Dest (ForeignPtr Dest)
 instance BoxedObject Dest where
+data DestCopyMethodInfo
+data DestFreeMethodInfo
diff --git a/GI/Poppler/Structs/FontsIter.hs b/GI/Poppler/Structs/FontsIter.hs
--- a/GI/Poppler/Structs/FontsIter.hs
+++ b/GI/Poppler/Structs/FontsIter.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -15,46 +16,57 @@
 
  -- * Methods
 -- ** fontsIterCopy
+    FontsIterCopyMethodInfo                 ,
     fontsIterCopy                           ,
 
 
 -- ** fontsIterFree
+    FontsIterFreeMethodInfo                 ,
     fontsIterFree                           ,
 
 
 -- ** fontsIterGetEncoding
+    FontsIterGetEncodingMethodInfo          ,
     fontsIterGetEncoding                    ,
 
 
 -- ** fontsIterGetFileName
+    FontsIterGetFileNameMethodInfo          ,
     fontsIterGetFileName                    ,
 
 
 -- ** fontsIterGetFontType
+    FontsIterGetFontTypeMethodInfo          ,
     fontsIterGetFontType                    ,
 
 
 -- ** fontsIterGetFullName
+    FontsIterGetFullNameMethodInfo          ,
     fontsIterGetFullName                    ,
 
 
 -- ** fontsIterGetName
+    FontsIterGetNameMethodInfo              ,
     fontsIterGetName                        ,
 
 
 -- ** fontsIterGetSubstituteName
+    FontsIterGetSubstituteNameMethodInfo    ,
     fontsIterGetSubstituteName              ,
 
 
 -- ** fontsIterIsEmbedded
+    FontsIterIsEmbeddedMethodInfo           ,
     fontsIterIsEmbedded                     ,
 
 
 -- ** fontsIterIsSubset
+    FontsIterIsSubsetMethodInfo             ,
     fontsIterIsSubset                       ,
 
 
 -- ** fontsIterNext
+    FontsIterNextMethodInfo                 ,
     fontsIterNext                           ,
 
 
@@ -84,9 +96,8 @@
 
 -- method FontsIter::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FontsIter"
 -- throws : False
 -- Skip return : False
@@ -98,8 +109,8 @@
 
 fontsIterCopy ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m FontsIter
+    FontsIter                               -- _obj
+    -> m FontsIter                          -- result
 fontsIterCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_copy _obj'
@@ -108,11 +119,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterCopyMethodInfo
+instance (signature ~ (m FontsIter), MonadIO m) => MethodInfo FontsIterCopyMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterCopy
+
 -- method FontsIter::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -124,19 +138,22 @@
 
 fontsIterFree ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m ()
+    FontsIter                               -- _obj
+    -> m ()                                 -- result
 fontsIterFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_fonts_iter_free _obj'
     touchManagedPtr _obj
     return ()
 
+data FontsIterFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo FontsIterFreeMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterFree
+
 -- method FontsIter::get_encoding
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -148,8 +165,8 @@
 
 fontsIterGetEncoding ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m T.Text
+    FontsIter                               -- _obj
+    -> m T.Text                             -- result
 fontsIterGetEncoding _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_get_encoding _obj'
@@ -158,11 +175,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterGetEncodingMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo FontsIterGetEncodingMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterGetEncoding
+
 -- method FontsIter::get_file_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -174,8 +194,8 @@
 
 fontsIterGetFileName ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m T.Text
+    FontsIter                               -- _obj
+    -> m T.Text                             -- result
 fontsIterGetFileName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_get_file_name _obj'
@@ -184,11 +204,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterGetFileNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo FontsIterGetFileNameMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterGetFileName
+
 -- method FontsIter::get_font_type
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FontType"
 -- throws : False
 -- Skip return : False
@@ -200,8 +223,8 @@
 
 fontsIterGetFontType ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m FontType
+    FontsIter                               -- _obj
+    -> m FontType                           -- result
 fontsIterGetFontType _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_get_font_type _obj'
@@ -209,11 +232,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterGetFontTypeMethodInfo
+instance (signature ~ (m FontType), MonadIO m) => MethodInfo FontsIterGetFontTypeMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterGetFontType
+
 -- method FontsIter::get_full_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -225,8 +251,8 @@
 
 fontsIterGetFullName ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m T.Text
+    FontsIter                               -- _obj
+    -> m T.Text                             -- result
 fontsIterGetFullName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_get_full_name _obj'
@@ -235,11 +261,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterGetFullNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo FontsIterGetFullNameMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterGetFullName
+
 -- method FontsIter::get_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -251,8 +280,8 @@
 
 fontsIterGetName ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m T.Text
+    FontsIter                               -- _obj
+    -> m T.Text                             -- result
 fontsIterGetName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_get_name _obj'
@@ -261,11 +290,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterGetNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo FontsIterGetNameMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterGetName
+
 -- method FontsIter::get_substitute_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -277,8 +309,8 @@
 
 fontsIterGetSubstituteName ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m T.Text
+    FontsIter                               -- _obj
+    -> m T.Text                             -- result
 fontsIterGetSubstituteName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_get_substitute_name _obj'
@@ -287,11 +319,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterGetSubstituteNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo FontsIterGetSubstituteNameMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterGetSubstituteName
+
 -- method FontsIter::is_embedded
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -303,8 +338,8 @@
 
 fontsIterIsEmbedded ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m Bool
+    FontsIter                               -- _obj
+    -> m Bool                               -- result
 fontsIterIsEmbedded _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_is_embedded _obj'
@@ -312,11 +347,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterIsEmbeddedMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo FontsIterIsEmbeddedMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterIsEmbedded
+
 -- method FontsIter::is_subset
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -328,8 +366,8 @@
 
 fontsIterIsSubset ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m Bool
+    FontsIter                               -- _obj
+    -> m Bool                               -- result
 fontsIterIsSubset _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_is_subset _obj'
@@ -337,11 +375,14 @@
     touchManagedPtr _obj
     return result'
 
+data FontsIterIsSubsetMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo FontsIterIsSubsetMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterIsSubset
+
 -- method FontsIter::next
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FontsIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -353,13 +394,39 @@
 
 fontsIterNext ::
     (MonadIO m) =>
-    FontsIter ->                            -- _obj
-    m Bool
+    FontsIter                               -- _obj
+    -> m Bool                               -- result
 fontsIterNext _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_fonts_iter_next _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data FontsIterNextMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo FontsIterNextMethodInfo FontsIter signature where
+    overloadedMethod _ = fontsIterNext
+
+type family ResolveFontsIterMethod (t :: Symbol) (o :: *) :: * where
+    ResolveFontsIterMethod "copy" o = FontsIterCopyMethodInfo
+    ResolveFontsIterMethod "free" o = FontsIterFreeMethodInfo
+    ResolveFontsIterMethod "isEmbedded" o = FontsIterIsEmbeddedMethodInfo
+    ResolveFontsIterMethod "isSubset" o = FontsIterIsSubsetMethodInfo
+    ResolveFontsIterMethod "next" o = FontsIterNextMethodInfo
+    ResolveFontsIterMethod "getEncoding" o = FontsIterGetEncodingMethodInfo
+    ResolveFontsIterMethod "getFileName" o = FontsIterGetFileNameMethodInfo
+    ResolveFontsIterMethod "getFontType" o = FontsIterGetFontTypeMethodInfo
+    ResolveFontsIterMethod "getFullName" o = FontsIterGetFullNameMethodInfo
+    ResolveFontsIterMethod "getName" o = FontsIterGetNameMethodInfo
+    ResolveFontsIterMethod "getSubstituteName" o = FontsIterGetSubstituteNameMethodInfo
+    ResolveFontsIterMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveFontsIterMethod t FontsIter, MethodInfo info FontsIter p) => IsLabelProxy t (FontsIter -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveFontsIterMethod t FontsIter, MethodInfo info FontsIter p) => IsLabel t (FontsIter -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/FontsIter.hs-boot b/GI/Poppler/Structs/FontsIter.hs-boot
--- a/GI/Poppler/Structs/FontsIter.hs-boot
+++ b/GI/Poppler/Structs/FontsIter.hs-boot
@@ -9,3 +9,14 @@
 
 newtype FontsIter = FontsIter (ForeignPtr FontsIter)
 instance BoxedObject FontsIter where
+data FontsIterCopyMethodInfo
+data FontsIterFreeMethodInfo
+data FontsIterGetEncodingMethodInfo
+data FontsIterGetFileNameMethodInfo
+data FontsIterGetFontTypeMethodInfo
+data FontsIterGetFullNameMethodInfo
+data FontsIterGetNameMethodInfo
+data FontsIterGetSubstituteNameMethodInfo
+data FontsIterIsEmbeddedMethodInfo
+data FontsIterIsSubsetMethodInfo
+data FontsIterNextMethodInfo
diff --git a/GI/Poppler/Structs/FormFieldMapping.hs b/GI/Poppler/Structs/FormFieldMapping.hs
--- a/GI/Poppler/Structs/FormFieldMapping.hs
+++ b/GI/Poppler/Structs/FormFieldMapping.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     FormFieldMapping(..)                    ,
+    newZeroFormFieldMapping                 ,
     noFormFieldMapping                      ,
 
 
  -- * Methods
 -- ** formFieldMappingCopy
+    FormFieldMappingCopyMethodInfo          ,
     formFieldMappingCopy                    ,
 
 
 -- ** formFieldMappingFree
+    FormFieldMappingFreeMethodInfo          ,
     formFieldMappingFree                    ,
 
 
@@ -61,6 +65,10 @@
 instance BoxedObject FormFieldMapping where
     boxedType _ = c_poppler_form_field_mapping_get_type
 
+-- | Construct a `FormFieldMapping` struct initialized to zero.
+newZeroFormFieldMapping :: MonadIO m => m FormFieldMapping
+newZeroFormFieldMapping = liftIO $ callocBoxedBytes 40 >>= wrapBoxed FormFieldMapping
+
 noFormFieldMapping :: Maybe FormFieldMapping
 noFormFieldMapping = Nothing
 
@@ -80,7 +88,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "FormFieldMapping"
 -- throws : False
 -- Skip return : False
@@ -91,7 +98,7 @@
 
 formFieldMappingNew ::
     (MonadIO m) =>
-    m FormFieldMapping
+    m FormFieldMapping                      -- result
 formFieldMappingNew  = liftIO $ do
     result <- poppler_form_field_mapping_new
     checkUnexpectedReturnNULL "poppler_form_field_mapping_new" result
@@ -100,9 +107,8 @@
 
 -- method FormFieldMapping::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormFieldMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormFieldMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormFieldMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "FormFieldMapping"
 -- throws : False
 -- Skip return : False
@@ -114,8 +120,8 @@
 
 formFieldMappingCopy ::
     (MonadIO m) =>
-    FormFieldMapping ->                     -- _obj
-    m FormFieldMapping
+    FormFieldMapping                        -- _obj
+    -> m FormFieldMapping                   -- result
 formFieldMappingCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_form_field_mapping_copy _obj'
@@ -124,11 +130,14 @@
     touchManagedPtr _obj
     return result'
 
+data FormFieldMappingCopyMethodInfo
+instance (signature ~ (m FormFieldMapping), MonadIO m) => MethodInfo FormFieldMappingCopyMethodInfo FormFieldMapping signature where
+    overloadedMethod _ = formFieldMappingCopy
+
 -- method FormFieldMapping::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormFieldMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "FormFieldMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "FormFieldMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -140,12 +149,29 @@
 
 formFieldMappingFree ::
     (MonadIO m) =>
-    FormFieldMapping ->                     -- _obj
-    m ()
+    FormFieldMapping                        -- _obj
+    -> m ()                                 -- result
 formFieldMappingFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_form_field_mapping_free _obj'
     touchManagedPtr _obj
     return ()
+
+data FormFieldMappingFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo FormFieldMappingFreeMethodInfo FormFieldMapping signature where
+    overloadedMethod _ = formFieldMappingFree
+
+type family ResolveFormFieldMappingMethod (t :: Symbol) (o :: *) :: * where
+    ResolveFormFieldMappingMethod "copy" o = FormFieldMappingCopyMethodInfo
+    ResolveFormFieldMappingMethod "free" o = FormFieldMappingFreeMethodInfo
+    ResolveFormFieldMappingMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveFormFieldMappingMethod t FormFieldMapping, MethodInfo info FormFieldMapping p) => IsLabelProxy t (FormFieldMapping -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveFormFieldMappingMethod t FormFieldMapping, MethodInfo info FormFieldMapping p) => IsLabel t (FormFieldMapping -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/FormFieldMapping.hs-boot b/GI/Poppler/Structs/FormFieldMapping.hs-boot
--- a/GI/Poppler/Structs/FormFieldMapping.hs-boot
+++ b/GI/Poppler/Structs/FormFieldMapping.hs-boot
@@ -9,3 +9,5 @@
 
 newtype FormFieldMapping = FormFieldMapping (ForeignPtr FormFieldMapping)
 instance BoxedObject FormFieldMapping where
+data FormFieldMappingCopyMethodInfo
+data FormFieldMappingFreeMethodInfo
diff --git a/GI/Poppler/Structs/ImageMapping.hs b/GI/Poppler/Structs/ImageMapping.hs
--- a/GI/Poppler/Structs/ImageMapping.hs
+++ b/GI/Poppler/Structs/ImageMapping.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     ImageMapping(..)                        ,
+    newZeroImageMapping                     ,
     noImageMapping                          ,
 
 
  -- * Methods
 -- ** imageMappingCopy
+    ImageMappingCopyMethodInfo              ,
     imageMappingCopy                        ,
 
 
 -- ** imageMappingFree
+    ImageMappingFreeMethodInfo              ,
     imageMappingFree                        ,
 
 
@@ -61,6 +65,10 @@
 instance BoxedObject ImageMapping where
     boxedType _ = c_poppler_image_mapping_get_type
 
+-- | Construct a `ImageMapping` struct initialized to zero.
+newZeroImageMapping :: MonadIO m => m ImageMapping
+newZeroImageMapping = liftIO $ callocBoxedBytes 40 >>= wrapBoxed ImageMapping
+
 noImageMapping :: Maybe ImageMapping
 noImageMapping = Nothing
 
@@ -79,7 +87,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "ImageMapping"
 -- throws : False
 -- Skip return : False
@@ -90,7 +97,7 @@
 
 imageMappingNew ::
     (MonadIO m) =>
-    m ImageMapping
+    m ImageMapping                          -- result
 imageMappingNew  = liftIO $ do
     result <- poppler_image_mapping_new
     checkUnexpectedReturnNULL "poppler_image_mapping_new" result
@@ -99,9 +106,8 @@
 
 -- method ImageMapping::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "ImageMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "ImageMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "ImageMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "ImageMapping"
 -- throws : False
 -- Skip return : False
@@ -113,8 +119,8 @@
 
 imageMappingCopy ::
     (MonadIO m) =>
-    ImageMapping ->                         -- _obj
-    m ImageMapping
+    ImageMapping                            -- _obj
+    -> m ImageMapping                       -- result
 imageMappingCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_image_mapping_copy _obj'
@@ -123,11 +129,14 @@
     touchManagedPtr _obj
     return result'
 
+data ImageMappingCopyMethodInfo
+instance (signature ~ (m ImageMapping), MonadIO m) => MethodInfo ImageMappingCopyMethodInfo ImageMapping signature where
+    overloadedMethod _ = imageMappingCopy
+
 -- method ImageMapping::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "ImageMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "ImageMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "ImageMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -139,12 +148,29 @@
 
 imageMappingFree ::
     (MonadIO m) =>
-    ImageMapping ->                         -- _obj
-    m ()
+    ImageMapping                            -- _obj
+    -> m ()                                 -- result
 imageMappingFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_image_mapping_free _obj'
     touchManagedPtr _obj
     return ()
+
+data ImageMappingFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo ImageMappingFreeMethodInfo ImageMapping signature where
+    overloadedMethod _ = imageMappingFree
+
+type family ResolveImageMappingMethod (t :: Symbol) (o :: *) :: * where
+    ResolveImageMappingMethod "copy" o = ImageMappingCopyMethodInfo
+    ResolveImageMappingMethod "free" o = ImageMappingFreeMethodInfo
+    ResolveImageMappingMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveImageMappingMethod t ImageMapping, MethodInfo info ImageMapping p) => IsLabelProxy t (ImageMapping -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveImageMappingMethod t ImageMapping, MethodInfo info ImageMapping p) => IsLabel t (ImageMapping -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/ImageMapping.hs-boot b/GI/Poppler/Structs/ImageMapping.hs-boot
--- a/GI/Poppler/Structs/ImageMapping.hs-boot
+++ b/GI/Poppler/Structs/ImageMapping.hs-boot
@@ -9,3 +9,5 @@
 
 newtype ImageMapping = ImageMapping (ForeignPtr ImageMapping)
 instance BoxedObject ImageMapping where
+data ImageMappingCopyMethodInfo
+data ImageMappingFreeMethodInfo
diff --git a/GI/Poppler/Structs/IndexIter.hs b/GI/Poppler/Structs/IndexIter.hs
--- a/GI/Poppler/Structs/IndexIter.hs
+++ b/GI/Poppler/Structs/IndexIter.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -15,22 +16,27 @@
 
  -- * Methods
 -- ** indexIterCopy
+    IndexIterCopyMethodInfo                 ,
     indexIterCopy                           ,
 
 
 -- ** indexIterFree
+    IndexIterFreeMethodInfo                 ,
     indexIterFree                           ,
 
 
 -- ** indexIterGetAction
+    IndexIterGetActionMethodInfo            ,
     indexIterGetAction                      ,
 
 
 -- ** indexIterGetChild
+    IndexIterGetChildMethodInfo             ,
     indexIterGetChild                       ,
 
 
 -- ** indexIterIsOpen
+    IndexIterIsOpenMethodInfo               ,
     indexIterIsOpen                         ,
 
 
@@ -39,6 +45,7 @@
 
 
 -- ** indexIterNext
+    IndexIterNextMethodInfo                 ,
     indexIterNext                           ,
 
 
@@ -68,9 +75,8 @@
 
 -- method IndexIter::new
 -- method type : Constructor
--- Args : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "IndexIter"
 -- throws : False
 -- Skip return : False
@@ -82,8 +88,8 @@
 
 indexIterNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- document
-    m IndexIter
+    a                                       -- document
+    -> m IndexIter                          -- result
 indexIterNew document = liftIO $ do
     let document' = unsafeManagedPtrCastPtr document
     result <- poppler_index_iter_new document'
@@ -94,9 +100,8 @@
 
 -- method IndexIter::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "IndexIter"
 -- throws : False
 -- Skip return : False
@@ -108,8 +113,8 @@
 
 indexIterCopy ::
     (MonadIO m) =>
-    IndexIter ->                            -- _obj
-    m IndexIter
+    IndexIter                               -- _obj
+    -> m IndexIter                          -- result
 indexIterCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_index_iter_copy _obj'
@@ -118,11 +123,14 @@
     touchManagedPtr _obj
     return result'
 
+data IndexIterCopyMethodInfo
+instance (signature ~ (m IndexIter), MonadIO m) => MethodInfo IndexIterCopyMethodInfo IndexIter signature where
+    overloadedMethod _ = indexIterCopy
+
 -- method IndexIter::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -134,19 +142,22 @@
 
 indexIterFree ::
     (MonadIO m) =>
-    IndexIter ->                            -- _obj
-    m ()
+    IndexIter                               -- _obj
+    -> m ()                                 -- result
 indexIterFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_index_iter_free _obj'
     touchManagedPtr _obj
     return ()
 
+data IndexIterFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo IndexIterFreeMethodInfo IndexIter signature where
+    overloadedMethod _ = indexIterFree
+
 -- method IndexIter::get_action
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Action"
 -- throws : False
 -- Skip return : False
@@ -158,8 +169,8 @@
 
 indexIterGetAction ::
     (MonadIO m) =>
-    IndexIter ->                            -- _obj
-    m Action
+    IndexIter                               -- _obj
+    -> m Action                             -- result
 indexIterGetAction _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_index_iter_get_action _obj'
@@ -168,11 +179,14 @@
     touchManagedPtr _obj
     return result'
 
+data IndexIterGetActionMethodInfo
+instance (signature ~ (m Action), MonadIO m) => MethodInfo IndexIterGetActionMethodInfo IndexIter signature where
+    overloadedMethod _ = indexIterGetAction
+
 -- method IndexIter::get_child
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "IndexIter"
 -- throws : False
 -- Skip return : False
@@ -184,8 +198,8 @@
 
 indexIterGetChild ::
     (MonadIO m) =>
-    IndexIter ->                            -- _obj
-    m IndexIter
+    IndexIter                               -- _obj
+    -> m IndexIter                          -- result
 indexIterGetChild _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_index_iter_get_child _obj'
@@ -194,11 +208,14 @@
     touchManagedPtr _obj
     return result'
 
+data IndexIterGetChildMethodInfo
+instance (signature ~ (m IndexIter), MonadIO m) => MethodInfo IndexIterGetChildMethodInfo IndexIter signature where
+    overloadedMethod _ = indexIterGetChild
+
 -- method IndexIter::is_open
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -210,8 +227,8 @@
 
 indexIterIsOpen ::
     (MonadIO m) =>
-    IndexIter ->                            -- _obj
-    m Bool
+    IndexIter                               -- _obj
+    -> m Bool                               -- result
 indexIterIsOpen _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_index_iter_is_open _obj'
@@ -219,11 +236,14 @@
     touchManagedPtr _obj
     return result'
 
+data IndexIterIsOpenMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo IndexIterIsOpenMethodInfo IndexIter signature where
+    overloadedMethod _ = indexIterIsOpen
+
 -- method IndexIter::next
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "IndexIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -235,13 +255,34 @@
 
 indexIterNext ::
     (MonadIO m) =>
-    IndexIter ->                            -- _obj
-    m Bool
+    IndexIter                               -- _obj
+    -> m Bool                               -- result
 indexIterNext _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_index_iter_next _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data IndexIterNextMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo IndexIterNextMethodInfo IndexIter signature where
+    overloadedMethod _ = indexIterNext
+
+type family ResolveIndexIterMethod (t :: Symbol) (o :: *) :: * where
+    ResolveIndexIterMethod "copy" o = IndexIterCopyMethodInfo
+    ResolveIndexIterMethod "free" o = IndexIterFreeMethodInfo
+    ResolveIndexIterMethod "isOpen" o = IndexIterIsOpenMethodInfo
+    ResolveIndexIterMethod "next" o = IndexIterNextMethodInfo
+    ResolveIndexIterMethod "getAction" o = IndexIterGetActionMethodInfo
+    ResolveIndexIterMethod "getChild" o = IndexIterGetChildMethodInfo
+    ResolveIndexIterMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveIndexIterMethod t IndexIter, MethodInfo info IndexIter p) => IsLabelProxy t (IndexIter -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveIndexIterMethod t IndexIter, MethodInfo info IndexIter p) => IsLabel t (IndexIter -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/IndexIter.hs-boot b/GI/Poppler/Structs/IndexIter.hs-boot
--- a/GI/Poppler/Structs/IndexIter.hs-boot
+++ b/GI/Poppler/Structs/IndexIter.hs-boot
@@ -9,3 +9,9 @@
 
 newtype IndexIter = IndexIter (ForeignPtr IndexIter)
 instance BoxedObject IndexIter where
+data IndexIterCopyMethodInfo
+data IndexIterFreeMethodInfo
+data IndexIterGetActionMethodInfo
+data IndexIterGetChildMethodInfo
+data IndexIterIsOpenMethodInfo
+data IndexIterNextMethodInfo
diff --git a/GI/Poppler/Structs/LayersIter.hs b/GI/Poppler/Structs/LayersIter.hs
--- a/GI/Poppler/Structs/LayersIter.hs
+++ b/GI/Poppler/Structs/LayersIter.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -15,22 +16,27 @@
 
  -- * Methods
 -- ** layersIterCopy
+    LayersIterCopyMethodInfo                ,
     layersIterCopy                          ,
 
 
 -- ** layersIterFree
+    LayersIterFreeMethodInfo                ,
     layersIterFree                          ,
 
 
 -- ** layersIterGetChild
+    LayersIterGetChildMethodInfo            ,
     layersIterGetChild                      ,
 
 
 -- ** layersIterGetLayer
+    LayersIterGetLayerMethodInfo            ,
     layersIterGetLayer                      ,
 
 
 -- ** layersIterGetTitle
+    LayersIterGetTitleMethodInfo            ,
     layersIterGetTitle                      ,
 
 
@@ -39,6 +45,7 @@
 
 
 -- ** layersIterNext
+    LayersIterNextMethodInfo                ,
     layersIterNext                          ,
 
 
@@ -68,9 +75,8 @@
 
 -- method LayersIter::new
 -- method type : Constructor
--- Args : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "LayersIter"
 -- throws : False
 -- Skip return : False
@@ -82,8 +88,8 @@
 
 layersIterNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- document
-    m LayersIter
+    a                                       -- document
+    -> m LayersIter                         -- result
 layersIterNew document = liftIO $ do
     let document' = unsafeManagedPtrCastPtr document
     result <- poppler_layers_iter_new document'
@@ -94,9 +100,8 @@
 
 -- method LayersIter::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "LayersIter"
 -- throws : False
 -- Skip return : False
@@ -108,8 +113,8 @@
 
 layersIterCopy ::
     (MonadIO m) =>
-    LayersIter ->                           -- _obj
-    m LayersIter
+    LayersIter                              -- _obj
+    -> m LayersIter                         -- result
 layersIterCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_layers_iter_copy _obj'
@@ -118,11 +123,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayersIterCopyMethodInfo
+instance (signature ~ (m LayersIter), MonadIO m) => MethodInfo LayersIterCopyMethodInfo LayersIter signature where
+    overloadedMethod _ = layersIterCopy
+
 -- method LayersIter::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -134,19 +142,22 @@
 
 layersIterFree ::
     (MonadIO m) =>
-    LayersIter ->                           -- _obj
-    m ()
+    LayersIter                              -- _obj
+    -> m ()                                 -- result
 layersIterFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_layers_iter_free _obj'
     touchManagedPtr _obj
     return ()
 
+data LayersIterFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo LayersIterFreeMethodInfo LayersIter signature where
+    overloadedMethod _ = layersIterFree
+
 -- method LayersIter::get_child
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "LayersIter"
 -- throws : False
 -- Skip return : False
@@ -158,8 +169,8 @@
 
 layersIterGetChild ::
     (MonadIO m) =>
-    LayersIter ->                           -- _obj
-    m LayersIter
+    LayersIter                              -- _obj
+    -> m LayersIter                         -- result
 layersIterGetChild _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_layers_iter_get_child _obj'
@@ -168,11 +179,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayersIterGetChildMethodInfo
+instance (signature ~ (m LayersIter), MonadIO m) => MethodInfo LayersIterGetChildMethodInfo LayersIter signature where
+    overloadedMethod _ = layersIterGetChild
+
 -- method LayersIter::get_layer
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Layer"
 -- throws : False
 -- Skip return : False
@@ -184,8 +198,8 @@
 
 layersIterGetLayer ::
     (MonadIO m) =>
-    LayersIter ->                           -- _obj
-    m Layer
+    LayersIter                              -- _obj
+    -> m Layer                              -- result
 layersIterGetLayer _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_layers_iter_get_layer _obj'
@@ -194,11 +208,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayersIterGetLayerMethodInfo
+instance (signature ~ (m Layer), MonadIO m) => MethodInfo LayersIterGetLayerMethodInfo LayersIter signature where
+    overloadedMethod _ = layersIterGetLayer
+
 -- method LayersIter::get_title
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -210,8 +227,8 @@
 
 layersIterGetTitle ::
     (MonadIO m) =>
-    LayersIter ->                           -- _obj
-    m T.Text
+    LayersIter                              -- _obj
+    -> m T.Text                             -- result
 layersIterGetTitle _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_layers_iter_get_title _obj'
@@ -221,11 +238,14 @@
     touchManagedPtr _obj
     return result'
 
+data LayersIterGetTitleMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo LayersIterGetTitleMethodInfo LayersIter signature where
+    overloadedMethod _ = layersIterGetTitle
+
 -- method LayersIter::next
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LayersIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -237,13 +257,34 @@
 
 layersIterNext ::
     (MonadIO m) =>
-    LayersIter ->                           -- _obj
-    m Bool
+    LayersIter                              -- _obj
+    -> m Bool                               -- result
 layersIterNext _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_layers_iter_next _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data LayersIterNextMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo LayersIterNextMethodInfo LayersIter signature where
+    overloadedMethod _ = layersIterNext
+
+type family ResolveLayersIterMethod (t :: Symbol) (o :: *) :: * where
+    ResolveLayersIterMethod "copy" o = LayersIterCopyMethodInfo
+    ResolveLayersIterMethod "free" o = LayersIterFreeMethodInfo
+    ResolveLayersIterMethod "next" o = LayersIterNextMethodInfo
+    ResolveLayersIterMethod "getChild" o = LayersIterGetChildMethodInfo
+    ResolveLayersIterMethod "getLayer" o = LayersIterGetLayerMethodInfo
+    ResolveLayersIterMethod "getTitle" o = LayersIterGetTitleMethodInfo
+    ResolveLayersIterMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveLayersIterMethod t LayersIter, MethodInfo info LayersIter p) => IsLabelProxy t (LayersIter -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveLayersIterMethod t LayersIter, MethodInfo info LayersIter p) => IsLabel t (LayersIter -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/LayersIter.hs-boot b/GI/Poppler/Structs/LayersIter.hs-boot
--- a/GI/Poppler/Structs/LayersIter.hs-boot
+++ b/GI/Poppler/Structs/LayersIter.hs-boot
@@ -9,3 +9,9 @@
 
 newtype LayersIter = LayersIter (ForeignPtr LayersIter)
 instance BoxedObject LayersIter where
+data LayersIterCopyMethodInfo
+data LayersIterFreeMethodInfo
+data LayersIterGetChildMethodInfo
+data LayersIterGetLayerMethodInfo
+data LayersIterGetTitleMethodInfo
+data LayersIterNextMethodInfo
diff --git a/GI/Poppler/Structs/LinkMapping.hs b/GI/Poppler/Structs/LinkMapping.hs
--- a/GI/Poppler/Structs/LinkMapping.hs
+++ b/GI/Poppler/Structs/LinkMapping.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     LinkMapping(..)                         ,
+    newZeroLinkMapping                      ,
     noLinkMapping                           ,
 
 
  -- * Methods
 -- ** linkMappingCopy
+    LinkMappingCopyMethodInfo               ,
     linkMappingCopy                         ,
 
 
 -- ** linkMappingFree
+    LinkMappingFreeMethodInfo               ,
     linkMappingFree                         ,
 
 
@@ -61,6 +65,10 @@
 instance BoxedObject LinkMapping where
     boxedType _ = c_poppler_link_mapping_get_type
 
+-- | Construct a `LinkMapping` struct initialized to zero.
+newZeroLinkMapping :: MonadIO m => m LinkMapping
+newZeroLinkMapping = liftIO $ callocBoxedBytes 40 >>= wrapBoxed LinkMapping
+
 noLinkMapping :: Maybe LinkMapping
 noLinkMapping = Nothing
 
@@ -80,7 +88,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "LinkMapping"
 -- throws : False
 -- Skip return : False
@@ -91,7 +98,7 @@
 
 linkMappingNew ::
     (MonadIO m) =>
-    m LinkMapping
+    m LinkMapping                           -- result
 linkMappingNew  = liftIO $ do
     result <- poppler_link_mapping_new
     checkUnexpectedReturnNULL "poppler_link_mapping_new" result
@@ -100,9 +107,8 @@
 
 -- method LinkMapping::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LinkMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LinkMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LinkMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "LinkMapping"
 -- throws : False
 -- Skip return : False
@@ -114,8 +120,8 @@
 
 linkMappingCopy ::
     (MonadIO m) =>
-    LinkMapping ->                          -- _obj
-    m LinkMapping
+    LinkMapping                             -- _obj
+    -> m LinkMapping                        -- result
 linkMappingCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_link_mapping_copy _obj'
@@ -124,11 +130,14 @@
     touchManagedPtr _obj
     return result'
 
+data LinkMappingCopyMethodInfo
+instance (signature ~ (m LinkMapping), MonadIO m) => MethodInfo LinkMappingCopyMethodInfo LinkMapping signature where
+    overloadedMethod _ = linkMappingCopy
+
 -- method LinkMapping::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "LinkMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "LinkMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "LinkMapping", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -140,12 +149,29 @@
 
 linkMappingFree ::
     (MonadIO m) =>
-    LinkMapping ->                          -- _obj
-    m ()
+    LinkMapping                             -- _obj
+    -> m ()                                 -- result
 linkMappingFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_link_mapping_free _obj'
     touchManagedPtr _obj
     return ()
+
+data LinkMappingFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo LinkMappingFreeMethodInfo LinkMapping signature where
+    overloadedMethod _ = linkMappingFree
+
+type family ResolveLinkMappingMethod (t :: Symbol) (o :: *) :: * where
+    ResolveLinkMappingMethod "copy" o = LinkMappingCopyMethodInfo
+    ResolveLinkMappingMethod "free" o = LinkMappingFreeMethodInfo
+    ResolveLinkMappingMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveLinkMappingMethod t LinkMapping, MethodInfo info LinkMapping p) => IsLabelProxy t (LinkMapping -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveLinkMappingMethod t LinkMapping, MethodInfo info LinkMapping p) => IsLabel t (LinkMapping -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/LinkMapping.hs-boot b/GI/Poppler/Structs/LinkMapping.hs-boot
--- a/GI/Poppler/Structs/LinkMapping.hs-boot
+++ b/GI/Poppler/Structs/LinkMapping.hs-boot
@@ -9,3 +9,5 @@
 
 newtype LinkMapping = LinkMapping (ForeignPtr LinkMapping)
 instance BoxedObject LinkMapping where
+data LinkMappingCopyMethodInfo
+data LinkMappingFreeMethodInfo
diff --git a/GI/Poppler/Structs/PageTransition.hs b/GI/Poppler/Structs/PageTransition.hs
--- a/GI/Poppler/Structs/PageTransition.hs
+++ b/GI/Poppler/Structs/PageTransition.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     PageTransition(..)                      ,
+    newZeroPageTransition                   ,
     noPageTransition                        ,
 
 
  -- * Methods
 -- ** pageTransitionCopy
+    PageTransitionCopyMethodInfo            ,
     pageTransitionCopy                      ,
 
 
 -- ** pageTransitionFree
+    PageTransitionFreeMethodInfo            ,
     pageTransitionFree                      ,
 
 
@@ -81,6 +85,10 @@
 instance BoxedObject PageTransition where
     boxedType _ = c_poppler_page_transition_get_type
 
+-- | Construct a `PageTransition` struct initialized to zero.
+newZeroPageTransition :: MonadIO m => m PageTransition
+newZeroPageTransition = liftIO $ callocBoxedBytes 40 >>= wrapBoxed PageTransition
+
 noPageTransition :: Maybe PageTransition
 noPageTransition = Nothing
 
@@ -128,7 +136,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "PageTransition"
 -- throws : False
 -- Skip return : False
@@ -139,7 +146,7 @@
 
 pageTransitionNew ::
     (MonadIO m) =>
-    m PageTransition
+    m PageTransition                        -- result
 pageTransitionNew  = liftIO $ do
     result <- poppler_page_transition_new
     checkUnexpectedReturnNULL "poppler_page_transition_new" result
@@ -148,9 +155,8 @@
 
 -- method PageTransition::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "PageTransition", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "PageTransition", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "PageTransition", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "PageTransition"
 -- throws : False
 -- Skip return : False
@@ -162,8 +168,8 @@
 
 pageTransitionCopy ::
     (MonadIO m) =>
-    PageTransition ->                       -- _obj
-    m PageTransition
+    PageTransition                          -- _obj
+    -> m PageTransition                     -- result
 pageTransitionCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_page_transition_copy _obj'
@@ -172,11 +178,14 @@
     touchManagedPtr _obj
     return result'
 
+data PageTransitionCopyMethodInfo
+instance (signature ~ (m PageTransition), MonadIO m) => MethodInfo PageTransitionCopyMethodInfo PageTransition signature where
+    overloadedMethod _ = pageTransitionCopy
+
 -- method PageTransition::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "PageTransition", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "PageTransition", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "PageTransition", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -188,12 +197,29 @@
 
 pageTransitionFree ::
     (MonadIO m) =>
-    PageTransition ->                       -- _obj
-    m ()
+    PageTransition                          -- _obj
+    -> m ()                                 -- result
 pageTransitionFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_page_transition_free _obj'
     touchManagedPtr _obj
     return ()
+
+data PageTransitionFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo PageTransitionFreeMethodInfo PageTransition signature where
+    overloadedMethod _ = pageTransitionFree
+
+type family ResolvePageTransitionMethod (t :: Symbol) (o :: *) :: * where
+    ResolvePageTransitionMethod "copy" o = PageTransitionCopyMethodInfo
+    ResolvePageTransitionMethod "free" o = PageTransitionFreeMethodInfo
+    ResolvePageTransitionMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolvePageTransitionMethod t PageTransition, MethodInfo info PageTransition p) => IsLabelProxy t (PageTransition -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolvePageTransitionMethod t PageTransition, MethodInfo info PageTransition p) => IsLabel t (PageTransition -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/PageTransition.hs-boot b/GI/Poppler/Structs/PageTransition.hs-boot
--- a/GI/Poppler/Structs/PageTransition.hs-boot
+++ b/GI/Poppler/Structs/PageTransition.hs-boot
@@ -9,3 +9,5 @@
 
 newtype PageTransition = PageTransition (ForeignPtr PageTransition)
 instance BoxedObject PageTransition where
+data PageTransitionCopyMethodInfo
+data PageTransitionFreeMethodInfo
diff --git a/GI/Poppler/Structs/Point.hs b/GI/Poppler/Structs/Point.hs
--- a/GI/Poppler/Structs/Point.hs
+++ b/GI/Poppler/Structs/Point.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -12,15 +13,18 @@
 
 -- * Exported types
     Point(..)                               ,
+    newZeroPoint                            ,
     noPoint                                 ,
 
 
  -- * Methods
 -- ** pointCopy
+    PointCopyMethodInfo                     ,
     pointCopy                               ,
 
 
 -- ** pointFree
+    PointFreeMethodInfo                     ,
     pointFree                               ,
 
 
@@ -60,6 +64,10 @@
 instance BoxedObject Point where
     boxedType _ = c_poppler_point_get_type
 
+-- | Construct a `Point` struct initialized to zero.
+newZeroPoint :: MonadIO m => m Point
+newZeroPoint = liftIO $ callocBoxedBytes 16 >>= wrapBoxed Point
+
 noPoint :: Maybe Point
 noPoint = Nothing
 
@@ -79,7 +87,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "Point"
 -- throws : False
 -- Skip return : False
@@ -90,7 +97,7 @@
 
 pointNew ::
     (MonadIO m) =>
-    m Point
+    m Point                                 -- result
 pointNew  = liftIO $ do
     result <- poppler_point_new
     checkUnexpectedReturnNULL "poppler_point_new" result
@@ -99,9 +106,8 @@
 
 -- method Point::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Point"
 -- throws : False
 -- Skip return : False
@@ -113,8 +119,8 @@
 
 pointCopy ::
     (MonadIO m) =>
-    Point ->                                -- _obj
-    m Point
+    Point                                   -- _obj
+    -> m Point                              -- result
 pointCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_point_copy _obj'
@@ -123,11 +129,14 @@
     touchManagedPtr _obj
     return result'
 
+data PointCopyMethodInfo
+instance (signature ~ (m Point), MonadIO m) => MethodInfo PointCopyMethodInfo Point signature where
+    overloadedMethod _ = pointCopy
+
 -- method Point::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Point", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -139,12 +148,29 @@
 
 pointFree ::
     (MonadIO m) =>
-    Point ->                                -- _obj
-    m ()
+    Point                                   -- _obj
+    -> m ()                                 -- result
 pointFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_point_free _obj'
     touchManagedPtr _obj
     return ()
+
+data PointFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo PointFreeMethodInfo Point signature where
+    overloadedMethod _ = pointFree
+
+type family ResolvePointMethod (t :: Symbol) (o :: *) :: * where
+    ResolvePointMethod "copy" o = PointCopyMethodInfo
+    ResolvePointMethod "free" o = PointFreeMethodInfo
+    ResolvePointMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolvePointMethod t Point, MethodInfo info Point p) => IsLabelProxy t (Point -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolvePointMethod t Point, MethodInfo info Point p) => IsLabel t (Point -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/Point.hs-boot b/GI/Poppler/Structs/Point.hs-boot
--- a/GI/Poppler/Structs/Point.hs-boot
+++ b/GI/Poppler/Structs/Point.hs-boot
@@ -9,3 +9,5 @@
 
 newtype Point = Point (ForeignPtr Point)
 instance BoxedObject Point where
+data PointCopyMethodInfo
+data PointFreeMethodInfo
diff --git a/GI/Poppler/Structs/Quadrilateral.hs b/GI/Poppler/Structs/Quadrilateral.hs
--- a/GI/Poppler/Structs/Quadrilateral.hs
+++ b/GI/Poppler/Structs/Quadrilateral.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -15,15 +16,18 @@
 
 -- * Exported types
     Quadrilateral(..)                       ,
+    newZeroQuadrilateral                    ,
     noQuadrilateral                         ,
 
 
  -- * Methods
 -- ** quadrilateralCopy
+    QuadrilateralCopyMethodInfo             ,
     quadrilateralCopy                       ,
 
 
 -- ** quadrilateralFree
+    QuadrilateralFreeMethodInfo             ,
     quadrilateralFree                       ,
 
 
@@ -71,6 +75,10 @@
 instance BoxedObject Quadrilateral where
     boxedType _ = c_poppler_quadrilateral_get_type
 
+-- | Construct a `Quadrilateral` struct initialized to zero.
+newZeroQuadrilateral :: MonadIO m => m Quadrilateral
+newZeroQuadrilateral = liftIO $ callocBoxedBytes 64 >>= wrapBoxed Quadrilateral
+
 noQuadrilateral :: Maybe Quadrilateral
 noQuadrilateral = Nothing
 
@@ -102,7 +110,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "Quadrilateral"
 -- throws : False
 -- Skip return : False
@@ -113,7 +120,7 @@
 
 quadrilateralNew ::
     (MonadIO m) =>
-    m Quadrilateral
+    m Quadrilateral                         -- result
 quadrilateralNew  = liftIO $ do
     result <- poppler_quadrilateral_new
     checkUnexpectedReturnNULL "poppler_quadrilateral_new" result
@@ -122,9 +129,8 @@
 
 -- method Quadrilateral::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Quadrilateral", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Quadrilateral", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Quadrilateral", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Quadrilateral"
 -- throws : False
 -- Skip return : False
@@ -136,8 +142,8 @@
 
 quadrilateralCopy ::
     (MonadIO m) =>
-    Quadrilateral ->                        -- _obj
-    m Quadrilateral
+    Quadrilateral                           -- _obj
+    -> m Quadrilateral                      -- result
 quadrilateralCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_quadrilateral_copy _obj'
@@ -146,11 +152,14 @@
     touchManagedPtr _obj
     return result'
 
+data QuadrilateralCopyMethodInfo
+instance (signature ~ (m Quadrilateral), MonadIO m) => MethodInfo QuadrilateralCopyMethodInfo Quadrilateral signature where
+    overloadedMethod _ = quadrilateralCopy
+
 -- method Quadrilateral::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Quadrilateral", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Quadrilateral", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Quadrilateral", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -162,12 +171,29 @@
 
 quadrilateralFree ::
     (MonadIO m) =>
-    Quadrilateral ->                        -- _obj
-    m ()
+    Quadrilateral                           -- _obj
+    -> m ()                                 -- result
 quadrilateralFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_quadrilateral_free _obj'
     touchManagedPtr _obj
     return ()
+
+data QuadrilateralFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo QuadrilateralFreeMethodInfo Quadrilateral signature where
+    overloadedMethod _ = quadrilateralFree
+
+type family ResolveQuadrilateralMethod (t :: Symbol) (o :: *) :: * where
+    ResolveQuadrilateralMethod "copy" o = QuadrilateralCopyMethodInfo
+    ResolveQuadrilateralMethod "free" o = QuadrilateralFreeMethodInfo
+    ResolveQuadrilateralMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveQuadrilateralMethod t Quadrilateral, MethodInfo info Quadrilateral p) => IsLabelProxy t (Quadrilateral -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveQuadrilateralMethod t Quadrilateral, MethodInfo info Quadrilateral p) => IsLabel t (Quadrilateral -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/Quadrilateral.hs-boot b/GI/Poppler/Structs/Quadrilateral.hs-boot
--- a/GI/Poppler/Structs/Quadrilateral.hs-boot
+++ b/GI/Poppler/Structs/Quadrilateral.hs-boot
@@ -9,3 +9,5 @@
 
 newtype Quadrilateral = Quadrilateral (ForeignPtr Quadrilateral)
 instance BoxedObject Quadrilateral where
+data QuadrilateralCopyMethodInfo
+data QuadrilateralFreeMethodInfo
diff --git a/GI/Poppler/Structs/Rectangle.hs b/GI/Poppler/Structs/Rectangle.hs
--- a/GI/Poppler/Structs/Rectangle.hs
+++ b/GI/Poppler/Structs/Rectangle.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -13,15 +14,18 @@
 
 -- * Exported types
     Rectangle(..)                           ,
+    newZeroRectangle                        ,
     noRectangle                             ,
 
 
  -- * Methods
 -- ** rectangleCopy
+    RectangleCopyMethodInfo                 ,
     rectangleCopy                           ,
 
 
 -- ** rectangleFree
+    RectangleFreeMethodInfo                 ,
     rectangleFree                           ,
 
 
@@ -69,6 +73,10 @@
 instance BoxedObject Rectangle where
     boxedType _ = c_poppler_rectangle_get_type
 
+-- | Construct a `Rectangle` struct initialized to zero.
+newZeroRectangle :: MonadIO m => m Rectangle
+newZeroRectangle = liftIO $ callocBoxedBytes 32 >>= wrapBoxed Rectangle
+
 noRectangle :: Maybe Rectangle
 noRectangle = Nothing
 
@@ -100,7 +108,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "Rectangle"
 -- throws : False
 -- Skip return : False
@@ -111,7 +118,7 @@
 
 rectangleNew ::
     (MonadIO m) =>
-    m Rectangle
+    m Rectangle                             -- result
 rectangleNew  = liftIO $ do
     result <- poppler_rectangle_new
     checkUnexpectedReturnNULL "poppler_rectangle_new" result
@@ -120,9 +127,8 @@
 
 -- method Rectangle::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Rectangle"
 -- throws : False
 -- Skip return : False
@@ -134,8 +140,8 @@
 
 rectangleCopy ::
     (MonadIO m) =>
-    Rectangle ->                            -- _obj
-    m Rectangle
+    Rectangle                               -- _obj
+    -> m Rectangle                          -- result
 rectangleCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_rectangle_copy _obj'
@@ -144,11 +150,14 @@
     touchManagedPtr _obj
     return result'
 
+data RectangleCopyMethodInfo
+instance (signature ~ (m Rectangle), MonadIO m) => MethodInfo RectangleCopyMethodInfo Rectangle signature where
+    overloadedMethod _ = rectangleCopy
+
 -- method Rectangle::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Rectangle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -160,12 +169,29 @@
 
 rectangleFree ::
     (MonadIO m) =>
-    Rectangle ->                            -- _obj
-    m ()
+    Rectangle                               -- _obj
+    -> m ()                                 -- result
 rectangleFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_rectangle_free _obj'
     touchManagedPtr _obj
     return ()
+
+data RectangleFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo RectangleFreeMethodInfo Rectangle signature where
+    overloadedMethod _ = rectangleFree
+
+type family ResolveRectangleMethod (t :: Symbol) (o :: *) :: * where
+    ResolveRectangleMethod "copy" o = RectangleCopyMethodInfo
+    ResolveRectangleMethod "free" o = RectangleFreeMethodInfo
+    ResolveRectangleMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveRectangleMethod t Rectangle, MethodInfo info Rectangle p) => IsLabelProxy t (Rectangle -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveRectangleMethod t Rectangle, MethodInfo info Rectangle p) => IsLabel t (Rectangle -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/Rectangle.hs-boot b/GI/Poppler/Structs/Rectangle.hs-boot
--- a/GI/Poppler/Structs/Rectangle.hs-boot
+++ b/GI/Poppler/Structs/Rectangle.hs-boot
@@ -9,3 +9,5 @@
 
 newtype Rectangle = Rectangle (ForeignPtr Rectangle)
 instance BoxedObject Rectangle where
+data RectangleCopyMethodInfo
+data RectangleFreeMethodInfo
diff --git a/GI/Poppler/Structs/StructureElementIter.hs b/GI/Poppler/Structs/StructureElementIter.hs
--- a/GI/Poppler/Structs/StructureElementIter.hs
+++ b/GI/Poppler/Structs/StructureElementIter.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -15,18 +16,22 @@
 
  -- * Methods
 -- ** structureElementIterCopy
+    StructureElementIterCopyMethodInfo      ,
     structureElementIterCopy                ,
 
 
 -- ** structureElementIterFree
+    StructureElementIterFreeMethodInfo      ,
     structureElementIterFree                ,
 
 
 -- ** structureElementIterGetChild
+    StructureElementIterGetChildMethodInfo  ,
     structureElementIterGetChild            ,
 
 
 -- ** structureElementIterGetElement
+    StructureElementIterGetElementMethodInfo,
     structureElementIterGetElement          ,
 
 
@@ -35,6 +40,7 @@
 
 
 -- ** structureElementIterNext
+    StructureElementIterNextMethodInfo      ,
     structureElementIterNext                ,
 
 
@@ -64,9 +70,8 @@
 
 -- method StructureElementIter::new
 -- method type : Constructor
--- Args : [Arg {argName = "poppler_document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "poppler_document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "poppler_document", argType = TInterface "Poppler" "Document", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureElementIter"
 -- throws : False
 -- Skip return : False
@@ -78,21 +83,20 @@
 
 structureElementIterNew ::
     (MonadIO m, DocumentK a) =>
-    a ->                                    -- poppler_document
-    m StructureElementIter
-structureElementIterNew poppler_document = liftIO $ do
-    let poppler_document' = unsafeManagedPtrCastPtr poppler_document
-    result <- poppler_structure_element_iter_new poppler_document'
+    a                                       -- popplerDocument
+    -> m StructureElementIter               -- result
+structureElementIterNew popplerDocument = liftIO $ do
+    let popplerDocument' = unsafeManagedPtrCastPtr popplerDocument
+    result <- poppler_structure_element_iter_new popplerDocument'
     checkUnexpectedReturnNULL "poppler_structure_element_iter_new" result
     result' <- (wrapBoxed StructureElementIter) result
-    touchManagedPtr poppler_document
+    touchManagedPtr popplerDocument
     return result'
 
 -- method StructureElementIter::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureElementIter"
 -- throws : False
 -- Skip return : False
@@ -104,8 +108,8 @@
 
 structureElementIterCopy ::
     (MonadIO m) =>
-    StructureElementIter ->                 -- _obj
-    m StructureElementIter
+    StructureElementIter                    -- _obj
+    -> m StructureElementIter               -- result
 structureElementIterCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_structure_element_iter_copy _obj'
@@ -114,11 +118,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementIterCopyMethodInfo
+instance (signature ~ (m StructureElementIter), MonadIO m) => MethodInfo StructureElementIterCopyMethodInfo StructureElementIter signature where
+    overloadedMethod _ = structureElementIterCopy
+
 -- method StructureElementIter::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -130,19 +137,22 @@
 
 structureElementIterFree ::
     (MonadIO m) =>
-    StructureElementIter ->                 -- _obj
-    m ()
+    StructureElementIter                    -- _obj
+    -> m ()                                 -- result
 structureElementIterFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_structure_element_iter_free _obj'
     touchManagedPtr _obj
     return ()
 
+data StructureElementIterFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo StructureElementIterFreeMethodInfo StructureElementIter signature where
+    overloadedMethod _ = structureElementIterFree
+
 -- method StructureElementIter::get_child
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureElementIter"
 -- throws : False
 -- Skip return : False
@@ -154,8 +164,8 @@
 
 structureElementIterGetChild ::
     (MonadIO m) =>
-    StructureElementIter ->                 -- _obj
-    m StructureElementIter
+    StructureElementIter                    -- _obj
+    -> m StructureElementIter               -- result
 structureElementIterGetChild _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_structure_element_iter_get_child _obj'
@@ -164,11 +174,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementIterGetChildMethodInfo
+instance (signature ~ (m StructureElementIter), MonadIO m) => MethodInfo StructureElementIterGetChildMethodInfo StructureElementIter signature where
+    overloadedMethod _ = structureElementIterGetChild
+
 -- method StructureElementIter::get_element
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "StructureElement"
 -- throws : False
 -- Skip return : False
@@ -180,8 +193,8 @@
 
 structureElementIterGetElement ::
     (MonadIO m) =>
-    StructureElementIter ->                 -- _obj
-    m StructureElement
+    StructureElementIter                    -- _obj
+    -> m StructureElement                   -- result
 structureElementIterGetElement _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_structure_element_iter_get_element _obj'
@@ -190,11 +203,14 @@
     touchManagedPtr _obj
     return result'
 
+data StructureElementIterGetElementMethodInfo
+instance (signature ~ (m StructureElement), MonadIO m) => MethodInfo StructureElementIterGetElementMethodInfo StructureElementIter signature where
+    overloadedMethod _ = structureElementIterGetElement
+
 -- method StructureElementIter::next
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "StructureElementIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -206,13 +222,33 @@
 
 structureElementIterNext ::
     (MonadIO m) =>
-    StructureElementIter ->                 -- _obj
-    m Bool
+    StructureElementIter                    -- _obj
+    -> m Bool                               -- result
 structureElementIterNext _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_structure_element_iter_next _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data StructureElementIterNextMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo StructureElementIterNextMethodInfo StructureElementIter signature where
+    overloadedMethod _ = structureElementIterNext
+
+type family ResolveStructureElementIterMethod (t :: Symbol) (o :: *) :: * where
+    ResolveStructureElementIterMethod "copy" o = StructureElementIterCopyMethodInfo
+    ResolveStructureElementIterMethod "free" o = StructureElementIterFreeMethodInfo
+    ResolveStructureElementIterMethod "next" o = StructureElementIterNextMethodInfo
+    ResolveStructureElementIterMethod "getChild" o = StructureElementIterGetChildMethodInfo
+    ResolveStructureElementIterMethod "getElement" o = StructureElementIterGetElementMethodInfo
+    ResolveStructureElementIterMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveStructureElementIterMethod t StructureElementIter, MethodInfo info StructureElementIter p) => IsLabelProxy t (StructureElementIter -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveStructureElementIterMethod t StructureElementIter, MethodInfo info StructureElementIter p) => IsLabel t (StructureElementIter -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/StructureElementIter.hs-boot b/GI/Poppler/Structs/StructureElementIter.hs-boot
--- a/GI/Poppler/Structs/StructureElementIter.hs-boot
+++ b/GI/Poppler/Structs/StructureElementIter.hs-boot
@@ -9,3 +9,8 @@
 
 newtype StructureElementIter = StructureElementIter (ForeignPtr StructureElementIter)
 instance BoxedObject StructureElementIter where
+data StructureElementIterCopyMethodInfo
+data StructureElementIterFreeMethodInfo
+data StructureElementIterGetChildMethodInfo
+data StructureElementIterGetElementMethodInfo
+data StructureElementIterNextMethodInfo
diff --git a/GI/Poppler/Structs/TextAttributes.hs b/GI/Poppler/Structs/TextAttributes.hs
--- a/GI/Poppler/Structs/TextAttributes.hs
+++ b/GI/Poppler/Structs/TextAttributes.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -12,15 +13,18 @@
 
 -- * Exported types
     TextAttributes(..)                      ,
+    newZeroTextAttributes                   ,
     noTextAttributes                        ,
 
 
  -- * Methods
 -- ** textAttributesCopy
+    TextAttributesCopyMethodInfo            ,
     textAttributesCopy                      ,
 
 
 -- ** textAttributesFree
+    TextAttributesFreeMethodInfo            ,
     textAttributesFree                      ,
 
 
@@ -76,6 +80,10 @@
 instance BoxedObject TextAttributes where
     boxedType _ = c_poppler_text_attributes_get_type
 
+-- | Construct a `TextAttributes` struct initialized to zero.
+newZeroTextAttributes :: MonadIO m => m TextAttributes
+newZeroTextAttributes = liftIO $ callocBoxedBytes 40 >>= wrapBoxed TextAttributes
+
 noTextAttributes :: Maybe TextAttributes
 noTextAttributes = Nothing
 
@@ -117,7 +125,6 @@
 -- method type : Constructor
 -- Args : []
 -- Lengths : []
--- hInArgs : []
 -- returnType : TInterface "Poppler" "TextAttributes"
 -- throws : False
 -- Skip return : False
@@ -128,7 +135,7 @@
 
 textAttributesNew ::
     (MonadIO m) =>
-    m TextAttributes
+    m TextAttributes                        -- result
 textAttributesNew  = liftIO $ do
     result <- poppler_text_attributes_new
     checkUnexpectedReturnNULL "poppler_text_attributes_new" result
@@ -137,9 +144,8 @@
 
 -- method TextAttributes::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextAttributes", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextAttributes", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextAttributes", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "TextAttributes"
 -- throws : False
 -- Skip return : False
@@ -151,8 +157,8 @@
 
 textAttributesCopy ::
     (MonadIO m) =>
-    TextAttributes ->                       -- _obj
-    m TextAttributes
+    TextAttributes                          -- _obj
+    -> m TextAttributes                     -- result
 textAttributesCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_attributes_copy _obj'
@@ -161,11 +167,14 @@
     touchManagedPtr _obj
     return result'
 
+data TextAttributesCopyMethodInfo
+instance (signature ~ (m TextAttributes), MonadIO m) => MethodInfo TextAttributesCopyMethodInfo TextAttributes signature where
+    overloadedMethod _ = textAttributesCopy
+
 -- method TextAttributes::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextAttributes", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextAttributes", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextAttributes", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -177,12 +186,29 @@
 
 textAttributesFree ::
     (MonadIO m) =>
-    TextAttributes ->                       -- _obj
-    m ()
+    TextAttributes                          -- _obj
+    -> m ()                                 -- result
 textAttributesFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_text_attributes_free _obj'
     touchManagedPtr _obj
     return ()
+
+data TextAttributesFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo TextAttributesFreeMethodInfo TextAttributes signature where
+    overloadedMethod _ = textAttributesFree
+
+type family ResolveTextAttributesMethod (t :: Symbol) (o :: *) :: * where
+    ResolveTextAttributesMethod "copy" o = TextAttributesCopyMethodInfo
+    ResolveTextAttributesMethod "free" o = TextAttributesFreeMethodInfo
+    ResolveTextAttributesMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveTextAttributesMethod t TextAttributes, MethodInfo info TextAttributes p) => IsLabelProxy t (TextAttributes -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveTextAttributesMethod t TextAttributes, MethodInfo info TextAttributes p) => IsLabel t (TextAttributes -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/TextAttributes.hs-boot b/GI/Poppler/Structs/TextAttributes.hs-boot
--- a/GI/Poppler/Structs/TextAttributes.hs-boot
+++ b/GI/Poppler/Structs/TextAttributes.hs-boot
@@ -9,3 +9,5 @@
 
 newtype TextAttributes = TextAttributes (ForeignPtr TextAttributes)
 instance BoxedObject TextAttributes where
+data TextAttributesCopyMethodInfo
+data TextAttributesFreeMethodInfo
diff --git a/GI/Poppler/Structs/TextSpan.hs b/GI/Poppler/Structs/TextSpan.hs
--- a/GI/Poppler/Structs/TextSpan.hs
+++ b/GI/Poppler/Structs/TextSpan.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -15,34 +16,42 @@
 
  -- * Methods
 -- ** textSpanCopy
+    TextSpanCopyMethodInfo                  ,
     textSpanCopy                            ,
 
 
 -- ** textSpanFree
+    TextSpanFreeMethodInfo                  ,
     textSpanFree                            ,
 
 
 -- ** textSpanGetColor
+    TextSpanGetColorMethodInfo              ,
     textSpanGetColor                        ,
 
 
 -- ** textSpanGetFontName
+    TextSpanGetFontNameMethodInfo           ,
     textSpanGetFontName                     ,
 
 
 -- ** textSpanGetText
+    TextSpanGetTextMethodInfo               ,
     textSpanGetText                         ,
 
 
 -- ** textSpanIsBoldFont
+    TextSpanIsBoldFontMethodInfo            ,
     textSpanIsBoldFont                      ,
 
 
 -- ** textSpanIsFixedWidthFont
+    TextSpanIsFixedWidthFontMethodInfo      ,
     textSpanIsFixedWidthFont                ,
 
 
 -- ** textSpanIsSerifFont
+    TextSpanIsSerifFontMethodInfo           ,
     textSpanIsSerifFont                     ,
 
 
@@ -72,9 +81,8 @@
 
 -- method TextSpan::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "TextSpan"
 -- throws : False
 -- Skip return : False
@@ -86,8 +94,8 @@
 
 textSpanCopy ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m TextSpan
+    TextSpan                                -- _obj
+    -> m TextSpan                           -- result
 textSpanCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_span_copy _obj'
@@ -96,11 +104,14 @@
     touchManagedPtr _obj
     return result'
 
+data TextSpanCopyMethodInfo
+instance (signature ~ (m TextSpan), MonadIO m) => MethodInfo TextSpanCopyMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanCopy
+
 -- method TextSpan::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -112,19 +123,22 @@
 
 textSpanFree ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m ()
+    TextSpan                                -- _obj
+    -> m ()                                 -- result
 textSpanFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_text_span_free _obj'
     touchManagedPtr _obj
     return ()
 
+data TextSpanFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo TextSpanFreeMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanFree
+
 -- method TextSpan::get_color
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "color", argType = TInterface "Poppler" "Color", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -137,8 +151,8 @@
 
 textSpanGetColor ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m (Color)
+    TextSpan                                -- _obj
+    -> m (Color)                            -- result
 textSpanGetColor _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     color <- callocBoxedBytes 6 :: IO (Ptr Color)
@@ -147,11 +161,14 @@
     touchManagedPtr _obj
     return color'
 
+data TextSpanGetColorMethodInfo
+instance (signature ~ (m (Color)), MonadIO m) => MethodInfo TextSpanGetColorMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanGetColor
+
 -- method TextSpan::get_font_name
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -163,8 +180,8 @@
 
 textSpanGetFontName ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m T.Text
+    TextSpan                                -- _obj
+    -> m T.Text                             -- result
 textSpanGetFontName _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_span_get_font_name _obj'
@@ -173,11 +190,14 @@
     touchManagedPtr _obj
     return result'
 
+data TextSpanGetFontNameMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo TextSpanGetFontNameMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanGetFontName
+
 -- method TextSpan::get_text
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TUTF8
 -- throws : False
 -- Skip return : False
@@ -189,8 +209,8 @@
 
 textSpanGetText ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m T.Text
+    TextSpan                                -- _obj
+    -> m T.Text                             -- result
 textSpanGetText _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_span_get_text _obj'
@@ -199,11 +219,14 @@
     touchManagedPtr _obj
     return result'
 
+data TextSpanGetTextMethodInfo
+instance (signature ~ (m T.Text), MonadIO m) => MethodInfo TextSpanGetTextMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanGetText
+
 -- method TextSpan::is_bold_font
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -215,8 +238,8 @@
 
 textSpanIsBoldFont ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m Bool
+    TextSpan                                -- _obj
+    -> m Bool                               -- result
 textSpanIsBoldFont _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_span_is_bold_font _obj'
@@ -224,11 +247,14 @@
     touchManagedPtr _obj
     return result'
 
+data TextSpanIsBoldFontMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo TextSpanIsBoldFontMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanIsBoldFont
+
 -- method TextSpan::is_fixed_width_font
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -240,8 +266,8 @@
 
 textSpanIsFixedWidthFont ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m Bool
+    TextSpan                                -- _obj
+    -> m Bool                               -- result
 textSpanIsFixedWidthFont _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_span_is_fixed_width_font _obj'
@@ -249,11 +275,14 @@
     touchManagedPtr _obj
     return result'
 
+data TextSpanIsFixedWidthFontMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo TextSpanIsFixedWidthFontMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanIsFixedWidthFont
+
 -- method TextSpan::is_serif_font
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "TextSpan", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TBoolean
 -- throws : False
 -- Skip return : False
@@ -265,13 +294,36 @@
 
 textSpanIsSerifFont ::
     (MonadIO m) =>
-    TextSpan ->                             -- _obj
-    m Bool
+    TextSpan                                -- _obj
+    -> m Bool                               -- result
 textSpanIsSerifFont _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_text_span_is_serif_font _obj'
     let result' = (/= 0) result
     touchManagedPtr _obj
     return result'
+
+data TextSpanIsSerifFontMethodInfo
+instance (signature ~ (m Bool), MonadIO m) => MethodInfo TextSpanIsSerifFontMethodInfo TextSpan signature where
+    overloadedMethod _ = textSpanIsSerifFont
+
+type family ResolveTextSpanMethod (t :: Symbol) (o :: *) :: * where
+    ResolveTextSpanMethod "copy" o = TextSpanCopyMethodInfo
+    ResolveTextSpanMethod "free" o = TextSpanFreeMethodInfo
+    ResolveTextSpanMethod "isBoldFont" o = TextSpanIsBoldFontMethodInfo
+    ResolveTextSpanMethod "isFixedWidthFont" o = TextSpanIsFixedWidthFontMethodInfo
+    ResolveTextSpanMethod "isSerifFont" o = TextSpanIsSerifFontMethodInfo
+    ResolveTextSpanMethod "getColor" o = TextSpanGetColorMethodInfo
+    ResolveTextSpanMethod "getFontName" o = TextSpanGetFontNameMethodInfo
+    ResolveTextSpanMethod "getText" o = TextSpanGetTextMethodInfo
+    ResolveTextSpanMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveTextSpanMethod t TextSpan, MethodInfo info TextSpan p) => IsLabelProxy t (TextSpan -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveTextSpanMethod t TextSpan, MethodInfo info TextSpan p) => IsLabel t (TextSpan -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Structs/TextSpan.hs-boot b/GI/Poppler/Structs/TextSpan.hs-boot
--- a/GI/Poppler/Structs/TextSpan.hs-boot
+++ b/GI/Poppler/Structs/TextSpan.hs-boot
@@ -9,3 +9,11 @@
 
 newtype TextSpan = TextSpan (ForeignPtr TextSpan)
 instance BoxedObject TextSpan where
+data TextSpanCopyMethodInfo
+data TextSpanFreeMethodInfo
+data TextSpanGetColorMethodInfo
+data TextSpanGetFontNameMethodInfo
+data TextSpanGetTextMethodInfo
+data TextSpanIsBoldFontMethodInfo
+data TextSpanIsFixedWidthFontMethodInfo
+data TextSpanIsSerifFontMethodInfo
diff --git a/GI/Poppler/Unions.hs b/GI/Poppler/Unions.hs
--- a/GI/Poppler/Unions.hs
+++ b/GI/Poppler/Unions.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
diff --git a/GI/Poppler/Unions/Action.hs b/GI/Poppler/Unions/Action.hs
--- a/GI/Poppler/Unions/Action.hs
+++ b/GI/Poppler/Unions/Action.hs
@@ -1,4 +1,5 @@
 
+
 {- |
 Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
 License    : LGPL-2.1
@@ -10,15 +11,18 @@
 
 -- * Exported types
     Action(..)                              ,
+    newZeroAction                           ,
     noAction                                ,
 
 
  -- * Methods
 -- ** actionCopy
+    ActionCopyMethodInfo                    ,
     actionCopy                              ,
 
 
 -- ** actionFree
+    ActionFreeMethodInfo                    ,
     actionFree                              ,
 
 
@@ -90,6 +94,10 @@
 instance BoxedObject Action where
     boxedType _ = c_poppler_action_get_type
 
+-- | Construct a `Action` struct initialized to zero.
+newZeroAction :: MonadIO m => m Action
+newZeroAction = liftIO $ callocBoxedBytes 32 >>= wrapBoxed Action
+
 noAction :: Maybe Action
 noAction = Nothing
 
@@ -161,9 +169,8 @@
 
 -- method Action::copy
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TInterface "Poppler" "Action"
 -- throws : False
 -- Skip return : False
@@ -175,8 +182,8 @@
 
 actionCopy ::
     (MonadIO m) =>
-    Action ->                               -- _obj
-    m Action
+    Action                                  -- _obj
+    -> m Action                             -- result
 actionCopy _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     result <- poppler_action_copy _obj'
@@ -185,11 +192,14 @@
     touchManagedPtr _obj
     return result'
 
+data ActionCopyMethodInfo
+instance (signature ~ (m Action), MonadIO m) => MethodInfo ActionCopyMethodInfo Action signature where
+    overloadedMethod _ = actionCopy
+
 -- method Action::free
 -- method type : OrdinaryMethod
--- Args : [Arg {argName = "_obj", argType = TInterface "Poppler" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Args : [Arg {argCName = "_obj", argType = TInterface "Poppler" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
 -- Lengths : []
--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Poppler" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
 -- returnType : TBasicType TVoid
 -- throws : False
 -- Skip return : False
@@ -201,12 +211,29 @@
 
 actionFree ::
     (MonadIO m) =>
-    Action ->                               -- _obj
-    m ()
+    Action                                  -- _obj
+    -> m ()                                 -- result
 actionFree _obj = liftIO $ do
     let _obj' = unsafeManagedPtrGetPtr _obj
     poppler_action_free _obj'
     touchManagedPtr _obj
     return ()
+
+data ActionFreeMethodInfo
+instance (signature ~ (m ()), MonadIO m) => MethodInfo ActionFreeMethodInfo Action signature where
+    overloadedMethod _ = actionFree
+
+type family ResolveActionMethod (t :: Symbol) (o :: *) :: * where
+    ResolveActionMethod "copy" o = ActionCopyMethodInfo
+    ResolveActionMethod "free" o = ActionFreeMethodInfo
+    ResolveActionMethod l o = MethodResolutionFailed l o
+
+instance (info ~ ResolveActionMethod t Action, MethodInfo info Action p) => IsLabelProxy t (Action -> p) where
+    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
+
+#if MIN_VERSION_base(4,9,0)
+instance (info ~ ResolveActionMethod t Action, MethodInfo info Action p) => IsLabel t (Action -> p) where
+    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
+#endif
 
 
diff --git a/GI/Poppler/Unions/Action.hs-boot b/GI/Poppler/Unions/Action.hs-boot
--- a/GI/Poppler/Unions/Action.hs-boot
+++ b/GI/Poppler/Unions/Action.hs-boot
@@ -9,3 +9,5 @@
 
 newtype Action = Action (ForeignPtr Action)
 instance BoxedObject Action where
+data ActionCopyMethodInfo
+data ActionFreeMethodInfo
diff --git a/gi-poppler.cabal b/gi-poppler.cabal
--- a/gi-poppler.cabal
+++ b/gi-poppler.cabal
@@ -1,6 +1,6 @@
 -- Autogenerated, do not edit.
 name:               gi-poppler
-version:            0.0.34.12
+version:            0.0.34.13
 synopsis:           Poppler bindings
 description:        Bindings for Poppler, autogenerated by haskell-gi.
 homepage:           https://github.com/haskell-gi/haskell-gi
@@ -14,8 +14,8 @@
 
 library
     default-language:   Haskell2010
-    default-extensions: OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts
-    other-extensions:   PatternSynonyms ScopedTypeVariables, ViewPatterns
+    default-extensions: ScopedTypeVariables, CPP, OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts
+    other-extensions:   PatternSynonyms ViewPatterns
     ghc-options:        -fno-warn-unused-imports -fno-warn-warnings-deprecations
     exposed-modules:    GI.Poppler.Types
                         GI.Poppler
@@ -79,11 +79,11 @@
                         GI.Poppler.Unions.Action
     pkgconfig-depends:  poppler-glib >= 0.34
     build-depends: base >= 4.7 && <5,
-        haskell-gi-base >= 0.12 && < 1,
-        gi-glib >= 0.2.46.12 && < 0.2.47,
-        gi-gobject >= 0.2.46.12 && < 0.2.47,
-        gi-gio >= 0.2.46.12 && < 0.2.47,
-        gi-cairo >= 0.1.14.12 && < 0.1.15,
+        haskell-gi-base >= 0.13 && < 1,
+        gi-glib >= 0.2.46.13 && < 0.2.47,
+        gi-gobject >= 0.2.46.13 && < 0.2.47,
+        gi-gio >= 0.2.46.13 && < 0.2.47,
+        gi-cairo >= 0.1.14.13 && < 0.1.15,
         bytestring >= 0.10,
         containers >= 0.5,
         text >= 1.0,
