{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) -} module GI.Gio.Interfaces.TlsFileDatabase ( -- * Exported types TlsFileDatabase(..) , noTlsFileDatabase , TlsFileDatabaseK , toTlsFileDatabase , -- * Properties -- ** Anchors TlsFileDatabaseAnchorsPropertyInfo , constructTlsFileDatabaseAnchors , getTlsFileDatabaseAnchors , setTlsFileDatabaseAnchors , ) where import Prelude () import Data.GI.Base.ShortPrelude import qualified Data.Text as T import qualified Data.ByteString.Char8 as B import qualified Data.Map as Map import GI.Gio.Types import GI.Gio.Callbacks import qualified GI.GObject as GObject -- interface TlsFileDatabase newtype TlsFileDatabase = TlsFileDatabase (ForeignPtr TlsFileDatabase) noTlsFileDatabase :: Maybe TlsFileDatabase noTlsFileDatabase = Nothing -- VVV Prop "anchors" -- Type: TBasicType TUTF8 -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct] getTlsFileDatabaseAnchors :: (MonadIO m, TlsFileDatabaseK o) => o -> m T.Text getTlsFileDatabaseAnchors obj = liftIO $ getObjectPropertyString obj "anchors" setTlsFileDatabaseAnchors :: (MonadIO m, TlsFileDatabaseK o) => o -> T.Text -> m () setTlsFileDatabaseAnchors obj val = liftIO $ setObjectPropertyString obj "anchors" val constructTlsFileDatabaseAnchors :: T.Text -> IO ([Char], GValue) constructTlsFileDatabaseAnchors val = constructObjectPropertyString "anchors" val data TlsFileDatabaseAnchorsPropertyInfo instance AttrInfo TlsFileDatabaseAnchorsPropertyInfo where type AttrAllowedOps TlsFileDatabaseAnchorsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet] type AttrSetTypeConstraint TlsFileDatabaseAnchorsPropertyInfo = (~) T.Text type AttrBaseTypeConstraint TlsFileDatabaseAnchorsPropertyInfo = TlsFileDatabaseK type AttrGetType TlsFileDatabaseAnchorsPropertyInfo = T.Text type AttrLabel TlsFileDatabaseAnchorsPropertyInfo = "TlsFileDatabase::anchors" attrGet _ = getTlsFileDatabaseAnchors attrSet _ = setTlsFileDatabaseAnchors attrConstruct _ = constructTlsFileDatabaseAnchors type instance AttributeList TlsFileDatabase = TlsFileDatabaseAttributeList type TlsFileDatabaseAttributeList = ('[ '("anchors", TlsFileDatabaseAnchorsPropertyInfo)] :: [(Symbol, *)]) type instance SignalList TlsFileDatabase = TlsFileDatabaseSignalList type TlsFileDatabaseSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)]) foreign import ccall "g_tls_file_database_get_type" c_g_tls_file_database_get_type :: IO GType type instance ParentTypes TlsFileDatabase = TlsFileDatabaseParentTypes type TlsFileDatabaseParentTypes = '[TlsDatabase, GObject.Object] instance GObject TlsFileDatabase where gobjectIsInitiallyUnowned _ = False gobjectType _ = c_g_tls_file_database_get_type class GObject o => TlsFileDatabaseK o instance (GObject o, IsDescendantOf TlsFileDatabase o) => TlsFileDatabaseK o toTlsFileDatabase :: TlsFileDatabaseK o => o -> IO TlsFileDatabase toTlsFileDatabase = unsafeCastTo TlsFileDatabase