Skip to content

StructDescriptor

Azoy edited this page May 6, 2021 · 2 revisions

StructDescriptor

A struct descriptor that describes some structure context.

public struct StructDescriptor: TypeContextDescriptor, LayoutWrapper 

ABI Stability: Stable since the following

| macOS | iOS/tvOS | watchOS | Linux | Windows |
|-------|----------|---------|-------|---------|
| 10.14 | 12.2     | 5.2     | NA    | NA      |

Inheritance

TypeContextDescriptor, LayoutWrapper

Properties

ptr

Backing context descriptor pointer.

public let ptr: UnsafeRawPointer

numFields

The number of stored properties this struct defines.

public var numFields: Int 

fieldOffsetVectorOffset

The number of words from the metadata pointer to the vector of field offsets for this struct. E.g. If this is 2:​ let fieldOffsetVector = metadataPtr + MemoryLayout.size * 2 // fieldOffsetVector is a buffer pointer to Int32's that tell the // stored offset for a specific field at index i.

public var fieldOffsetVectorOffset: Int 

foreignMetadataInitialization

The foreign metadata initialization info for this struct metadata, if it has any.

public var foreignMetadataInitialization: ForeignMetadataInitialization? 

singletonMetadataInitialization

The singleton metadata initialization info for this struct metadata, if it has any.

public var singletonMetadataInitialization: SingletonMetadataInitialization? 
Types
Protocols
Global Variables
Global Functions
Clone this wiki locally