Nate Cook
c7577bbe41
Disable stdlib tests under the OS stdlib
...
These two tests verify recent fixes, so they fail when run against
older versions of the stdlib.
2023-08-29 17:35:05 -05:00
Mike Ash
a6bab7332d
[Reflection] Handle -disable-reflection-names in _forEachField.
...
Invoke our callback with an empty name string when reflection names are disabled, rather than throwing a fatal error.
rdar://108709009
2023-05-03 08:55:28 -04:00
Josh Soref
624a54b9cf
Spelling stdlib ( #42544 )
...
* spelling: abcdefghijklmnopqrstuvwxyz
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: clazz
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: collection
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: compressible
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: constituent
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: contiguous
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: convertibility
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: element
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: enforce
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: exhaustive
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: exhausts
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: existential
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: facilitate
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: ignored
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: incorporated
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: intersection
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: laziness
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: misaligned
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: overhaul
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: preamble
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: precondition
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: replacement
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: trailing
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: unambiguous
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: uncompressible
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: world
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com >
2022-04-22 19:18:38 -07:00
Karoy Lorentey
e2cfab4f28
[stdlib][test] Adopt availability macros in tests
2021-10-31 15:00:58 -07:00
Kuba (Brecka) Mracek
8b189d99e4
Turn off SWIFT_ENABLE_REFLECTION on the stdlib_minimal preset ( #39030 )
2021-09-12 18:54:53 -07:00
Mishal Shah
23c3b15f5f
Support Xcode 13 beta
...
* Updating availability versions
* Remove all remaining overlays in stdlib/public/Darwin/*:
- ObjectiveC
- Dispatch
- CoreFoundation
- CoreGraphics
- Foundation
2021-06-07 12:04:31 -07:00
Parker Schuh
4e39e59a8a
Add a field reflection function that constructs keypaths. ( #34815 )
...
While the existing _forEachField in ReflectionMirror.swift
already gives the offsets and types for each field, this isn't
enough information to construct a keypath for that field in
order to modify it.
For reference, this should be sufficent to implement the features
described here: (https://forums.swift.org/t/storedpropertyiterable/19218/62 )
purely at runtime without any derived conformances for many types.
Note: Since there isn't enough reflection information for
`.mutatingGetSet` fields, this means that we're not able to support
reflecting certain types of fields (functions, nonfinal class fields,
etc). Whether this is an error or not is controlled by the `.ignoreUnknown`
option.
2020-11-30 09:17:23 -08:00
Nate Cook
3af1deb447
[stdlib] Add _forEachField(of:options:body:) function ( #32873 )
...
This function walks all the fields of a struct, class, or tuple, and calls
`body` with the name, offset, and type of each field. `body` can perform
any required work or validation, returning `true` to continue walking fields
or `false` to stop immediately.
2020-07-14 16:31:32 -05:00