Karoy Lorentey
dd40ff2929
[stdlib][NFC] Put stored properties & primary initializers before other members in struct declarations
2021-10-05 22:01:35 -07:00
Paul Hudson
06f82a53b5
Replaced the majority of ' : ' with ': '.
2019-07-18 20:46:07 +01:00
Ben Cohen
e9d4687e31
De-underscore @frozen, apply it to structs ( #24185 )
...
* De-underscore @frozen for enums
* Add @frozen for structs, deprecate @_fixed_layout for them
* Switch usage from _fixed_layout to frozen
2019-05-30 17:55:37 -07:00
Ben Cohen
df2307e035
[stdlib][DNM] Collapse sequence and collection wrappers ( #20221 )
...
* Concretize dropFirst/Last/sufix/prefix from Sequence
Remove split customization point
Eliminate SubSequence from Sequence protocol
Collapse LazyCollection
Collapse LazyMapCollection
Eliminate _SequenceWrapper
Collapse LazyFilterCollection
Collapse LazyDrop/PrefixWhileCollection
Fix tests, ABI stability update
Collapse FlattenSequence
* Add entries to source/ABI compatible expected results.
* Update tests to avoid pre-10.14 objc runtime bug
* Expunge _preprocessingPass
2018-11-14 10:05:58 -08:00
Ben Cohen
9ce2143335
Additional ownership annotations
2018-10-03 19:10:22 -07:00
Ben Cohen
6cc6f4f182
Underscore @usableFromInlinable symbols ( #19686 )
2018-10-03 12:01:28 -07:00
Ben Cohen
ae6f5dd604
[stdlib] Add consuming/owned annotations to Collection implementations ( #19360 )
...
* Add consuming/owned annotations to Collection implementations
* Update SILOptimizer tests
* Fix access_marker_verify test
* XFAIL reconstruct_type_from_mangled_name
2018-09-21 12:06:56 -07:00
Ben Cohen
412a045f71
[stdlib] JAFIA ( #19074 )
...
* Lazy/generic types needing specialization
* Move DictionaryLiteral typealias to compatibility shims file
* Static String is mainly transparent so needs no inlining
* UnboundedRange hack doesn't need inlining
* Unmanaged needs unsafe performance
* Onone enum namespace
* Output stream specialize-never and calls to lock/unlock don't need inlining
* no need for @_frozen on internal enum
* DropWhile needs lazy-performance
2018-09-19 19:41:06 -07:00
Ben Cohen
293da8fa3e
[stdlib] YAIAPR ( #18956 )
...
* Scrap Comparable conformance for _SwiftNSOperatingSystemVersion
* Lazy performance needs specialization
* Uninline dump/stdout
* Bool consistency
* fixup CollectionOld
* Uninline printing functions
2018-08-24 14:00:19 -07:00
Ben Cohen
a4230ab2ad
[stdlib] Update stdlib to 4.0 and reorganize compatibility shims ( #17580 )
...
* Update stdlib to 4.0 and move all compatibility shims into a dedicated source file
2018-06-29 06:26:52 -07:00
Slava Pestov
e1f50b2d36
SE-0193: Rename @_inlineable to @inlinable, @_versioned to @usableFromInline
2018-03-30 21:55:30 -07:00
Jordan Rose
9034ba617b
Ban @_fixed_layout on enums in favor of @_frozen
...
In theory there could be a "fixed-layout" enum that's not exhaustive
but promises not to add any more cases with payloads, but we don't
need that distinction today.
(Note that @objc enums are still "fixed-layout" in the actual sense of
"having a compile-time known layout". There's just no special way to
spell that.)
2018-03-20 14:49:10 -07:00
Max Moiseev
5650f80937
[stdlib] Annotate types with @_fixed_layout
...
This will allows us to build the standard library in resilient mode by
default, hopefully, without performance regression.
<rdar://problem/36362648>
2018-01-09 14:46:30 -08:00
Ben Cohen
9361a6b66f
[stdlib] Nest Iterator and Index types for various stdlib types ( #13489 )
...
* Nest various top-level Iterator and Index types, and flatten extensions.
* Fix tests from nesting iterator
* Nest Unsafe*BufferPointer.Iterator, extensionify UnsafeBufferPointer
* Degyb LazyCollection
* Nest Flatten iterator and index
2017-12-18 15:27:35 -08:00
Max Moiseev
a24998a5b1
[stdlib] Add missing @_fixed_layout attributes to fix resilience build
2017-10-02 15:19:06 -07:00
Max Moiseev
53b8419279
[stdlib] Make all the stdlib APIs @_inlineable
...
This change in theory should allow us to remove a special stdlib-only
sil-serialize-all compilation mode.
<rdar://problem/34138683>
2017-09-29 11:26:56 -07:00
Maxim Moiseev
ee5fb33656
[stdlib] Remove the Grand Renaming artifacts of Swift 3 era
2017-08-28 15:54:11 -07:00
Nate Cook
b7af9bfe83
[stdlib] Remove SeeAlso tags
2017-06-13 11:23:51 -05:00
Ben Cohen
ea2f64cad2
[stdlib] Add Sequence.Element, change ExpressibleByArrayLiteral.Element to ArrayLiteralElement ( #8990 )
...
* Give Sequence a top-level Element, constrain Iterator to match
* Remove many instances of Iterator.
* Fixed various hard-coded tests
* XFAIL a few tests that need further investigation
* Change assoc type for arrayLiteralConvertible
* Mop up remaining "better expressed as a where clause" warnings
* Fix UnicodeDecoders prototype test
* Fix UIntBuffer
* Fix hard-coded Element identifier in CSDiag
* Fix up more tests
* Account for flatMap changes
2017-05-14 06:33:25 -07:00
practicalswift
6d1ae2a39c
[gardening] 2016 → 2017
2017-01-06 16:41:22 +01:00
practicalswift
797b80765f
[gardening] Use the correct base URL ( https://swift.org ) in references to the Swift website
...
Remove all references to the old non-TLS enabled base URL (http://swift.org )
2016-11-20 17:36:03 +01:00
Nicholas Maccharoli
5bb7baab7f
[stdlib] simplify loop logic
2016-09-01 17:58:46 +09:00
Nate Cook
559092bbf2
[stdlib] Revise stdlib documentation comments
...
- Expand pre-example explanations
- Update documentation for SE-0118
- Removing remaining 'iff' usage
- Revise Array discussion
- Fix formIndex(_:offsetBy) parameter formatting
- Improve index/formIndex(_:offsetBy:(limitedBy:)?) discussion
- Update Quick Look discussions
- Fixes grammar inconsistencies
- Adds parameter / return documentation
- Adds and expands on examples
- Revises AnyObject discussion for new `id` bridging rules
- Revise readLine, print, and assertion functions
- Add missing docs to String index-moving methods
2016-08-05 16:07:46 -05:00
Jacob Bandes-Storch
a0bf9b8e71
[stdlib] Update doc comments for SE-0133
2016-07-28 15:58:50 -07:00
Jay Buffington
f17d9a8d67
Stdlib doc fixes ( #3684 )
...
* [stdlib] Correct documentation for joined (join -> joined)
* [stdlib] Correct example in documentation for Unmanaged.toOpaque
Fixes <https://bugs.swift.org/browse/SR-1911 >.
2016-07-23 00:00:41 -05:00
Dmitri Gribenko
824bccc871
stdlib: change Collection._copyToNativeArrayBuffer() to be defined in terms of public types
2016-07-11 10:54:43 -07:00
Rintaro Ishizaki
6ef62f3c73
[stdlib] Better diagnosis for unavailable APIs
...
Added tests for expected-error and fix-its.
- Add arguments signature regardless that is the same as before.
Because the error message looks more natural.
e.g. "makeIterator" => "makeIterator()",
"replaceSubrange" => "replaceSubrange(_:with:)"
- Any${ExistentialCollection}.underestimateCount() was a method, not
computed property.
- 'LazySequenceType' has been renamed to 'LazySequenceProtocol', but not
'LazyCollectionProtocol'
- Streamable.writeTo(_:) had no argument label.
- Fixed typo in print() debugPrint() error message (not working for now)
- Repeated.init(): changed `renamed` to `message` because the arugment
order has changed.
- Marked `public` for some unavailable method on `Sequence`
- Sequence.split(_:maxSplit:allowEmptySlices) was replaced with
split(separator:maxSplits:omittingEmptySubsequences:),
not split(separator:omittingEmptySubsequences:isSeparator:)
- Sequence.split(_:allowEmptySlices:isSeparator) was replaced with
split(maxSplits:omittingEmptySubsequences:isSeparator:),
not split(_:omittingEmptySubsequences:isSeparator:)
- Sequence.startsWith(_:isEquivalent:) or startsWith(_:) had no label on
the first argument.
- transcode(_:_:_:_:stopOnError), not transcode(_:_:_:_:stoppingOnError)
- Removed mutating methods from UnsafePointer.
alloc(_:), dealloc(_:), setter:memory, initialize(_:), destroy(),
and destroy(_:)
2016-07-01 14:52:09 +09:00
Rintaro Ishizaki
d83dedd856
[stdlib] Better fixit
...
removeAtIndex(_:) => remove(at:)
joinedWithSeparator(_:) => joined(separator:)
2016-06-15 22:12:47 +09:00
Rintaro Ishizaki
668b9dbc64
[stdlib] Apply tail style "where" clause to stdlib/public/core
2016-06-02 12:00:55 +09:00
Patrick Pijnappel
daec2dae00
Resolve conflicts with master
2016-05-24 19:21:04 +02:00
Dmitri Gribenko
d591f9cf7a
stdlib: remove most uses of @warn_unused_result, which does nothing now
...
I kept the one on sorted(), because that one requires a less trivial
change.
2016-05-19 18:39:39 -07:00
Patrick Pijnappel
4419614be4
Move post-nil guarantee to separate line for Iterators' next()
2016-05-08 21:36:39 +02:00
Patrick Pijnappel
ab9e74cba3
Resolve conflicts with upstream
2016-05-05 08:55:34 +02:00
Mark Lacey
e03d334b68
Use Builtin.unreachable() in unavailable functions.
...
Saves a bit of code size in the standard library by eliminating some
static strings and function calls.
rdar://problem/25767016
2016-05-02 21:30:25 -07:00
Nate Cook
6e274913bf
[stdlib] Revise documentation for Array- and Set-related types.
...
This adds and expands documentation for sequences, collections, and the array
types as well as `Set` and its related protocols.
2016-04-25 12:54:39 -05:00
Manav Gabhawala
7928140f79
[SE-0046] Implements consistent function parameter labels by discarding extraneous parameter names and adding _ where necessary
2016-04-06 20:21:58 -04:00
Dmitri Gribenko
999aceb682
stdlib: correct fixits for 'func generator()'
...
rdar://problem/25492963
2016-04-01 10:48:48 -07:00
Patrick Pijnappel
07a8c39fcb
[stdlib] Use double space as sentence separator in IteratorType.next() docs.
2016-03-16 22:36:26 +11:00
Patrick Pijnappel
020841d4ba
[stdlib] Add post-nil guarantee for IteratorProtocol.next() to always return nil
2016-03-16 22:06:07 +11:00
Daniel Duan
276370b599
[stdlib] apply SE-0040 to stdlib
2016-03-11 16:01:41 -08:00
Max Moiseev
7fe6916bf6
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-03-07 12:10:47 -08:00
Hugh Bellamy
c1b25bb32f
[gardening] Remove double new lines from stdlib files
2016-03-05 15:44:54 +00:00
Jordan Rose
b319e3da32
stdlib: Adjust to insert(contentsOf:at:) and append(contentsOf:)
...
instead of insertContents(of:at:) and appendContents(of:),
originally insertContentsOf(_:at:) and appendContentsOf(_:)
per internal discussion.
2016-02-25 12:50:39 -08:00
Dmitri Gribenko
f0633ce5a9
stdlib: Sequence.iterator() => .makeIterator()
2016-02-23 13:52:30 -08:00
Max Moiseev
4b9eab6288
appendContentsOf => appendContents(of:)
2016-02-22 18:02:04 -08:00
Max Moiseev
481bcabcba
[stdlib] API naming guidelines applied to split and join
...
- `separator` label for first argument of `split`
- `join` and related types are renamed to `joined`
2016-02-22 15:43:33 -08:00
Dmitri Gribenko
f27315b6f8
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-02-20 15:36:04 -08:00
WorldDownTown
bb762496bb
Rewrite _copyToNativeArrayBuffer to use early return if separator count is zero
2016-02-20 21:09:55 +09:00
Dmitri Gribenko
b90470e2fe
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-02-19 09:51:53 -08:00
Dmitri Gribenko
d18308d82b
Merge pull request #1365 from Nirma/join_logic_simplification
...
Logic simplification of next() function in JoinGenerator Struct.
2016-02-19 08:54:12 -08:00