TypeInfoRef

public struct TypeInfoRef : TypeInfoProtocol

The TypeInfoRef type acts as a lightweight Swift reference to an underlying GTypeInfo instance. It exposes methods that can operate on this data type through TypeInfoProtocol conformance. Use TypeInfoRef only as an unowned reference to an existing GTypeInfo instance.

This structure is used to provide the type system with the information required to initialize and destruct (finalize) a type’s class and its instances.

The initialized structure is passed to the g_type_register_static() function (or is copied into the provided GTypeInfo structure in the g_type_plugin_complete_type_info()). The type system will perform a deep copy of this structure, so its memory does not need to be persistent across invocation of g_type_register_static().

  • ptr
    Untyped pointer to the underlying `GTypeInfo` instance.
    

    For type-safe access, use the generated, typed pointer _ptr property instead.

    Declaration

    Swift

    public let ptr: UnsafeMutableRawPointer!

TypeInfo Record

  • Designated initialiser from the underlying C data type

    Declaration

    Swift

    @inlinable
    init(_ p: UnsafeMutablePointer<GTypeInfo>)
  • Designated initialiser from a constant pointer to the underlying C data type

    Declaration

    Swift

    @inlinable
    init(_ p: UnsafePointer<GTypeInfo>)
  • Conditional initialiser from an optional pointer to the underlying C data type

    Declaration

    Swift

    @inlinable
    init!(_ maybePointer: UnsafeMutablePointer<GTypeInfo>?)
  • Conditional initialiser from an optional, non-mutable pointer to the underlying C data type

    Declaration

    Swift

    @inlinable
    init!(_ maybePointer: UnsafePointer<GTypeInfo>?)
  • Conditional initialiser from an optional gpointer

    Declaration

    Swift

    @inlinable
    init!(gpointer g: gpointer?)
  • Conditional initialiser from an optional, non-mutable gconstpointer

    Declaration

    Swift

    @inlinable
    init!(gconstpointer g: gconstpointer?)
  • Reference intialiser for a related type that implements TypeInfoProtocol

    Declaration

    Swift

    @inlinable
    init<T>(_ other: T) where T : TypeInfoProtocol
  • Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to TypeInfoProtocol.

    Declaration

    Swift

    @inlinable
    init<T>(cPointer: UnsafeMutablePointer<T>)
  • Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to TypeInfoProtocol.

    Declaration

    Swift

    @inlinable
    init<T>(constPointer: UnsafePointer<T>)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to TypeInfoProtocol.

    Declaration

    Swift

    @inlinable
    init(mutating raw: UnsafeRawPointer)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to TypeInfoProtocol.

    Declaration

    Swift

    @inlinable
    init(raw: UnsafeMutableRawPointer)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to TypeInfoProtocol.

    Declaration

    Swift

    @inlinable
    init(opaquePointer: OpaquePointer)