#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.Pango.Structs.GlyphItemIter
(
GlyphItemIter(..) ,
newZeroGlyphItemIter ,
noGlyphItemIter ,
#if ENABLE_OVERLOADING
GlyphItemIterCopyMethodInfo ,
#endif
glyphItemIterCopy ,
#if ENABLE_OVERLOADING
GlyphItemIterFreeMethodInfo ,
#endif
glyphItemIterFree ,
#if ENABLE_OVERLOADING
GlyphItemIterInitEndMethodInfo ,
#endif
glyphItemIterInitEnd ,
#if ENABLE_OVERLOADING
GlyphItemIterInitStartMethodInfo ,
#endif
glyphItemIterInitStart ,
#if ENABLE_OVERLOADING
GlyphItemIterNextClusterMethodInfo ,
#endif
glyphItemIterNextCluster ,
#if ENABLE_OVERLOADING
GlyphItemIterPrevClusterMethodInfo ,
#endif
glyphItemIterPrevCluster ,
getGlyphItemIterEndChar ,
#if ENABLE_OVERLOADING
glyphItemIter_endChar ,
#endif
setGlyphItemIterEndChar ,
getGlyphItemIterEndGlyph ,
#if ENABLE_OVERLOADING
glyphItemIter_endGlyph ,
#endif
setGlyphItemIterEndGlyph ,
getGlyphItemIterEndIndex ,
#if ENABLE_OVERLOADING
glyphItemIter_endIndex ,
#endif
setGlyphItemIterEndIndex ,
clearGlyphItemIterGlyphItem ,
getGlyphItemIterGlyphItem ,
#if ENABLE_OVERLOADING
glyphItemIter_glyphItem ,
#endif
setGlyphItemIterGlyphItem ,
getGlyphItemIterStartChar ,
#if ENABLE_OVERLOADING
glyphItemIter_startChar ,
#endif
setGlyphItemIterStartChar ,
getGlyphItemIterStartGlyph ,
#if ENABLE_OVERLOADING
glyphItemIter_startGlyph ,
#endif
setGlyphItemIterStartGlyph ,
getGlyphItemIterStartIndex ,
#if ENABLE_OVERLOADING
glyphItemIter_startIndex ,
#endif
setGlyphItemIterStartIndex ,
clearGlyphItemIterText ,
getGlyphItemIterText ,
#if ENABLE_OVERLOADING
glyphItemIter_text ,
#endif
setGlyphItemIterText ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import {-# SOURCE #-} qualified GI.Pango.Structs.GlyphItem as Pango.GlyphItem
newtype GlyphItemIter = GlyphItemIter (ManagedPtr GlyphItemIter)
foreign import ccall "pango_glyph_item_iter_get_type" c_pango_glyph_item_iter_get_type ::
IO GType
instance BoxedObject GlyphItemIter where
boxedType _ = c_pango_glyph_item_iter_get_type
newZeroGlyphItemIter :: MonadIO m => m GlyphItemIter
newZeroGlyphItemIter = liftIO $ callocBoxedBytes 40 >>= wrapBoxed GlyphItemIter
instance tag ~ 'AttrSet => Constructible GlyphItemIter tag where
new _ attrs = do
o <- newZeroGlyphItemIter
GI.Attributes.set o attrs
return o
noGlyphItemIter :: Maybe GlyphItemIter
noGlyphItemIter = Nothing
getGlyphItemIterGlyphItem :: MonadIO m => GlyphItemIter -> m (Maybe Pango.GlyphItem.GlyphItem)
getGlyphItemIterGlyphItem s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO (Ptr Pango.GlyphItem.GlyphItem)
result <- SP.convertIfNonNull val $ \val' -> do
val'' <- (newBoxed Pango.GlyphItem.GlyphItem) val'
return val''
return result
setGlyphItemIterGlyphItem :: MonadIO m => GlyphItemIter -> Ptr Pango.GlyphItem.GlyphItem -> m ()
setGlyphItemIterGlyphItem s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 0) (val :: Ptr Pango.GlyphItem.GlyphItem)
clearGlyphItemIterGlyphItem :: MonadIO m => GlyphItemIter -> m ()
clearGlyphItemIterGlyphItem s = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 0) (FP.nullPtr :: Ptr Pango.GlyphItem.GlyphItem)
#if ENABLE_OVERLOADING
data GlyphItemIterGlyphItemFieldInfo
instance AttrInfo GlyphItemIterGlyphItemFieldInfo where
type AttrAllowedOps GlyphItemIterGlyphItemFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint GlyphItemIterGlyphItemFieldInfo = (~) (Ptr Pango.GlyphItem.GlyphItem)
type AttrBaseTypeConstraint GlyphItemIterGlyphItemFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterGlyphItemFieldInfo = Maybe Pango.GlyphItem.GlyphItem
type AttrLabel GlyphItemIterGlyphItemFieldInfo = "glyph_item"
type AttrOrigin GlyphItemIterGlyphItemFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterGlyphItem
attrSet _ = setGlyphItemIterGlyphItem
attrConstruct = undefined
attrClear _ = clearGlyphItemIterGlyphItem
glyphItemIter_glyphItem :: AttrLabelProxy "glyphItem"
glyphItemIter_glyphItem = AttrLabelProxy
#endif
getGlyphItemIterText :: MonadIO m => GlyphItemIter -> m (Maybe T.Text)
getGlyphItemIterText s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 8) :: IO CString
result <- SP.convertIfNonNull val $ \val' -> do
val'' <- cstringToText val'
return val''
return result
setGlyphItemIterText :: MonadIO m => GlyphItemIter -> CString -> m ()
setGlyphItemIterText s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (val :: CString)
clearGlyphItemIterText :: MonadIO m => GlyphItemIter -> m ()
clearGlyphItemIterText s = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (FP.nullPtr :: CString)
#if ENABLE_OVERLOADING
data GlyphItemIterTextFieldInfo
instance AttrInfo GlyphItemIterTextFieldInfo where
type AttrAllowedOps GlyphItemIterTextFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint GlyphItemIterTextFieldInfo = (~) CString
type AttrBaseTypeConstraint GlyphItemIterTextFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterTextFieldInfo = Maybe T.Text
type AttrLabel GlyphItemIterTextFieldInfo = "text"
type AttrOrigin GlyphItemIterTextFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterText
attrSet _ = setGlyphItemIterText
attrConstruct = undefined
attrClear _ = clearGlyphItemIterText
glyphItemIter_text :: AttrLabelProxy "text"
glyphItemIter_text = AttrLabelProxy
#endif
getGlyphItemIterStartGlyph :: MonadIO m => GlyphItemIter -> m Int32
getGlyphItemIterStartGlyph s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 16) :: IO Int32
return val
setGlyphItemIterStartGlyph :: MonadIO m => GlyphItemIter -> Int32 -> m ()
setGlyphItemIterStartGlyph s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 16) (val :: Int32)
#if ENABLE_OVERLOADING
data GlyphItemIterStartGlyphFieldInfo
instance AttrInfo GlyphItemIterStartGlyphFieldInfo where
type AttrAllowedOps GlyphItemIterStartGlyphFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GlyphItemIterStartGlyphFieldInfo = (~) Int32
type AttrBaseTypeConstraint GlyphItemIterStartGlyphFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterStartGlyphFieldInfo = Int32
type AttrLabel GlyphItemIterStartGlyphFieldInfo = "start_glyph"
type AttrOrigin GlyphItemIterStartGlyphFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterStartGlyph
attrSet _ = setGlyphItemIterStartGlyph
attrConstruct = undefined
attrClear _ = undefined
glyphItemIter_startGlyph :: AttrLabelProxy "startGlyph"
glyphItemIter_startGlyph = AttrLabelProxy
#endif
getGlyphItemIterStartIndex :: MonadIO m => GlyphItemIter -> m Int32
getGlyphItemIterStartIndex s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 20) :: IO Int32
return val
setGlyphItemIterStartIndex :: MonadIO m => GlyphItemIter -> Int32 -> m ()
setGlyphItemIterStartIndex s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 20) (val :: Int32)
#if ENABLE_OVERLOADING
data GlyphItemIterStartIndexFieldInfo
instance AttrInfo GlyphItemIterStartIndexFieldInfo where
type AttrAllowedOps GlyphItemIterStartIndexFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GlyphItemIterStartIndexFieldInfo = (~) Int32
type AttrBaseTypeConstraint GlyphItemIterStartIndexFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterStartIndexFieldInfo = Int32
type AttrLabel GlyphItemIterStartIndexFieldInfo = "start_index"
type AttrOrigin GlyphItemIterStartIndexFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterStartIndex
attrSet _ = setGlyphItemIterStartIndex
attrConstruct = undefined
attrClear _ = undefined
glyphItemIter_startIndex :: AttrLabelProxy "startIndex"
glyphItemIter_startIndex = AttrLabelProxy
#endif
getGlyphItemIterStartChar :: MonadIO m => GlyphItemIter -> m Int32
getGlyphItemIterStartChar s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 24) :: IO Int32
return val
setGlyphItemIterStartChar :: MonadIO m => GlyphItemIter -> Int32 -> m ()
setGlyphItemIterStartChar s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 24) (val :: Int32)
#if ENABLE_OVERLOADING
data GlyphItemIterStartCharFieldInfo
instance AttrInfo GlyphItemIterStartCharFieldInfo where
type AttrAllowedOps GlyphItemIterStartCharFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GlyphItemIterStartCharFieldInfo = (~) Int32
type AttrBaseTypeConstraint GlyphItemIterStartCharFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterStartCharFieldInfo = Int32
type AttrLabel GlyphItemIterStartCharFieldInfo = "start_char"
type AttrOrigin GlyphItemIterStartCharFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterStartChar
attrSet _ = setGlyphItemIterStartChar
attrConstruct = undefined
attrClear _ = undefined
glyphItemIter_startChar :: AttrLabelProxy "startChar"
glyphItemIter_startChar = AttrLabelProxy
#endif
getGlyphItemIterEndGlyph :: MonadIO m => GlyphItemIter -> m Int32
getGlyphItemIterEndGlyph s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 28) :: IO Int32
return val
setGlyphItemIterEndGlyph :: MonadIO m => GlyphItemIter -> Int32 -> m ()
setGlyphItemIterEndGlyph s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 28) (val :: Int32)
#if ENABLE_OVERLOADING
data GlyphItemIterEndGlyphFieldInfo
instance AttrInfo GlyphItemIterEndGlyphFieldInfo where
type AttrAllowedOps GlyphItemIterEndGlyphFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GlyphItemIterEndGlyphFieldInfo = (~) Int32
type AttrBaseTypeConstraint GlyphItemIterEndGlyphFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterEndGlyphFieldInfo = Int32
type AttrLabel GlyphItemIterEndGlyphFieldInfo = "end_glyph"
type AttrOrigin GlyphItemIterEndGlyphFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterEndGlyph
attrSet _ = setGlyphItemIterEndGlyph
attrConstruct = undefined
attrClear _ = undefined
glyphItemIter_endGlyph :: AttrLabelProxy "endGlyph"
glyphItemIter_endGlyph = AttrLabelProxy
#endif
getGlyphItemIterEndIndex :: MonadIO m => GlyphItemIter -> m Int32
getGlyphItemIterEndIndex s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 32) :: IO Int32
return val
setGlyphItemIterEndIndex :: MonadIO m => GlyphItemIter -> Int32 -> m ()
setGlyphItemIterEndIndex s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 32) (val :: Int32)
#if ENABLE_OVERLOADING
data GlyphItemIterEndIndexFieldInfo
instance AttrInfo GlyphItemIterEndIndexFieldInfo where
type AttrAllowedOps GlyphItemIterEndIndexFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GlyphItemIterEndIndexFieldInfo = (~) Int32
type AttrBaseTypeConstraint GlyphItemIterEndIndexFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterEndIndexFieldInfo = Int32
type AttrLabel GlyphItemIterEndIndexFieldInfo = "end_index"
type AttrOrigin GlyphItemIterEndIndexFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterEndIndex
attrSet _ = setGlyphItemIterEndIndex
attrConstruct = undefined
attrClear _ = undefined
glyphItemIter_endIndex :: AttrLabelProxy "endIndex"
glyphItemIter_endIndex = AttrLabelProxy
#endif
getGlyphItemIterEndChar :: MonadIO m => GlyphItemIter -> m Int32
getGlyphItemIterEndChar s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 36) :: IO Int32
return val
setGlyphItemIterEndChar :: MonadIO m => GlyphItemIter -> Int32 -> m ()
setGlyphItemIterEndChar s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 36) (val :: Int32)
#if ENABLE_OVERLOADING
data GlyphItemIterEndCharFieldInfo
instance AttrInfo GlyphItemIterEndCharFieldInfo where
type AttrAllowedOps GlyphItemIterEndCharFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint GlyphItemIterEndCharFieldInfo = (~) Int32
type AttrBaseTypeConstraint GlyphItemIterEndCharFieldInfo = (~) GlyphItemIter
type AttrGetType GlyphItemIterEndCharFieldInfo = Int32
type AttrLabel GlyphItemIterEndCharFieldInfo = "end_char"
type AttrOrigin GlyphItemIterEndCharFieldInfo = GlyphItemIter
attrGet _ = getGlyphItemIterEndChar
attrSet _ = setGlyphItemIterEndChar
attrConstruct = undefined
attrClear _ = undefined
glyphItemIter_endChar :: AttrLabelProxy "endChar"
glyphItemIter_endChar = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList GlyphItemIter
type instance O.AttributeList GlyphItemIter = GlyphItemIterAttributeList
type GlyphItemIterAttributeList = ('[ '("glyphItem", GlyphItemIterGlyphItemFieldInfo), '("text", GlyphItemIterTextFieldInfo), '("startGlyph", GlyphItemIterStartGlyphFieldInfo), '("startIndex", GlyphItemIterStartIndexFieldInfo), '("startChar", GlyphItemIterStartCharFieldInfo), '("endGlyph", GlyphItemIterEndGlyphFieldInfo), '("endIndex", GlyphItemIterEndIndexFieldInfo), '("endChar", GlyphItemIterEndCharFieldInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "pango_glyph_item_iter_copy" pango_glyph_item_iter_copy ::
Ptr GlyphItemIter ->
IO (Ptr GlyphItemIter)
glyphItemIterCopy ::
(B.CallStack.HasCallStack, MonadIO m) =>
GlyphItemIter
-> m (Maybe GlyphItemIter)
glyphItemIterCopy orig = liftIO $ do
orig' <- unsafeManagedPtrGetPtr orig
result <- pango_glyph_item_iter_copy orig'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapBoxed GlyphItemIter) result'
return result''
touchManagedPtr orig
return maybeResult
#if ENABLE_OVERLOADING
data GlyphItemIterCopyMethodInfo
instance (signature ~ (m (Maybe GlyphItemIter)), MonadIO m) => O.MethodInfo GlyphItemIterCopyMethodInfo GlyphItemIter signature where
overloadedMethod _ = glyphItemIterCopy
#endif
foreign import ccall "pango_glyph_item_iter_free" pango_glyph_item_iter_free ::
Ptr GlyphItemIter ->
IO ()
glyphItemIterFree ::
(B.CallStack.HasCallStack, MonadIO m) =>
GlyphItemIter
-> m ()
glyphItemIterFree iter = liftIO $ do
iter' <- unsafeManagedPtrGetPtr iter
pango_glyph_item_iter_free iter'
touchManagedPtr iter
return ()
#if ENABLE_OVERLOADING
data GlyphItemIterFreeMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo GlyphItemIterFreeMethodInfo GlyphItemIter signature where
overloadedMethod _ = glyphItemIterFree
#endif
foreign import ccall "pango_glyph_item_iter_init_end" pango_glyph_item_iter_init_end ::
Ptr GlyphItemIter ->
Ptr Pango.GlyphItem.GlyphItem ->
CString ->
IO CInt
glyphItemIterInitEnd ::
(B.CallStack.HasCallStack, MonadIO m) =>
GlyphItemIter
-> Pango.GlyphItem.GlyphItem
-> T.Text
-> m Bool
glyphItemIterInitEnd iter glyphItem text = liftIO $ do
iter' <- unsafeManagedPtrGetPtr iter
glyphItem' <- unsafeManagedPtrGetPtr glyphItem
text' <- textToCString text
result <- pango_glyph_item_iter_init_end iter' glyphItem' text'
let result' = (/= 0) result
touchManagedPtr iter
touchManagedPtr glyphItem
freeMem text'
return result'
#if ENABLE_OVERLOADING
data GlyphItemIterInitEndMethodInfo
instance (signature ~ (Pango.GlyphItem.GlyphItem -> T.Text -> m Bool), MonadIO m) => O.MethodInfo GlyphItemIterInitEndMethodInfo GlyphItemIter signature where
overloadedMethod _ = glyphItemIterInitEnd
#endif
foreign import ccall "pango_glyph_item_iter_init_start" pango_glyph_item_iter_init_start ::
Ptr GlyphItemIter ->
Ptr Pango.GlyphItem.GlyphItem ->
CString ->
IO CInt
glyphItemIterInitStart ::
(B.CallStack.HasCallStack, MonadIO m) =>
GlyphItemIter
-> Pango.GlyphItem.GlyphItem
-> T.Text
-> m Bool
glyphItemIterInitStart iter glyphItem text = liftIO $ do
iter' <- unsafeManagedPtrGetPtr iter
glyphItem' <- unsafeManagedPtrGetPtr glyphItem
text' <- textToCString text
result <- pango_glyph_item_iter_init_start iter' glyphItem' text'
let result' = (/= 0) result
touchManagedPtr iter
touchManagedPtr glyphItem
freeMem text'
return result'
#if ENABLE_OVERLOADING
data GlyphItemIterInitStartMethodInfo
instance (signature ~ (Pango.GlyphItem.GlyphItem -> T.Text -> m Bool), MonadIO m) => O.MethodInfo GlyphItemIterInitStartMethodInfo GlyphItemIter signature where
overloadedMethod _ = glyphItemIterInitStart
#endif
foreign import ccall "pango_glyph_item_iter_next_cluster" pango_glyph_item_iter_next_cluster ::
Ptr GlyphItemIter ->
IO CInt
glyphItemIterNextCluster ::
(B.CallStack.HasCallStack, MonadIO m) =>
GlyphItemIter
-> m Bool
glyphItemIterNextCluster iter = liftIO $ do
iter' <- unsafeManagedPtrGetPtr iter
result <- pango_glyph_item_iter_next_cluster iter'
let result' = (/= 0) result
touchManagedPtr iter
return result'
#if ENABLE_OVERLOADING
data GlyphItemIterNextClusterMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo GlyphItemIterNextClusterMethodInfo GlyphItemIter signature where
overloadedMethod _ = glyphItemIterNextCluster
#endif
foreign import ccall "pango_glyph_item_iter_prev_cluster" pango_glyph_item_iter_prev_cluster ::
Ptr GlyphItemIter ->
IO CInt
glyphItemIterPrevCluster ::
(B.CallStack.HasCallStack, MonadIO m) =>
GlyphItemIter
-> m Bool
glyphItemIterPrevCluster iter = liftIO $ do
iter' <- unsafeManagedPtrGetPtr iter
result <- pango_glyph_item_iter_prev_cluster iter'
let result' = (/= 0) result
touchManagedPtr iter
return result'
#if ENABLE_OVERLOADING
data GlyphItemIterPrevClusterMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo GlyphItemIterPrevClusterMethodInfo GlyphItemIter signature where
overloadedMethod _ = glyphItemIterPrevCluster
#endif
#if ENABLE_OVERLOADING
type family ResolveGlyphItemIterMethod (t :: Symbol) (o :: *) :: * where
ResolveGlyphItemIterMethod "copy" o = GlyphItemIterCopyMethodInfo
ResolveGlyphItemIterMethod "free" o = GlyphItemIterFreeMethodInfo
ResolveGlyphItemIterMethod "initEnd" o = GlyphItemIterInitEndMethodInfo
ResolveGlyphItemIterMethod "initStart" o = GlyphItemIterInitStartMethodInfo
ResolveGlyphItemIterMethod "nextCluster" o = GlyphItemIterNextClusterMethodInfo
ResolveGlyphItemIterMethod "prevCluster" o = GlyphItemIterPrevClusterMethodInfo
ResolveGlyphItemIterMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveGlyphItemIterMethod t GlyphItemIter, O.MethodInfo info GlyphItemIter p) => O.IsLabelProxy t (GlyphItemIter -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveGlyphItemIterMethod t GlyphItemIter, O.MethodInfo info GlyphItemIter p) => O.IsLabel t (GlyphItemIter -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
#endif