swift

package
v1.1.160 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 8, 2023 License: MIT Imports: 3 Imported by: 4

README

swift

TODO

  • __swift5_entry
  • __swift5_builtin
  • __swift5_reflstr
  • __swift5_fieldmd
  • __swift5_assocty
  • __swift5_proto
  • __swift5_types
  • __swift5_protos
  • __swift5_capture
  • __swift5_replace
  • __swift5_replac2
  • __swift5_acfuncs
  • __swift5_mpenum ?? check Foundation

Documentation

Index

Constants

View Source
const (
	/// The name of the standard library, which is a reserved module name.
	STDLIB_NAME = "Swift"
	/// The name of the Onone support library, which is a reserved module name.
	SWIFT_ONONE_SUPPORT = "SwiftOnoneSupport"
	/// The name of the SwiftShims module, which contains private stdlib decls.
	SWIFT_SHIMS_NAME = "SwiftShims"
	/// The name of the Builtin module, which contains Builtin functions.
	BUILTIN_NAME = "Builtin"
	/// The name of the clang imported header module.
	CLANG_HEADER_MODULE_NAME = "__ObjC"
	/// The prefix of module names used by LLDB to capture Swift expressions
	LLDB_EXPRESSIONS_MODULE_NAME_PREFIX = "__lldb_expr_"

	/// The name of the fake module used to hold imported Objective-C things.
	MANGLING_MODULE_OBJC = "__C"
	/// The name of the fake module used to hold synthesized ClangImporter things.
	MANGLING_MODULE_CLANG_IMPORTER = "__C_Synthesized"

	/// The name prefix for C++ template instantiation imported as a Swift struct.
	CXX_TEMPLATE_INST_PREFIX = "__CxxTemplateInst"

	SEMANTICS_PROGRAMTERMINATION_POINT = "programtermination_point"

	/// The name of the Builtin type prefix
	BUILTIN_TYPE_NAME_PREFIX = "Builtin."
)
View Source
const (
	/// The name of the Builtin type for Int
	BUILTIN_TYPE_NAME_INT = "Builtin.Int"
	/// The name of the Builtin type for Int8
	BUILTIN_TYPE_NAME_INT8 = "Builtin.Int8"
	/// The name of the Builtin type for Int16
	BUILTIN_TYPE_NAME_INT16 = "Builtin.Int16"
	/// The name of the Builtin type for Int32
	BUILTIN_TYPE_NAME_INT32 = "Builtin.Int32"
	/// The name of the Builtin type for Int64
	BUILTIN_TYPE_NAME_INT64 = "Builtin.Int64"
	/// The name of the Builtin type for Int128
	BUILTIN_TYPE_NAME_INT128 = "Builtin.Int128"
	/// The name of the Builtin type for Int256
	BUILTIN_TYPE_NAME_INT256 = "Builtin.Int256"
	/// The name of the Builtin type for Int512
	BUILTIN_TYPE_NAME_INT512 = "Builtin.Int512"
	/// The name of the Builtin type for IntLiteral
	BUILTIN_TYPE_NAME_INTLITERAL = "Builtin.IntLiteral"
	/// The name of the Builtin type for IEEE Floating point types.
	BUILTIN_TYPE_NAME_FLOAT = "Builtin.FPIEEE"
	// The name of the builtin type for power pc specific floating point types.
	BUILTIN_TYPE_NAME_FLOAT_PPC = "Builtin.FPPPC"
	/// The name of the Builtin type for NativeObject
	BUILTIN_TYPE_NAME_NATIVEOBJECT = "Builtin.NativeObject"
	/// The name of the Builtin type for BridgeObject
	BUILTIN_TYPE_NAME_BRIDGEOBJECT = "Builtin.BridgeObject"
	/// The name of the Builtin type for RawPointer
	BUILTIN_TYPE_NAME_RAWPOINTER = "Builtin.RawPointer"
	/// The name of the Builtin type for UnsafeValueBuffer
	BUILTIN_TYPE_NAME_UNSAFEVALUEBUFFER = "Builtin.UnsafeValueBuffer"
	/// The name of the Builtin type for UnknownObject
	///
	/// This no longer exists as an AST-accessible type, but it's still used for
	/// fields shaped like AnyObject when ObjC interop is enabled.
	BUILTIN_TYPE_NAME_UNKNOWNOBJECT = "Builtin.UnknownObject"
	/// The name of the Builtin type for Vector
	BUILTIN_TYPE_NAME_VEC = "Builtin.Vec"
	/// The name of the Builtin type for SILToken
	BUILTIN_TYPE_NAME_SILTOKEN = "Builtin.SILToken"
	/// The name of the Builtin type for Word
	BUILTIN_TYPE_NAME_WORD = "Builtin.Word"
)
View Source
const MaxNumExtraInhabitants = 0x7FFFFFFF

Variables

This section is empty.

Functions

This section is empty.

Types

type ATDHeader added in v1.1.100

type ATDHeader struct {
	ConformingTypeNameOffset int32
	ProtocolTypeNameOffset   int32
	NumAssociatedTypes       uint32
	AssociatedTypeRecordSize uint32
}

type ATRecordType added in v1.1.100

type ATRecordType struct {
	NameOffset                int32
	SubstitutedTypeNameOffset int32
}

type AssociatedTypeDescriptor

type AssociatedTypeDescriptor struct {
	ATDHeader
	Address               uint64
	ConformingTypeAddr    uint64
	ConformingTypeName    string
	ProtocolTypeName      string
	AssociatedTypeRecords []AssociatedTypeRecord
}

func (AssociatedTypeDescriptor) String added in v1.1.141

func (a AssociatedTypeDescriptor) String() string

type AssociatedTypeRecord

type AssociatedTypeRecord struct {
	Name                string
	SubstitutedTypeName string
	SubstitutedTypeAddr uint64
	ATRecordType
}

type BuiltinType added in v1.1.0

type BuiltinType struct {
	Address             uint64
	Name                string
	Size                uint32
	Alignment           uint16
	BitwiseTakable      bool
	Stride              uint32
	NumExtraInhabitants uint32
}

BuiltinType builtin swift type

func (BuiltinType) String added in v1.1.100

func (b BuiltinType) String() string

type BuiltinTypeDescriptor

type BuiltinTypeDescriptor struct {
	TypeName            int32
	Size                uint32
	AlignmentAndFlags   builtinTypeFlag
	Stride              uint32
	NumExtraInhabitants uint32
}

type CaptureDescriptor

type CaptureDescriptor struct {
	Address uint64
	CaptureDescriptorHeader
	CaptureTypes    []string
	MetadataSources []MetadataSource
	Bindings        []NecessaryBindings
}

func (CaptureDescriptor) String added in v1.1.141

func (c CaptureDescriptor) String() string

type CaptureDescriptorHeader

type CaptureDescriptorHeader struct {
	NumCaptureTypes    uint32 // The number of captures in the closure and the number of typerefs that immediately follow this struct.
	NumMetadataSources uint32 // The number of sources of metadata available in the MetadataSourceMap directly following the list of capture's typerefs.
	NumBindings        uint32 // The number of items in the NecessaryBindings structure at the head of the closure.
}

type CaptureTypeRecord

type CaptureTypeRecord struct {
	MangledTypeName int32
}

type MetadataSource added in v1.1.100

type MetadataSource struct {
	MangledType           string
	MangledMetadataSource string
}

type MetadataSourceRecord

type MetadataSourceRecord struct {
	MangledTypeName       int32
	MangledMetadataSource int32
}

type NecessaryBindings added in v1.1.100

type NecessaryBindings struct {
	Kind               NecessaryBindingsKind
	RequirementsSet    int32
	RequirementsVector int32
	Conformances       int32
}

type NecessaryBindingsKind added in v1.1.101

type NecessaryBindingsKind uint32
const (
	PartialApply NecessaryBindingsKind = iota
	AsyncFunction
)

func (NecessaryBindingsKind) String added in v1.1.101

func (i NecessaryBindingsKind) String() string

type SpecialPointerAuthDiscriminators added in v1.1.100

type SpecialPointerAuthDiscriminators uint16
const (

	/// HeapMetadataHeader::destroy
	HeapDestructor SpecialPointerAuthDiscriminators = 0xbbbf

	/// Type descriptor data pointers.
	TypeDescriptor SpecialPointerAuthDiscriminators = 0xae86

	/// Runtime function variables exported by the runtime.
	RuntimeFunctionEntry SpecialPointerAuthDiscriminators = 0x625b

	/// Protocol conformance descriptors.
	ProtocolConformanceDescriptor SpecialPointerAuthDiscriminators = 0xc6eb

	/// Pointer to value witness table stored in type metadata.
	///
	/// Computed with ptrauth_string_discriminator("value_witness_table_t").
	ValueWitnessTable SpecialPointerAuthDiscriminators = 0x2e3f

	/// Extended existential type shapes.
	ExtendedExistentialTypeShape          SpecialPointerAuthDiscriminators = 0x5a3d // SpecialPointerAuthDiscriminators = 23101
	NonUniqueExtendedExistentialTypeShape SpecialPointerAuthDiscriminators = 0xe798 // SpecialPointerAuthDiscriminators = 59288

	/// Value witness functions.
	InitializeBufferWithCopyOfBuffer   SpecialPointerAuthDiscriminators = 0xda4a
	Destroy                            SpecialPointerAuthDiscriminators = 0x04f8
	InitializeWithCopy                 SpecialPointerAuthDiscriminators = 0xe3ba
	AssignWithCopy                     SpecialPointerAuthDiscriminators = 0x8751
	InitializeWithTake                 SpecialPointerAuthDiscriminators = 0x48d8
	AssignWithTake                     SpecialPointerAuthDiscriminators = 0xefda
	DestroyArray                       SpecialPointerAuthDiscriminators = 0x2398
	InitializeArrayWithCopy            SpecialPointerAuthDiscriminators = 0xa05c
	InitializeArrayWithTakeFrontToBack SpecialPointerAuthDiscriminators = 0x1c3e
	InitializeArrayWithTakeBackToFront SpecialPointerAuthDiscriminators = 0x8dd3
	StoreExtraInhabitant               SpecialPointerAuthDiscriminators = 0x79c5
	GetExtraInhabitantIndex            SpecialPointerAuthDiscriminators = 0x2ca8
	GetEnumTag                         SpecialPointerAuthDiscriminators = 0xa3b5
	DestructiveProjectEnumData         SpecialPointerAuthDiscriminators = 0x041d
	DestructiveInjectEnumTag           SpecialPointerAuthDiscriminators = 0xb2e4
	GetEnumTagSinglePayload            SpecialPointerAuthDiscriminators = 0x60f0
	StoreEnumTagSinglePayload          SpecialPointerAuthDiscriminators = 0xa0d1

	/// KeyPath metadata functions.
	KeyPathDestroy           SpecialPointerAuthDiscriminators = 0x7072
	KeyPathCopy              SpecialPointerAuthDiscriminators = 0x6f66
	KeyPathEquals            SpecialPointerAuthDiscriminators = 0x756e
	KeyPathHash              SpecialPointerAuthDiscriminators = 0x6374
	KeyPathGetter            SpecialPointerAuthDiscriminators = 0x6f72
	KeyPathNonmutatingSetter SpecialPointerAuthDiscriminators = 0x6f70
	KeyPathMutatingSetter    SpecialPointerAuthDiscriminators = 0x7469
	KeyPathGetLayout         SpecialPointerAuthDiscriminators = 0x6373
	KeyPathInitializer       SpecialPointerAuthDiscriminators = 0x6275
	KeyPathMetadataAccessor  SpecialPointerAuthDiscriminators = 0x7474

	/// ObjC bridging entry points.
	ObjectiveCTypeDiscriminator SpecialPointerAuthDiscriminators = 0x31c3 // SpecialPointerAuthDiscriminators = 12739

	/// Dynamic replacement pointers.
	DynamicReplacementScope SpecialPointerAuthDiscriminators = 0x48F0 // SpecialPointerAuthDiscriminators = 18672
	DynamicReplacementKey   SpecialPointerAuthDiscriminators = 0x2C7D // SpecialPointerAuthDiscriminators = 11389

	/// Resume functions for yield-once coroutines that yield a single
	/// opaque borrowed/inout value.  These aren't actually hard-coded, but
	/// they're important enough to be worth writing in one place.
	OpaqueReadResumeFunction   SpecialPointerAuthDiscriminators = 56769
	OpaqueModifyResumeFunction SpecialPointerAuthDiscriminators = 3909

	/// ObjC class pointers.
	ObjCISA        SpecialPointerAuthDiscriminators = 0x6AE1
	ObjCSuperclass SpecialPointerAuthDiscriminators = 0xB5AB

	/// Resilient class stub initializer callback
	ResilientClassStubInitCallback SpecialPointerAuthDiscriminators = 0xC671

	/// Jobs, tasks, and continuations.
	JobInvokeFunction                SpecialPointerAuthDiscriminators = 0xcc64 // SpecialPointerAuthDiscriminators = 52324
	TaskResumeFunction               SpecialPointerAuthDiscriminators = 0x2c42 // SpecialPointerAuthDiscriminators = 11330
	TaskResumeContext                SpecialPointerAuthDiscriminators = 0x753a // SpecialPointerAuthDiscriminators = 30010
	AsyncRunAndBlockFunction         SpecialPointerAuthDiscriminators = 0x0f08 // 3848
	AsyncContextParent               SpecialPointerAuthDiscriminators = 0xbda2 // SpecialPointerAuthDiscriminators = 48546
	AsyncContextResume               SpecialPointerAuthDiscriminators = 0xd707 // SpecialPointerAuthDiscriminators = 55047
	AsyncContextYield                SpecialPointerAuthDiscriminators = 0xe207 // SpecialPointerAuthDiscriminators = 57863
	CancellationNotificationFunction SpecialPointerAuthDiscriminators = 0x1933 // SpecialPointerAuthDiscriminators = 6451
	EscalationNotificationFunction   SpecialPointerAuthDiscriminators = 0x5be4 // SpecialPointerAuthDiscriminators = 23524
	AsyncThinNullaryFunction         SpecialPointerAuthDiscriminators = 0x0f08 // SpecialPointerAuthDiscriminators = 3848
	AsyncFutureFunction              SpecialPointerAuthDiscriminators = 0x720f // SpecialPointerAuthDiscriminators = 29199

	/// Swift async context parameter stored in the extended frame info.
	SwiftAsyncContextExtendedFrameEntry SpecialPointerAuthDiscriminators = 0xc31a // SpecialPointerAuthDiscriminators = 49946

	// C type TaskContinuationFunction* descriminator.
	ClangTypeTaskContinuationFunction SpecialPointerAuthDiscriminators = 0x2abe // SpecialPointerAuthDiscriminators = 10942

	/// Dispatch integration.
	DispatchInvokeFunction SpecialPointerAuthDiscriminators = 0xf493 // SpecialPointerAuthDiscriminators = 62611

	/// Functions accessible at runtime (i.e. distributed method accessors).
	AccessibleFunctionRecord SpecialPointerAuthDiscriminators = 0x438c // = 17292
)

func (SpecialPointerAuthDiscriminators) String added in v1.1.100

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL