-
Notifications
You must be signed in to change notification settings - Fork 26
Home
Azoy edited this page May 6, 2021
·
5 revisions
- ContextDescriptorKind: A discriminator to determine what type of context a descriptor is.
- FieldDescriptor.Kind: A discriminator to determine what type of context this field descriptor is describing.
- GenericParameterKind: A discriminator to determine what type of parameter a generic parameter is.
- GenericRequirementKind: A discriminator to determine what kind of requirement a generic requirement is.
- GenericRequirementLayoutKind: A discriminator to determine what layout a layout requirement has.
- MethodDescriptor.Kind: A discriminator to indicate what kind of method a method descriptor is.
- ProtocolRequirement.Kind: A discriminator to determine what kind of protocol requirement this is.
- ReferenceStorageKind: A discriminator to determine what kind of reference storage modifier a field is.
- MetadataInitializationKind: A discriminator to determine what kind of initialization this metadata goes through, if any.
- TypeReferenceKind: The type of reference this is to some type.
- MetadataKind: A discriminator that determines what type of metadata this is.
- MetadataState: The public and current state of a metadata record.
- SpecialProtocol: A discriminator to determine the special protocolness of an existential.
- FunctionConvention: A discriminator to determine what calling convention a function has.
- ValueOwnership: A discriminator to determine what the ownership rules are (currently) for a function parameter.
- KnownMetadata
- KnownMetadata.Builtin
- AnonymousDescriptor: An anonymous descriptor describes a context which is anonymous, like a function or a private declaration will have an anonymous parent context.
- ClassDescriptor: A class descriptor that descibes some class context.
- VTableDescriptorHeader: Structure that helps in determining where the vtable for a class is within the type metadata and how many vtable entries there are.
- MethodDescriptor: Structure that describes a class or protocol method.
- OverrideTableHeader: Structure that tells the number of method override entries in a class descriptor.
- MethodOverrideDescriptor: A method override descriptor describes the method being overriden from what class.
- MetadataBounds: Bounds for metadata objects.
- AnonymousDescriptor.Flags: The specific flags that describe an anonymous descriptor.
- ContextDescriptorFlags: The flags which describe a context descriptor.
- FieldRecord.Flags: The flags which describe a field record.
- GenericMetadataPattern.Flags: Flags that describe this generic metadata pattern.
- GenericParameterDescriptor: The flags that describe a generic parameter.
- GenericRequirementDescriptor.Flags: The flags that describe a generic requirement.
- MethodDescriptor.Flags: Flags that describe a method descriptor.
- ProtocolDescriptor.Flags: The flags that describe a protocol descriptor.
- ProtocolRequirement.Flags: The flags that describe a protocol requirement.
- TypeContextDescriptorFlags: The flags which describe a type's context descriptor.
- EnumDescriptor: An enum descriptor that describes some enum context.
- ExtensionDescriptor: An extension descriptor that describes some extension context.
- FieldDescriptor: A special descriptor that describes a type's fields.
- FieldRecord: A record that describes a single stored property or an enum case.
- GenericContext: A generic context describes the generic information about some generic context.
- GenericRequirementDescriptor: This descriptor describes any generic requirement in either a generic context or in a protocol's requirement signature.
- TypeGenericContext: A type generic context is an extension of a generic context for contexts that define some type in Swift. Currently that includes structs, classes, and enums. While protocols do define a type, they aren't considered type contexts.
- GenericMetadataPattern: An instantiation pattern for metadata.
- ModuleDescriptor: A module descriptor that describes some Swift module.
- OpaqueDescriptor: Represents a descriptor for an opaque type.
- ProtocolDescriptor: A protocol descriptor that describes some protocol context.
- ProtocolRequirement: A protocol requirement that is defined in some protocol.
- StructDescriptor: A struct descriptor that describes some structure context.
- ForeignMetadataInitialization: Structure that contains the completion function for initializing singleton foreign metadata.
- SingletonMetadataInitialization: Structure that contains information needed to perform initialization of singleton value metadata.
-
ClassMetadata:
The metadata structure that represents a
class
type in Swift. -
EnumMetadata:
The metadata structure that represents an
enum
type in Swift. - EnumValueWitnessTable: The value witness table for enums that have enum specific value witness functions.
-
ExistentialMetadata:
The metadata structure that represents some existential type, mainly
protocol
s, in Swift. - ExistentialMetatypeMetadata: The metadata structure that represents a metatype wrapping an existential type.
- ForeignClassMetadata: The metadata structure that represents a foreign reference counted object from another language that Swift observes.
- FunctionMetadata: The metadata structure that represents a function type in Swift.
- HeapGenericLocalVariableMetadata: The metadata structure that represents generic boxes that are instantiated at runtime.
- HeapLocalVariableMetadata: The metadata structure that represents local variables that are heap allocated.
- MetadataAccessFunction: The Metadata Access Function is a special function within every type context descriptor that instantiates metadata of that type.
- MetadataRequest: A metadata request is a "request" to a runtime function that returns some metadata in some state, either blocking until the runtime can produce said metadata, or non-blocking returning an abstract metadata record.
- MetadataResponse: A metadata response is the return type for some runtime functions that either produce metadata or check it.
- ClassMetadata.Flags: The flags that describe some class metadata.
- ExistentialMetadata.Flags: The flags that describe some existential metadata.
- FunctionMetadata.Flags: The flags that describe some function metadata.
- FunctionMetadata.ParamFlags: The flags that represent some function parameter.
- ValueWitnessTable.Flags: The flags that describe some value witness table.
- MetatypeMetadata: The metadata structure that represents a metatype wrapping some instance type.
- ObjCClassWrapperMetadata: The metadata structure that represents an Objective-C class that wasn't Swift compiled.
- OpaqueMetadata: The metadata structure that represents some opaque type in Swift. An opaque type might include a private structure, or perhaps some metadata for the various Builtin types in Swift.
-
StructMetadata:
The metadata structure that represents a
struct
type in Swift. - TupleMetadata: The metadata structure that represents a tuple type in Swift.
- TupleMetadata.Element: The structure that represents a tuple element in some tuple metadata.
- ValueWitnessTable: The value witness table is a table of function pointers that describe how to properly copy, destroy, etc. memory for a given type. It also contains type layout information about the type including size, stride, and alignment.
- ConformanceDescriptor: A structure that helps describe a particular conformance in Swift. Information includes what type is being conformed to what protocol, some flags like if the conformance is retroactive, has conditional requirements, etc.
- AnyExistentialContainer: An any existential container holds the necessary information for any value with type Any. I.e. the type erased type.
- ExistentialContainer: An existential container is a type in Swift that contains some struct or class with information of what the type it's containing is, and the witness tables needed that the existential (protocol) is.
- DualExistentialContainer: An existential container is a type in Swift that contains some struct or class with information of what the type it's containing is, and the witness tables needed that the existential (protocol) is. Dual supports an existential that is composed of two protocols. E.g. X & Y
- BoxPair: A box pair is the pair of heap object + value within said heap object. When you allocate a new box, you're given a pointer to the heap object along with a pointer to the value inside the heap object.
- HeapObject: Some object whose value is being stored on the heap and is being reference counted by the Swift runtime.
- ConformanceDescriptor.Flags: The flags that describe a conformance to a protocol for a type.
- WitnessTable: In its simpliest form, a witness table is simply a table of function pointers that fulfill the requirements a protocol imposes. Witness tables instruct exactly how a type conforms to a protocol and the functions needed to satisy a protocol requirement.
- ContextDescriptor: A context descriptor describes any entity in Swift that contains other types or contexts.
- TypeContextDescriptor: A type context descriptor is a context descriptor who defines some new type. This includes structs, classes, and enums. Protocols also define a new type, but aren't considered type context descriptors.
- Metadata: Metadata refers to the Swift metadata records in a given binary. All metadata records include a value witness table, which describe how to properly copy, destroy, etc. the memory of a type, along with a given "kind".
- TypeMetadata: Type metadata refers to those metadata records who declare a new type in Swift. Said metadata records only refer to structs, classes, and enums.
- reflect(_:): The main entry point to grab type metadata from some metatype.
- reflect(_:): The main entry point to grab type metadata from some instance.
-
reflectClass(_:):
The main entry point to grab a
class
's metadata from some metatype that represents aclass
. -
reflectClass(_:):
The main entry point to grab a
class
's metadata from some instance. -
reflectEnum(_:):
The main entry point to grab an
enum
's metadata from some metatype that represents aenum
. -
reflectEnum(_:):
The main entry point to grab a
enum
's metadata from some instance. -
reflectStruct(_:):
The main entry point to grab a
struct
's metadata from some metatype that represents astruct
. -
reflectStruct(_:):
The main entry point to grab a
struct
's metadata from some instance. -
container(for:):
Given an
Any
value, return the container that represents the value. - swift_allocBox(for:)
- swift_allocBox(for:)
- swift_allocObject(for:size:alignment:): Allocates a new reference counted class instance.
- swift_getTypeName(for:qualified:): Gets the types name, either qualified (full name representation), or non qualified (just the type name).
- swift_getTypeName(for:qualified:): Gets the types name, either qualified (full name representation), or non qualified (just the type name).
- swift_conformsToProtocol(type:protocol:): Checks whether the type conforms to the given protocol.
- swift_conformsToProtocol(metadata:protocol:): Checks whether the type conforms to the given protocol.
Generated at 2021-05-06T17:56:33+0000 using swift-doc 1.0.0-beta.6.
Types
- AnonymousDescriptor
- AnonymousDescriptor.Flags
- AnyExistentialContainer
- BoxPair
- ClassDescriptor
- ClassMetadata
- ClassMetadata.Flags
- ConformanceDescriptor
- ConformanceDescriptor.Flags
- ContextDescriptorFlags
- ContextDescriptorKind
- DualExistentialContainer
- EnumDescriptor
- EnumMetadata
- EnumValueWitnessTable
- ExistentialContainer
- ExistentialMetadata
- ExistentialMetadata.Flags
- ExistentialMetatypeMetadata
- ExtensionDescriptor
- FieldDescriptor
- FieldDescriptor.Kind
- FieldRecord
- FieldRecord.Flags
- ForeignClassMetadata
- ForeignMetadataInitialization
- FunctionConvention
- FunctionMetadata
- FunctionMetadata.Flags
- FunctionMetadata.ParamFlags
- GenericContext
- GenericMetadataPattern
- GenericMetadataPattern.Flags
- GenericParameterDescriptor
- GenericParameterKind
- GenericRequirementDescriptor
- GenericRequirementDescriptor.Flags
- GenericRequirementKind
- GenericRequirementLayoutKind
- HeapGenericLocalVariableMetadata
- HeapLocalVariableMetadata
- HeapObject
- KnownMetadata
- KnownMetadata.Builtin
- MetadataAccessFunction
- MetadataBounds
- MetadataInitializationKind
- MetadataKind
- MetadataRequest
- MetadataResponse
- MetadataState
- MetatypeMetadata
- MethodDescriptor
- MethodDescriptor.Flags
- MethodDescriptor.Kind
- MethodOverrideDescriptor
- ModuleDescriptor
- ObjCClassWrapperMetadata
- OpaqueDescriptor
- OpaqueMetadata
- OverrideTableHeader
- ProtocolDescriptor
- ProtocolDescriptor.Flags
- ProtocolRequirement
- ProtocolRequirement.Flags
- ProtocolRequirement.Kind
- ReferenceStorageKind
- SingletonMetadataInitialization
- SpecialProtocol
- StructDescriptor
- StructMetadata
- TupleMetadata
- TupleMetadata.Element
- TypeContextDescriptorFlags
- TypeGenericContext
- TypeReferenceKind
- VTableDescriptorHeader
- ValueOwnership
- ValueWitnessTable
- ValueWitnessTable.Flags
- WitnessTable