qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Core/QTextDecoder.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
module Graphics.UI.Qtah.Generated.Core.QTextDecoder (
QTextDecoderValue (..),
QTextDecoderConstPtr (..),
QTextDecoderPtr (..),
toUnicodeRaw,
toUnicodeByteArray,
toUnicodeString,
QTextDecoderConst (..),
castQTextDecoderToConst,
QTextDecoder (..),
castQTextDecoderToNonconst,
new,
QTextDecoderSuper (..),
QTextDecoderSuperConst (..),
) where
import qualified Foreign as HoppyF
import qualified Foreign.C as HoppyFC
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Graphics.UI.Qtah.Generated.Core.QByteArray as M12
import qualified Graphics.UI.Qtah.Generated.Core.QString as M142
import qualified Graphics.UI.Qtah.Generated.Core.QTextCodec as M150
import Prelude (($), (.), (=<<), (==), (>>=))
import qualified Prelude as HoppyP
import qualified Prelude as QtahP
foreign import ccall "genpop__QTextDecoder_new" new' :: HoppyF.Ptr M150.QTextCodecConst -> HoppyP.IO (HoppyF.Ptr QTextDecoder)
foreign import ccall "genpop__QTextDecoder_toUnicodeRaw" toUnicodeRaw' :: HoppyF.Ptr QTextDecoder -> HoppyF.Ptr HoppyFC.CChar -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QTextDecoder_toUnicodeByteArray" toUnicodeByteArray' :: HoppyF.Ptr QTextDecoder -> HoppyF.Ptr M12.QByteArrayConst -> HoppyP.IO (HoppyF.Ptr M142.QStringConst)
foreign import ccall "genpop__QTextDecoder_toUnicodeString" toUnicodeString' :: HoppyF.Ptr QTextDecoder -> HoppyF.Ptr M142.QString -> HoppyF.Ptr HoppyFC.CChar -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "gendel__QTextDecoder" delete'QTextDecoder :: HoppyF.Ptr QTextDecoderConst -> HoppyP.IO ()
foreign import ccall "&gendel__QTextDecoder" deletePtr'QTextDecoder :: HoppyF.FunPtr (HoppyF.Ptr QTextDecoderConst -> HoppyP.IO ())
class QTextDecoderValue a where
withQTextDecoderPtr :: a -> (QTextDecoderConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QTextDecoderConstPtr a => QTextDecoderValue a where
withQTextDecoderPtr = HoppyP.flip ($) . toQTextDecoderConst
class (HoppyFHR.CppPtr this) => QTextDecoderConstPtr this where
toQTextDecoderConst :: this -> QTextDecoderConst
class (QTextDecoderConstPtr this) => QTextDecoderPtr this where
toQTextDecoder :: this -> QTextDecoder
toUnicodeRaw :: (QTextDecoderPtr this) => (this) {- ^ this -} -> (HoppyF.Ptr HoppyFC.CChar) -> (HoppyP.Int) -> (HoppyP.IO QtahP.String)
toUnicodeRaw arg'1 arg'2 arg'3 =
HoppyFHR.withCppPtr (toQTextDecoder arg'1) $ \arg'1' ->
let arg'2' = arg'2 in
(
HoppyP.return . HoppyFHR.coerceIntegral
) arg'3 >>= \arg'3' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(toUnicodeRaw' arg'1' arg'2' arg'3')
toUnicodeByteArray :: (QTextDecoderPtr this, M12.QByteArrayValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO QtahP.String)
toUnicodeByteArray arg'1 arg'2 =
HoppyFHR.withCppPtr (toQTextDecoder arg'1) $ \arg'1' ->
M12.withQByteArrayPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(HoppyFHR.decodeAndDelete . M142.QStringConst) =<<
(toUnicodeByteArray' arg'1' arg'2')
toUnicodeString :: (QTextDecoderPtr this, M142.QStringPtr arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyF.Ptr HoppyFC.CChar) -> (HoppyP.Int) -> (HoppyP.IO ())
toUnicodeString arg'1 arg'2 arg'3 arg'4 =
HoppyFHR.withCppPtr (toQTextDecoder arg'1) $ \arg'1' ->
HoppyFHR.withCppPtr (M142.toQString arg'2) $ \arg'2' ->
let arg'3' = arg'3 in
(
HoppyP.return . HoppyFHR.coerceIntegral
) arg'4 >>= \arg'4' ->
(toUnicodeString' arg'1' arg'2' arg'3' arg'4')
data QTextDecoderConst =
QTextDecoderConst (HoppyF.Ptr QTextDecoderConst)
| QTextDecoderConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QTextDecoderConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QTextDecoderConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QTextDecoderConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQTextDecoderToConst :: QTextDecoder -> QTextDecoderConst
castQTextDecoderToConst (QTextDecoder ptr') = QTextDecoderConst $ HoppyF.castPtr ptr'
castQTextDecoderToConst (QTextDecoderGc fptr' ptr') = QTextDecoderConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QTextDecoderConst where
nullptr = QTextDecoderConst HoppyF.nullPtr
withCppPtr (QTextDecoderConst ptr') f' = f' ptr'
withCppPtr (QTextDecoderConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QTextDecoderConst ptr') = ptr'
toPtr (QTextDecoderConstGc _ ptr') = ptr'
touchCppPtr (QTextDecoderConst _) = HoppyP.return ()
touchCppPtr (QTextDecoderConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QTextDecoderConst where
delete (QTextDecoderConst ptr') = delete'QTextDecoder ptr'
delete (QTextDecoderConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QTextDecoderConst", " object."]
toGc this'@(QTextDecoderConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QTextDecoderConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QTextDecoder :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QTextDecoderConstGc {}) = HoppyP.return this'
instance QTextDecoderConstPtr QTextDecoderConst where
toQTextDecoderConst = HoppyP.id
data QTextDecoder =
QTextDecoder (HoppyF.Ptr QTextDecoder)
| QTextDecoderGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QTextDecoder)
deriving (HoppyP.Show)
instance HoppyP.Eq QTextDecoder where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QTextDecoder where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQTextDecoderToNonconst :: QTextDecoderConst -> QTextDecoder
castQTextDecoderToNonconst (QTextDecoderConst ptr') = QTextDecoder $ HoppyF.castPtr ptr'
castQTextDecoderToNonconst (QTextDecoderConstGc fptr' ptr') = QTextDecoderGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QTextDecoder where
nullptr = QTextDecoder HoppyF.nullPtr
withCppPtr (QTextDecoder ptr') f' = f' ptr'
withCppPtr (QTextDecoderGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QTextDecoder ptr') = ptr'
toPtr (QTextDecoderGc _ ptr') = ptr'
touchCppPtr (QTextDecoder _) = HoppyP.return ()
touchCppPtr (QTextDecoderGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QTextDecoder where
delete (QTextDecoder ptr') = delete'QTextDecoder $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QTextDecoderConst)
delete (QTextDecoderGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QTextDecoder", " object."]
toGc this'@(QTextDecoder ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QTextDecoderGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QTextDecoder :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QTextDecoderGc {}) = HoppyP.return this'
instance QTextDecoderConstPtr QTextDecoder where
toQTextDecoderConst (QTextDecoder ptr') = QTextDecoderConst $ (HoppyF.castPtr :: HoppyF.Ptr QTextDecoder -> HoppyF.Ptr QTextDecoderConst) ptr'
toQTextDecoderConst (QTextDecoderGc fptr' ptr') = QTextDecoderConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QTextDecoder -> HoppyF.Ptr QTextDecoderConst) ptr'
instance QTextDecoderPtr QTextDecoder where
toQTextDecoder = HoppyP.id
new :: (M150.QTextCodecValue arg'1) => (arg'1) -> (HoppyP.IO QTextDecoder)
new arg'1 =
M150.withQTextCodecPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap QTextDecoder
(new' arg'1')
class QTextDecoderSuper a where
downToQTextDecoder :: a -> QTextDecoder
class QTextDecoderSuperConst a where
downToQTextDecoderConst :: a -> QTextDecoderConst
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QTextDecoder)) QTextDecoder where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QTextDecoder)) QTextDecoder where
decode = HoppyP.fmap QTextDecoder . HoppyF.peek