{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, GeneralizedNewtypeDeriving, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
module Graphics.UI.Qtah.Generated.Core.QList.QString (
QListQStringValue (..),
QListQStringConstPtr (..),
atConst,
contains,
count,
endsWith,
firstConst,
get,
indexOf,
indexOfFrom,
isEmpty,
lastConst,
lastIndexOf,
lastIndexOfFrom,
mid,
midLength,
size,
startsWith,
value,
valueOr,
aDD,
QListQStringPtr (..),
append,
appendList,
at,
clear,
first,
insert,
last,
move,
prepend,
removeAll,
removeAt,
removeFirst,
removeLast,
removeOne,
replace,
reserve,
swap,
takeAt,
takeFirst,
takeLast,
aSSIGN,
QListQStringConst (..),
castQListQStringToConst,
QListQString (..),
castQListQStringToNonconst,
new,
newCopy,
QListQStringSuper (..),
QListQStringSuperConst (..),
) where
import Control.Monad ((<=<))
import qualified Foreign as HoppyF
import qualified Foreign.C as HoppyFC
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Foreign.Hoppy.Runtime as QtahFHR
import qualified Graphics.UI.Qtah.Generated.Core.QString as M54
import Prelude (($), (-), (.), (/=), (=<<), (==), (>>))
import qualified Prelude as HoppyP
import qualified Prelude as QtahP
foreign import ccall "genpop__QListQString_new" new' :: HoppyP.IO (HoppyF.Ptr QListQString)
foreign import ccall "genpop__QListQString_newCopy" newCopy' :: HoppyF.Ptr QListQStringConst -> HoppyP.IO (HoppyF.Ptr QListQString)
foreign import ccall "genpop__QListQString_append" append' :: HoppyF.Ptr QListQString -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_appendList" appendList' :: HoppyF.Ptr QListQString -> HoppyF.Ptr QListQStringConst -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_at" at' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M54.QString)
foreign import ccall "genpop__QListQString_atConst" atConst' :: HoppyF.Ptr QListQStringConst -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_clear" clear' :: HoppyF.Ptr QListQString -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_contains" contains' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFHR.CBool
foreign import ccall "genpop__QListQString_count" count' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_endsWith" endsWith' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFHR.CBool
foreign import ccall "genpop__QListQString_first" first' :: HoppyF.Ptr QListQString -> HoppyP.IO (HoppyF.Ptr M54.QString)
foreign import ccall "genpop__QListQString_firstConst" firstConst' :: HoppyF.Ptr QListQStringConst -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_get" get' :: HoppyF.Ptr QListQStringConst -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_indexOf" indexOf' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_indexOfFrom" indexOfFrom' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyFC.CInt -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_insert" insert' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_isEmpty" isEmpty' :: HoppyF.Ptr QListQStringConst -> HoppyP.IO HoppyFHR.CBool
foreign import ccall "genpop__QListQString_last" last' :: HoppyF.Ptr QListQString -> HoppyP.IO (HoppyF.Ptr M54.QString)
foreign import ccall "genpop__QListQString_lastConst" lastConst' :: HoppyF.Ptr QListQStringConst -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_lastIndexOf" lastIndexOf' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_lastIndexOfFrom" lastIndexOfFrom' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyFC.CInt -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_mid" mid' :: HoppyF.Ptr QListQStringConst -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr QListQString)
foreign import ccall "genpop__QListQString_midLength" midLength' :: HoppyF.Ptr QListQStringConst -> HoppyFC.CInt -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr QListQString)
foreign import ccall "genpop__QListQString_move" move' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_prepend" prepend' :: HoppyF.Ptr QListQString -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_removeAll" removeAll' :: HoppyF.Ptr QListQString -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_removeAt" removeAt' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_removeFirst" removeFirst' :: HoppyF.Ptr QListQString -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_removeLast" removeLast' :: HoppyF.Ptr QListQString -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_removeOne" removeOne' :: HoppyF.Ptr QListQString -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFHR.CBool
foreign import ccall "genpop__QListQString_replace" replace' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_reserve" reserve' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_size" size' :: HoppyF.Ptr QListQStringConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListQString_startsWith" startsWith' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO HoppyFHR.CBool
foreign import ccall "genpop__QListQString_swap" swap' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListQString_takeAt" takeAt' :: HoppyF.Ptr QListQString -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_takeFirst" takeFirst' :: HoppyF.Ptr QListQString -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_takeLast" takeLast' :: HoppyF.Ptr QListQString -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_value" value' :: HoppyF.Ptr QListQStringConst -> HoppyFC.CInt -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_valueOr" valueOr' :: HoppyF.Ptr QListQStringConst -> HoppyFC.CInt -> HoppyF.Ptr M54.QStringConst -> HoppyP.IO (HoppyF.Ptr M54.QStringConst)
foreign import ccall "genpop__QListQString_ADD" aDD' :: HoppyF.Ptr QListQStringConst -> HoppyF.Ptr QListQStringConst -> HoppyP.IO (HoppyF.Ptr QListQString)
foreign import ccall "genpop__QListQString_ASSIGN" aSSIGN' :: HoppyF.Ptr QListQString -> HoppyF.Ptr QListQStringConst -> HoppyP.IO (HoppyF.Ptr QListQString)
foreign import ccall "gendel__QListQString" delete'QListQString :: HoppyF.Ptr QListQStringConst -> HoppyP.IO ()
foreign import ccall "&gendel__QListQString" deletePtr'QListQString :: HoppyF.FunPtr (HoppyF.Ptr QListQStringConst -> HoppyP.IO ())
class QListQStringValue a where
withQListQStringPtr :: a -> (QListQStringConst -> HoppyP.IO b) -> HoppyP.IO b
instance {-# OVERLAPPABLE #-} QListQStringConstPtr a => QListQStringValue a where
withQListQStringPtr = HoppyP.flip ($) . toQListQStringConst
instance {-# OVERLAPPING #-} QListQStringValue ([QtahP.String]) where
withQListQStringPtr = HoppyFHR.withCppObj
class (HoppyFHR.CppPtr this) => QListQStringConstPtr this where
toQListQStringConst :: this -> QListQStringConst
atConst :: (QListQStringValue arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO M54.QStringConst
atConst arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
HoppyP.fmap M54.QStringConst
(atConst' arg'1' arg'2')
contains :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Bool
contains arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap (/= 0)
(contains' arg'1' arg'2')
count :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Int
count arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap HoppyFHR.coerceIntegral
(count' arg'1' arg'2')
endsWith :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Bool
endsWith arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap (/= 0)
(endsWith' arg'1' arg'2')
firstConst :: (QListQStringValue arg'1) => arg'1 -> HoppyP.IO M54.QStringConst
firstConst arg'1 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap M54.QStringConst
(firstConst' arg'1')
get :: (QListQStringValue arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO QtahP.String
get arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
(HoppyFHR.decodeAndDelete . M54.QStringConst) =<<
(get' arg'1' arg'2')
indexOf :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Int
indexOf arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap HoppyFHR.coerceIntegral
(indexOf' arg'1' arg'2')
indexOfFrom :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.Int -> HoppyP.IO HoppyP.Int
indexOfFrom arg'1 arg'2 arg'3 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
let arg'3' = HoppyFHR.coerceIntegral arg'3 in
HoppyP.fmap HoppyFHR.coerceIntegral
(indexOfFrom' arg'1' arg'2' arg'3')
isEmpty :: (QListQStringValue arg'1) => arg'1 -> HoppyP.IO HoppyP.Bool
isEmpty arg'1 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap (/= 0)
(isEmpty' arg'1')
lastConst :: (QListQStringValue arg'1) => arg'1 -> HoppyP.IO M54.QStringConst
lastConst arg'1 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap M54.QStringConst
(lastConst' arg'1')
lastIndexOf :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Int
lastIndexOf arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap HoppyFHR.coerceIntegral
(lastIndexOf' arg'1' arg'2')
lastIndexOfFrom :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.Int -> HoppyP.IO HoppyP.Int
lastIndexOfFrom arg'1 arg'2 arg'3 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
let arg'3' = HoppyFHR.coerceIntegral arg'3 in
HoppyP.fmap HoppyFHR.coerceIntegral
(lastIndexOfFrom' arg'1' arg'2' arg'3')
mid :: (QListQStringValue arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO QListQString
mid arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
HoppyFHR.toGc =<<
HoppyP.fmap QListQString
(mid' arg'1' arg'2')
midLength :: (QListQStringValue arg'1) => arg'1 -> HoppyP.Int -> HoppyP.Int -> HoppyP.IO QListQString
midLength arg'1 arg'2 arg'3 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
let arg'3' = HoppyFHR.coerceIntegral arg'3 in
HoppyFHR.toGc =<<
HoppyP.fmap QListQString
(midLength' arg'1' arg'2' arg'3')
size :: (QListQStringValue arg'1) => arg'1 -> HoppyP.IO HoppyP.Int
size arg'1 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap HoppyFHR.coerceIntegral
(size' arg'1')
startsWith :: (QListQStringValue arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Bool
startsWith arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap (/= 0)
(startsWith' arg'1' arg'2')
value :: (QListQStringValue arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO QtahP.String
value arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
(HoppyFHR.decodeAndDelete . M54.QStringConst) =<<
(value' arg'1' arg'2')
valueOr :: (QListQStringValue arg'1, M54.QStringValue arg'3) => arg'1 -> HoppyP.Int -> arg'3 -> HoppyP.IO QtahP.String
valueOr arg'1 arg'2 arg'3 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
M54.withQStringPtr arg'3 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'3' ->
(HoppyFHR.decodeAndDelete . M54.QStringConst) =<<
(valueOr' arg'1' arg'2' arg'3')
aDD :: (QListQStringValue arg'1, QListQStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO QListQString
aDD arg'1 arg'2 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
withQListQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyFHR.toGc =<<
HoppyP.fmap QListQString
(aDD' arg'1' arg'2')
class (QListQStringConstPtr this) => QListQStringPtr this where
toQListQString :: this -> QListQString
append :: (QListQStringPtr arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO ()
append arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(append' arg'1' arg'2')
appendList :: (QListQStringPtr arg'1, QListQStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO ()
appendList arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
withQListQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(appendList' arg'1' arg'2')
at :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO M54.QString
at arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
HoppyP.fmap M54.QString
(at' arg'1' arg'2')
clear :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO ()
clear arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
(clear' arg'1')
first :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO M54.QString
first arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
HoppyP.fmap M54.QString
(first' arg'1')
insert :: (QListQStringPtr arg'1, M54.QStringValue arg'3) => arg'1 -> HoppyP.Int -> arg'3 -> HoppyP.IO ()
insert arg'1 arg'2 arg'3 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
M54.withQStringPtr arg'3 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'3' ->
(insert' arg'1' arg'2' arg'3')
last :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO M54.QString
last arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
HoppyP.fmap M54.QString
(last' arg'1')
move :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.Int -> HoppyP.Int -> HoppyP.IO ()
move arg'1 arg'2 arg'3 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
let arg'3' = HoppyFHR.coerceIntegral arg'3 in
(move' arg'1' arg'2' arg'3')
prepend :: (QListQStringPtr arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO ()
prepend arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
(prepend' arg'1' arg'2')
removeAll :: (QListQStringPtr arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Int
removeAll arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap HoppyFHR.coerceIntegral
(removeAll' arg'1' arg'2')
removeAt :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO ()
removeAt arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
(removeAt' arg'1' arg'2')
removeFirst :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO ()
removeFirst arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
(removeFirst' arg'1')
removeLast :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO ()
removeLast arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
(removeLast' arg'1')
removeOne :: (QListQStringPtr arg'1, M54.QStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO HoppyP.Bool
removeOne arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
M54.withQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap (/= 0)
(removeOne' arg'1' arg'2')
replace :: (QListQStringPtr arg'1, M54.QStringValue arg'3) => arg'1 -> HoppyP.Int -> arg'3 -> HoppyP.IO ()
replace arg'1 arg'2 arg'3 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
M54.withQStringPtr arg'3 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'3' ->
(replace' arg'1' arg'2' arg'3')
reserve :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO ()
reserve arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
(reserve' arg'1' arg'2')
swap :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.Int -> HoppyP.Int -> HoppyP.IO ()
swap arg'1 arg'2 arg'3 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
let arg'3' = HoppyFHR.coerceIntegral arg'3 in
(swap' arg'1' arg'2' arg'3')
takeAt :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.Int -> HoppyP.IO QtahP.String
takeAt arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
let arg'2' = HoppyFHR.coerceIntegral arg'2 in
(HoppyFHR.decodeAndDelete . M54.QStringConst) =<<
(takeAt' arg'1' arg'2')
takeFirst :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO QtahP.String
takeFirst arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
(HoppyFHR.decodeAndDelete . M54.QStringConst) =<<
(takeFirst' arg'1')
takeLast :: (QListQStringPtr arg'1) => arg'1 -> HoppyP.IO QtahP.String
takeLast arg'1 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
(HoppyFHR.decodeAndDelete . M54.QStringConst) =<<
(takeLast' arg'1')
aSSIGN :: (QListQStringPtr arg'1, QListQStringValue arg'2) => arg'1 -> arg'2 -> HoppyP.IO QListQString
aSSIGN arg'1 arg'2 =
HoppyFHR.withCppPtr (toQListQString arg'1) $ \arg'1' ->
withQListQStringPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
HoppyP.fmap QListQString
(aSSIGN' arg'1' arg'2')
data QListQStringConst =
QListQStringConst (HoppyF.Ptr QListQStringConst)
| QListQStringConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QListQStringConst)
deriving (HoppyP.Show)
instance HoppyP.Eq QListQStringConst where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QListQStringConst where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQListQStringToConst :: QListQString -> QListQStringConst
castQListQStringToConst (QListQString ptr') = QListQStringConst $ HoppyF.castPtr ptr'
castQListQStringToConst (QListQStringGc fptr' ptr') = QListQStringConstGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QListQStringConst where
nullptr = QListQStringConst HoppyF.nullPtr
withCppPtr (QListQStringConst ptr') f' = f' ptr'
withCppPtr (QListQStringConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QListQStringConst ptr') = ptr'
toPtr (QListQStringConstGc _ ptr') = ptr'
touchCppPtr (QListQStringConst _) = HoppyP.return ()
touchCppPtr (QListQStringConstGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QListQStringConst where
delete (QListQStringConst ptr') = delete'QListQString ptr'
delete (QListQStringConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QListQStringConst", " object."]
toGc this'@(QListQStringConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QListQStringConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QListQString :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QListQStringConstGc {}) = HoppyP.return this'
instance HoppyFHR.Copyable QListQStringConst QListQString where copy = newCopy
instance QListQStringConstPtr QListQStringConst where
toQListQStringConst = HoppyP.id
data QListQString =
QListQString (HoppyF.Ptr QListQString)
| QListQStringGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QListQString)
deriving (HoppyP.Show)
instance HoppyP.Eq QListQString where
x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y
instance HoppyP.Ord QListQString where
compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)
castQListQStringToNonconst :: QListQStringConst -> QListQString
castQListQStringToNonconst (QListQStringConst ptr') = QListQString $ HoppyF.castPtr ptr'
castQListQStringToNonconst (QListQStringConstGc fptr' ptr') = QListQStringGc fptr' $ HoppyF.castPtr ptr'
instance HoppyFHR.CppPtr QListQString where
nullptr = QListQString HoppyF.nullPtr
withCppPtr (QListQString ptr') f' = f' ptr'
withCppPtr (QListQStringGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
toPtr (QListQString ptr') = ptr'
toPtr (QListQStringGc _ ptr') = ptr'
touchCppPtr (QListQString _) = HoppyP.return ()
touchCppPtr (QListQStringGc fptr' _) = HoppyF.touchForeignPtr fptr'
instance HoppyFHR.Deletable QListQString where
delete (QListQString ptr') = delete'QListQString $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QListQStringConst)
delete (QListQStringGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QListQString", " object."]
toGc this'@(QListQString ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QListQStringGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QListQString :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
toGc this'@(QListQStringGc {}) = HoppyP.return this'
instance HoppyFHR.Copyable QListQString QListQString where copy = newCopy
instance QListQStringConstPtr QListQString where
toQListQStringConst (QListQString ptr') = QListQStringConst $ (HoppyF.castPtr :: HoppyF.Ptr QListQString -> HoppyF.Ptr QListQStringConst) ptr'
toQListQStringConst (QListQStringGc fptr' ptr') = QListQStringConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QListQString -> HoppyF.Ptr QListQStringConst) ptr'
instance QListQStringPtr QListQString where
toQListQString = HoppyP.id
new :: HoppyP.IO QListQString
new =
HoppyP.fmap QListQString
(new')
newCopy :: (QListQStringValue arg'1) => arg'1 -> HoppyP.IO QListQString
newCopy arg'1 =
withQListQStringPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
HoppyP.fmap QListQString
(newCopy' arg'1')
class QListQStringSuper a where
downToQListQString :: a -> QListQString
class QListQStringSuperConst a where
downToQListQStringConst :: a -> QListQStringConst
instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QListQString)) QListQString where
assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'
instance QListQStringValue a => HoppyFHR.Assignable QListQString a where
assign x' y' = aSSIGN x' y' >> HoppyP.return ()
instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QListQString)) QListQString where
decode = HoppyP.fmap QListQString . HoppyF.peek
instance HoppyFHR.Encodable QListQString ([QtahP.String]) where
encode =
QtahFHR.fromContents
instance HoppyFHR.Encodable QListQStringConst ([QtahP.String]) where
encode = HoppyP.fmap (toQListQStringConst) . HoppyFHR.encodeAs (HoppyP.undefined :: QListQString)
instance HoppyFHR.Decodable QListQString ([QtahP.String]) where
decode = HoppyFHR.decode . toQListQStringConst
instance HoppyFHR.Decodable QListQStringConst ([QtahP.String]) where
decode =
QtahFHR.toContents
instance QtahFHR.HasContents QListQStringConst (QtahP.String) where
toContents this' = do
size' <- size this'
QtahP.mapM (QtahFHR.decode <=< atConst this') [0..size'-1]
instance QtahFHR.HasContents QListQString (QtahP.String) where
toContents this' = do
size' <- size this'
QtahP.mapM (QtahFHR.decode <=< at this') [0..size'-1]
instance QtahFHR.FromContents QListQString (QtahP.String) where
fromContents values' = do
list' <- new
reserve list' $ QtahFHR.coerceIntegral $ QtahP.length values'
QtahP.mapM_ (append list') values'
QtahP.return list'