| Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.Secret.Structs.Value
Description
A secret value, like a password or other binary secret.
- newtype Value = Value (ManagedPtr Value)
- noValue :: Maybe Value
- data ValueGetMethodInfo
- valueGet :: (HasCallStack, MonadIO m) => Value -> m ByteString
- data ValueGetContentTypeMethodInfo
- valueGetContentType :: (HasCallStack, MonadIO m) => Value -> m Text
- data ValueGetTextMethodInfo
- valueGetText :: (HasCallStack, MonadIO m) => Value -> m (Maybe Text)
- valueNew :: (HasCallStack, MonadIO m) => Text -> Int64 -> Text -> m Value
- valueNewFull :: (HasCallStack, MonadIO m) => Text -> Int64 -> Text -> DestroyNotify -> m Value
- data ValueRefMethodInfo
- valueRef :: (HasCallStack, MonadIO m) => Value -> m Value
- data ValueUnrefMethodInfo
- valueUnref :: (HasCallStack, MonadIO m) => Value -> m ()
Exported types
Constructors
| Value (ManagedPtr Value) |
Instances
| BoxedObject Value Source # | |
| ((~) * info (ResolveValueMethod t Value), MethodInfo * info Value p) => IsLabel t (Value -> p) Source # | |
| ((~) * info (ResolveValueMethod t Value), MethodInfo * info Value p) => IsLabelProxy t (Value -> p) Source # | |
| HasAttributeList * Value Source # | |
| ((~) * signature (m ()), MonadIO m) => MethodInfo * ValueUnrefMethodInfo Value signature Source # | |
| ((~) * signature (m Value), MonadIO m) => MethodInfo * ValueRefMethodInfo Value signature Source # | |
| ((~) * signature (m (Maybe Text)), MonadIO m) => MethodInfo * ValueGetTextMethodInfo Value signature Source # | |
| ((~) * signature (m Text), MonadIO m) => MethodInfo * ValueGetContentTypeMethodInfo Value signature Source # | |
| ((~) * signature (m ByteString), MonadIO m) => MethodInfo * ValueGetMethodInfo Value signature Source # | |
| type AttributeList Value Source # | |
Methods
get
data ValueGetMethodInfo Source #
Instances
| ((~) * signature (m ByteString), MonadIO m) => MethodInfo * ValueGetMethodInfo Value signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Value |
|
| -> m ByteString | Returns: the secret data |
Get the secret data in the Value. The value is not necessarily
null-terminated unless it was created with valueNew or a
null-terminated string was passed to valueNewFull.
getContentType
data ValueGetContentTypeMethodInfo Source #
Instances
| ((~) * signature (m Text), MonadIO m) => MethodInfo * ValueGetContentTypeMethodInfo Value signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Value |
|
| -> m Text | Returns: the content type |
Get the content type of the secret value, such as <literal>text/plain</literal>.
getText
data ValueGetTextMethodInfo Source #
Instances
| ((~) * signature (m (Maybe Text)), MonadIO m) => MethodInfo * ValueGetTextMethodInfo Value signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Value |
|
| -> m (Maybe Text) | Returns: the content type |
Get the secret data in the Value if it contains a textual
value. The content type must be <literal>text/plain</literal>.
new
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Text |
|
| -> Int64 |
|
| -> Text |
|
| -> m Value | Returns: the new |
Create a Value for the secret data passed in. The secret data is
copied into non-pageable 'secure' memory.
If the length is less than zero, then secret is assumed to be
null-terminated.
newFull
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Text |
|
| -> Int64 |
|
| -> Text |
|
| -> DestroyNotify |
|
| -> m Value | Returns: the new |
Create a Value for the secret data passed in. The secret data is
not copied, and will later be freed with the destroy function.
If the length is less than zero, then secret is assumed to be
null-terminated.
ref
data ValueRefMethodInfo Source #
Instances
| ((~) * signature (m Value), MonadIO m) => MethodInfo * ValueRefMethodInfo Value signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Value |
|
| -> m Value | Returns: the value |
Add another reference to the Value. For each reference
valueUnref should be called to unreference the value.
unref
data ValueUnrefMethodInfo Source #
Instances
| ((~) * signature (m ()), MonadIO m) => MethodInfo * ValueUnrefMethodInfo Value signature Source # | |
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Value |
|
| -> m () |
Unreference a Value. When the last reference is gone, then
the value will be freed.