lib.gvariant: GVariant formatted string serialization functions
A partial and basic implementation of GVariant formatted strings. See GVariant Format Strings for details.
Warning
This API is not considered fully stable and it might therefore change in backwards incompatible ways without prior notice.
lib.gvariant.isGVariant
Check if a value is a GVariant value
Inputs
-
v -
value to check
Type
isGVariant :: Any -> Bool
Located at lib/gvariant.nix:69 in <nixpkgs>.
lib.gvariant.mkValue
Returns the GVariant value that most closely matches the given Nix value. If no GVariant value can be found unambiguously then error is thrown.
Inputs
-
v -
1. Function argument
Type
mkValue :: Any -> GVariant
Located at lib/gvariant.nix:134 in <nixpkgs>.
lib.gvariant.mkArray
Returns the GVariant array from the given type of the elements and a Nix list.
Inputs
-
elems -
1. Function argument
Type
mkArray :: [Any] -> GVariant
Examples
Example
lib.gvariant.mkArray usage example
# Creating a string array
lib.gvariant.mkArray [ "a" "b" "c" ]
Located at lib/gvariant.nix:191 in <nixpkgs>.
lib.gvariant.mkEmptyArray
Returns the GVariant array from the given empty Nix list.
Inputs
-
elemType -
1. Function argument
Type
mkEmptyArray :: GVariantType -> GVariant
Examples
Example
lib.gvariant.mkEmptyArray usage example
# Creating an empty string array
lib.gvariant.mkEmptyArray (lib.gvariant.type.string)
Located at lib/gvariant.nix:235 in <nixpkgs>.
lib.gvariant.mkVariant
Returns the GVariant variant from the given Nix value. Variants are containers of different GVariant type.
Inputs
-
elem -
1. Function argument
Type
mkVariant :: Any -> GVariant
Examples
Example
lib.gvariant.mkVariant usage example
lib.gvariant.mkArray [
(lib.gvariant.mkVariant "a string")
(lib.gvariant.mkVariant (lib.gvariant.mkInt32 1))
]
Located at lib/gvariant.nix:271 in <nixpkgs>.
lib.gvariant.mkDictionaryEntry
Returns the GVariant dictionary entry from the given key and value.
Inputs
-
name -
The key of the entry
-
value -
The value of the entry
Type
mkDictionaryEntry :: String -> Any -> GVariant
Examples
Example
lib.gvariant.mkDictionaryEntry usage example
# A dictionary describing an Epiphany’s search provider
[
(lib.gvariant.mkDictionaryEntry "url" (lib.gvariant.mkVariant "https://duckduckgo.com/?q=%s&t=epiphany"))
(lib.gvariant.mkDictionaryEntry "bang" (lib.gvariant.mkVariant "!d"))
(lib.gvariant.mkDictionaryEntry "name" (lib.gvariant.mkVariant "DuckDuckGo"))
]
Located at lib/gvariant.nix:315 in <nixpkgs>.
lib.gvariant.mkMaybe
Returns the GVariant maybe from the given element type.
Inputs
-
elemType -
1. Function argument
-
elem -
2. Function argument
Type
mkMaybe :: GVariantType -> Any -> GVariant
Located at lib/gvariant.nix:346 in <nixpkgs>.
lib.gvariant.mkNothing
Returns the GVariant nothing from the given element type.
Inputs
-
elemType -
1. Function argument
Type
mkNothing :: GVariantType -> GVariant
Located at lib/gvariant.nix:369 in <nixpkgs>.
lib.gvariant.mkJust
Returns the GVariant just from the given Nix value.
Inputs
-
elem -
1. Function argument
Type
mkJust :: Any -> GVariant
Located at lib/gvariant.nix:386 in <nixpkgs>.
lib.gvariant.mkTuple
Returns the GVariant tuple from the given Nix list.
Inputs
-
elems -
1. Function argument
Type
mkTuple :: [Any] -> GVariant
Located at lib/gvariant.nix:408 in <nixpkgs>.
lib.gvariant.mkBoolean
Returns the GVariant boolean from the given Nix bool value.
Inputs
-
v -
1. Function argument
Type
mkBoolean :: Bool -> GVariant
Located at lib/gvariant.nix:434 in <nixpkgs>.
lib.gvariant.mkString
Returns the GVariant string from the given Nix string value.
Inputs
-
v -
1. Function argument
Type
mkString :: String -> GVariant
Located at lib/gvariant.nix:456 in <nixpkgs>.
lib.gvariant.mkObjectpath
Returns the GVariant object path from the given Nix string value.
Inputs
-
v -
1. Function argument
Type
mkObjectpath :: String -> GVariant
Located at lib/gvariant.nix:481 in <nixpkgs>.
lib.gvariant.mkUchar
Returns the GVariant uchar from the given Nix int value.
Type
mkUchar :: Int -> GVariant
Located at lib/gvariant.nix:497 in <nixpkgs>.
lib.gvariant.mkInt16
Returns the GVariant int16 from the given Nix int value.
Type
mkInt16 :: Int -> GVariant
Located at lib/gvariant.nix:508 in <nixpkgs>.
lib.gvariant.mkUint16
Returns the GVariant uint16 from the given Nix int value.
Type
mkUint16 :: Int -> GVariant
Located at lib/gvariant.nix:519 in <nixpkgs>.
lib.gvariant.mkInt32
Returns the GVariant int32 from the given Nix int value.
Inputs
-
v -
1. Function argument
Type
mkInt32 :: Int -> GVariant
Located at lib/gvariant.nix:536 in <nixpkgs>.
lib.gvariant.mkUint32
Returns the GVariant uint32 from the given Nix int value.
Type
mkUint32 :: Int -> GVariant
Located at lib/gvariant.nix:552 in <nixpkgs>.
lib.gvariant.mkInt64
Returns the GVariant int64 from the given Nix int value.
Type
mkInt64 :: Int -> GVariant
Located at lib/gvariant.nix:563 in <nixpkgs>.
lib.gvariant.mkUint64
Returns the GVariant uint64 from the given Nix int value.
Type
mkUint64 :: Int -> GVariant
Located at lib/gvariant.nix:574 in <nixpkgs>.
lib.gvariant.mkDouble
Returns the GVariant double from the given Nix float value.
Inputs
-
v -
1. Function argument
Type
mkDouble :: Float -> GVariant
Located at lib/gvariant.nix:591 in <nixpkgs>.