Basics
Guides
API Reference
Basics
Guides
API Reference
[24:7] extends: object
A GPatternSpec struct is the ‘compiled’ form of a glob-style pattern. The
[func@GLib.pattern_match_simple] and [method@GLib.PatternSpec.match]
functions match a string against a pattern containing * and ? wildcards
with similar semantics as the standard glob() function: * matches an
arbitrary, possibly empty, string, ? matches an arbitrary character. Note
that in contrast to glob(), the / character can be matched
by the wildcards, there are no […] character ranges and * and ? can not
be escaped to include them literally in a pattern. When multiple strings must
be matched against the same pattern, it is better to compile the pattern to a
[struct@GLib.PatternSpec] using [ctor@GLib.PatternSpec.new] and use
[method@GLib.PatternSpec.match_string] instead of
[func@GLib.pattern_match_simple]. This avoids the overhead of repeated
pattern compilation.
GPatternSpec (pattern = null)
Compiles a pattern to a [type@GLib.PatternSpec].
pattern is a zero-terminated UTF-8 encoded string.toNativeHandle (Source)
Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from
fn.call(...), another generated wrapper exposinghandle(), or null. Returns null when the argument carries no pointer.
Source is the raw handle, raw buffer, wrapper, or null.A raw pointer carrier or null when no pointer is present.getLib ()
Returns the opened native library for this generated wrapper.
The opened native library.handle ()
Returns the wrapped NativeHandle.
The wrapped NativeHandle.isNull ()
Returns true when the wrapped handle is null.
A bool.describe ()
Returns a small string for debugging generated wrappers.
A string.copy ()
Copies @pspec in a new [type@GLib.PatternSpec].
a copy of @pspec..equal (object pspec2)
Compares two compiled pattern specs and returns whether they will match the same set of strings.
pspec2 is another #GPatternSpec.Whether the compiled patterns are equal.free ()
Frees the memory allocated for the [type@GLib.PatternSpec].
None.match (int string_length, string arg2String, string string_reversed)
Matches a string against a compiled pattern. Passing the correct length of the string given is mandatory. The reversed string can be omitted by passing
NULL, this is more efficient if the reversed version of the string to be matched is not at hand, as [method@GLib.PatternSpec.match] will only construct it if the compiled pattern requires reverse matches. Note that, if the user code will (possibly) match a string against a multitude of patterns containing wildcards, chances are high that some patterns will require a reversed string. In this case, it’s more efficient to provide the reversed string to avoid multiple constructions thereof in the various calls to [method@GLib.PatternSpec.match]. Note also that the reverse of a UTF-8 encoded string can in general not be obtained by [func@GLib.strreverse]. This works only if the string does not contain any multibyte characters. GLib offers the [func@GLib.utf8_strreverse] function to reverse UTF-8 encoded strings.
string_length is the length of @string (in bytes, i.e. strlen(), not [func@GLib.utf8_strlen]).string is the UTF-8 encoded string to match.string_reversed is the reverse of @string.%TRUE if @string matches @pspec.match_string (string arg1String)
Matches a string against a compiled pattern. If the string is to be matched against more than one pattern, consider using [method@GLib.PatternSpec.match] instead while supplying the reversed string.
string is the UTF-8 encoded string to match.%TRUE if @string matches @pspec.
Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.