Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
Determines if a string matches a file attribute.
Synopsis
- newtype FileAttributeMatcher = FileAttributeMatcher (ManagedPtr FileAttributeMatcher)
- fileAttributeMatcherEnumerateNamespace :: (HasCallStack, MonadIO m) => FileAttributeMatcher -> Text -> m Bool
- fileAttributeMatcherEnumerateNext :: (HasCallStack, MonadIO m) => FileAttributeMatcher -> m (Maybe Text)
- fileAttributeMatcherMatches :: (HasCallStack, MonadIO m) => FileAttributeMatcher -> Text -> m Bool
- fileAttributeMatcherMatchesOnly :: (HasCallStack, MonadIO m) => FileAttributeMatcher -> Text -> m Bool
- fileAttributeMatcherNew :: (HasCallStack, MonadIO m) => Text -> m FileAttributeMatcher
- fileAttributeMatcherRef :: (HasCallStack, MonadIO m) => FileAttributeMatcher -> m FileAttributeMatcher
- fileAttributeMatcherSubtract :: (HasCallStack, MonadIO m) => Maybe FileAttributeMatcher -> Maybe FileAttributeMatcher -> m (Maybe FileAttributeMatcher)
- fileAttributeMatcherToString :: (HasCallStack, MonadIO m) => Maybe FileAttributeMatcher -> m Text
- fileAttributeMatcherUnref :: (HasCallStack, MonadIO m) => FileAttributeMatcher -> m ()
Exported types
newtype FileAttributeMatcher Source #
Memory-managed wrapper type.
Instances
Eq FileAttributeMatcher Source # | |
Defined in GI.Gio.Structs.FileAttributeMatcher (==) :: FileAttributeMatcher -> FileAttributeMatcher -> Bool # (/=) :: FileAttributeMatcher -> FileAttributeMatcher -> Bool # | |
GBoxed FileAttributeMatcher Source # | |
Defined in GI.Gio.Structs.FileAttributeMatcher | |
ManagedPtrNewtype FileAttributeMatcher Source # | |
TypedObject FileAttributeMatcher Source # | |
Defined in GI.Gio.Structs.FileAttributeMatcher | |
HasParentTypes FileAttributeMatcher Source # | |
Defined in GI.Gio.Structs.FileAttributeMatcher | |
IsGValue (Maybe FileAttributeMatcher) Source # | Convert |
Defined in GI.Gio.Structs.FileAttributeMatcher gvalueGType_ :: IO GType # gvalueSet_ :: Ptr GValue -> Maybe FileAttributeMatcher -> IO () # gvalueGet_ :: Ptr GValue -> IO (Maybe FileAttributeMatcher) # | |
type ParentTypes FileAttributeMatcher Source # | |
Defined in GI.Gio.Structs.FileAttributeMatcher |
Methods
Click to display all available methods, including inherited ones
Methods
enumerateNamespace, enumerateNext, matches, matchesOnly, ref, subtract, toString, unref.
Getters
None.
Setters
None.
enumerateNamespace
fileAttributeMatcherEnumerateNamespace Source #
:: (HasCallStack, MonadIO m) | |
=> FileAttributeMatcher |
|
-> Text |
|
-> m Bool | Returns: |
Checks if the matcher will match all of the keys in a given namespace.
This will always return True
if a wildcard character is in use (e.g. if
matcher was created with "standard::*" and ns
is "standard", or if matcher was created
using "*" and namespace is anything.)
TODO: this is awkwardly worded.
enumerateNext
fileAttributeMatcherEnumerateNext Source #
:: (HasCallStack, MonadIO m) | |
=> FileAttributeMatcher |
|
-> m (Maybe Text) | Returns: a string containing the next attribute or, |
Gets the next matched attribute from a FileAttributeMatcher
.
matches
fileAttributeMatcherMatches Source #
:: (HasCallStack, MonadIO m) | |
=> FileAttributeMatcher |
|
-> Text |
|
-> m Bool | Returns: |
Checks if an attribute will be matched by an attribute matcher. If
the matcher was created with the "*" matching string, this function
will always return True
.
matchesOnly
fileAttributeMatcherMatchesOnly Source #
:: (HasCallStack, MonadIO m) | |
=> FileAttributeMatcher |
|
-> Text |
|
-> m Bool | Returns: |
Checks if an attribute matcher only matches a given attribute. Always
returns False
if "*" was used when creating the matcher.
new
fileAttributeMatcherNew Source #
:: (HasCallStack, MonadIO m) | |
=> Text |
|
-> m FileAttributeMatcher | Returns: a |
Creates a new file attribute matcher, which matches attributes
against a given string. GFileAttributeMatchers
are reference
counted structures, and are created with a reference count of 1. If
the number of references falls to 0, the FileAttributeMatcher
is
automatically destroyed.
The attributes
string should be formatted with specific keys separated
from namespaces with a double colon. Several "namespacekey" strings may be
concatenated with a single comma (e.g. "standardtype,standardisHidden").
The wildcard "*" may be used to match all keys and namespaces, or
"namespace::*" will match all keys in a given namespace.
Examples of file attribute matcher strings and results
"*"
: matches all attributes."standard::is-hidden"
: matches only the key is-hidden in the standard namespace."standard::type,unix::*"
: matches the type key in the standard namespace and all keys in the unix namespace.
ref
fileAttributeMatcherRef Source #
:: (HasCallStack, MonadIO m) | |
=> FileAttributeMatcher |
|
-> m FileAttributeMatcher | Returns: a |
References a file attribute matcher.
subtract
fileAttributeMatcherSubtract Source #
:: (HasCallStack, MonadIO m) | |
=> Maybe FileAttributeMatcher |
|
-> Maybe FileAttributeMatcher |
|
-> m (Maybe FileAttributeMatcher) | Returns: A file attribute matcher matching all attributes of
|
Subtracts all attributes of subtract
from matcher
and returns
a matcher that supports those attributes.
Note that currently it is not possible to remove a single
attribute when the matcher
matches the whole namespace - or remove
a namespace or attribute when the matcher matches everything. This
is a limitation of the current implementation, but may be fixed
in the future.
toString
fileAttributeMatcherToString Source #
:: (HasCallStack, MonadIO m) | |
=> Maybe FileAttributeMatcher |
|
-> m Text | Returns: a string describing the attributes the matcher matches
against or |
Prints what the matcher is matching against. The format will be
equal to the format passed to fileAttributeMatcherNew
.
The output however, might not be identical, as the matcher may
decide to use a different order or omit needless parts.
Since: 2.32
unref
fileAttributeMatcherUnref Source #
:: (HasCallStack, MonadIO m) | |
=> FileAttributeMatcher |
|
-> m () |
Unreferences matcher
. If the reference count falls below 1,
the matcher
is automatically freed.