ParamSpec
open class ParamSpec : ParamSpecProtocol
GParamSpec
is an object structure that encapsulates the metadata
required to specify parameters, such as e.g. GObject
properties.
Parameter names #
A property name consists of one or more segments consisting of ASCII letters
and digits, separated by either the -
or _
character. The first
character of a property name must be a letter. These are the same rules as
for signal naming (see g_signal_new()
).
When creating and looking up a GParamSpec
, either separator can be
used, but they cannot be mixed. Using -
is considerably more
efficient, and is the ‘canonical form’. Using _
is discouraged.
The ParamSpec
type acts as a reference-counted owner of an underlying GParamSpec
instance.
It provides the methods that can operate on this data type through ParamSpecProtocol
conformance.
Use ParamSpec
as a strong reference or owner of a GParamSpec
instance.
-
Untyped pointer to the underlying `GParamSpec` instance.
For type-safe access, use the generated, typed pointer
param_spec_ptr
property instead.Declaration
Swift
public let ptr: UnsafeMutableRawPointer!
-
Designated initialiser from the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init(_ op: UnsafeMutablePointer<GParamSpec>)
Parameters
op
pointer to the underlying object
-
Designated initialiser from a constant pointer to the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init(_ op: UnsafePointer<GParamSpec>)
Parameters
op
pointer to the underlying object
-
Optional initialiser from a non-mutating
gpointer
to the underlyingC
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init!(gpointer op: gpointer?)
Parameters
op
gpointer to the underlying object
-
Optional initialiser from a non-mutating
gconstpointer
to the underlyingC
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init!(gconstpointer op: gconstpointer?)
Parameters
op
pointer to the underlying object
-
Optional initialiser from a constant pointer to the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init!(_ op: UnsafePointer<GParamSpec>?)
Parameters
op
pointer to the underlying object
-
Optional initialiser from the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init!(_ op: UnsafeMutablePointer<GParamSpec>?)
Parameters
op
pointer to the underlying object
-
Designated initialiser from the underlying
C
data type. Will retainGParamSpec
. i.e., ownership is transferred to theParamSpec
instance.Declaration
Swift
@inlinable public init(retaining op: UnsafeMutablePointer<GParamSpec>)
Parameters
op
pointer to the underlying object
-
Reference intialiser for a related type that implements
ParamSpecProtocol
Will retainGParamSpec
.Declaration
Swift
@inlinable public init<T>(_ other: T) where T : ParamSpecProtocol
Parameters
other
an instance of a related type that implements
ParamSpecProtocol
-
Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init<T>(cPointer p: UnsafeMutablePointer<T>)
Parameters
cPointer
pointer to the underlying object
-
Unsafe typed, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init<T>(retainingCPointer cPointer: UnsafeMutablePointer<T>)
Parameters
cPointer
pointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init(raw p: UnsafeRawPointer)
Parameters
p
raw pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init(retainingRaw raw: UnsafeRawPointer)
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public required init(raw p: UnsafeMutableRawPointer)
Parameters
p
mutable raw pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init(retainingRaw raw: UnsafeMutableRawPointer)
Parameters
raw
mutable raw pointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init(opaquePointer p: OpaquePointer)
Parameters
p
opaque pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
ParamSpecProtocol
.Declaration
Swift
@inlinable public init(retainingOpaquePointer p: OpaquePointer)
Parameters
p
opaque pointer to the underlying object
-
Creates a new
GParamSpec
instance.See canonical parameter names for details of the rules for
name
. Names which violate these rules lead to undefined behaviour.Beyond the name,
GParamSpecs
have two more descriptive strings associated with them, thenick
, which should be suitable for use as a label for the property in a property editor, and theblurb
, which should be a somewhat longer description, suitable for e.g. a tooltip. Thenick
andblurb
should ideally be localized.Declaration
Swift
@inlinable public static func internal_(paramType: GType, name: UnsafePointer<gchar>!, nick: UnsafePointer<gchar>!, blurb: UnsafePointer<gchar>!, flags: ParamFlags) -> GLibObject.ParamSpec!