Commit Graph

2952 Commits

Author SHA1 Message Date
Dave Abrahams
ad7f7c6779 [stdlib] Land OptionSetType et. al.
This has passed review, or at least satisfied Tony Parker, provided we
do something to hide SetAlgebraDispatchType.  I think I can eliminate it
in an imminent commit.

Swift SVN r28892
2015-05-21 22:55:02 +00:00
Dmitri Hrybenko
28792f40b3 stdlib: add an API AnySequence.init(() -> Generator)
No objections on API review.

rdar://20720454

Swift SVN r28886
2015-05-21 20:56:38 +00:00
Dmitri Hrybenko
55bb9a806b stdlib: replace implementations of unavailable functions with fatalError()
Reduces the stdandard library dylib size by 10 Kb for each slice.

Swift SVN r28884
2015-05-21 20:22:13 +00:00
Slava Pestov
6bd9b399e9 stdlib: Tweak how empty enum cases are printed
Previously a mirror for an empty case would have one entry, consisting
of the case name and a value of ().

Now, the mirror's summary shows both the type and the case.  If there is
no payload, the mirror will not have any children. The presence of a
child indicates there is an actual payload.

Also put a non-ASCII character in the reflection test to ensure the
runtime's primitives can round-trip UTF8.

Fixes <rdar://problem/20994093>.

Swift SVN r28874
2015-05-21 16:01:47 +00:00
Dmitri Hrybenko
1519c85340 stdlib: annotate sort() method with @warn_unused_result
rdar://20775645

Swift SVN r28869
2015-05-21 06:27:27 +00:00
Dmitri Hrybenko
a85422d04a Use the correct gyb expansion in the documentation for sort()
Patch by Brian Lanier.

Swift SVN r28868
2015-05-21 06:23:26 +00:00
Dmitri Hrybenko
fe239e3d03 stdlib: de-underscore sort() and partition() methods
Swift SVN r28839
2015-05-20 19:34:36 +00:00
Dmitri Hrybenko
53f3ccf850 stdlib: change CollectionType.count() into a property
Swift SVN r28829
2015-05-20 09:14:43 +00:00
Dmitri Hrybenko
4a677190eb stdlib: move partition() to a protocol extension
Swift SVN r28816
2015-05-20 03:12:55 +00:00
Dmitri Hrybenko
004c02adff stdlib: doc comment: use monospaced font for code
Fixes new issues in rdar://problem/20843980

Patch by Brian Lanier.

Swift SVN r28780
2015-05-19 20:26:16 +00:00
Arnold Schwaighofer
1cf4974ad7 Remove a noescape and bitcast that were causing extra thunks to hang around
We were generating two reabstraction thunks from
(Generator.Element, Generator.Element) -> Bool
back to
(Generator.Element, Generator.Element) -> Bool
for the let bitcast.

rdar://21022339

Swift SVN r28778
2015-05-19 18:51:12 +00:00
Dmitri Hrybenko
47595ee1db stdlib: change sort() and sorted() into protocol extensions
Swift SVN r28736
2015-05-19 01:55:29 +00:00
Dmitri Hrybenko
0295b24a5c stdlib: don't use doc comment markup for non-doc comments
rdar://problem/20976063

Swift SVN r28726
2015-05-18 21:52:48 +00:00
Dmitri Hrybenko
17cafb6b3a Revert "stdlib: don't use doc comment markup for non-doc comments"
This reverts commit 28724.  It contains unintended changes.

Swift SVN r28725
2015-05-18 21:51:53 +00:00
Dmitri Hrybenko
e964eb7384 stdlib: don't use doc comment markup for non-doc comments
rdar://problem/20976063

Swift SVN r28724
2015-05-18 21:50:24 +00:00
Devin Coughlin
5aee5e70aa [Runtime] Enable run-time availability checks on watchOS.
Add the necessary build-configuration disjunct to enable run-time
availability checks on watchOS.

The std lib tests for this on the watch simulator currently fail for unrelated
reasons <rdar://problem/20932146>. I have tested this manually with the
simulator.

rdar://problem/20774229

Swift SVN r28718
2015-05-18 20:04:58 +00:00
Chris Lattner
796fa37545 Remove a bit of ugliness that went it to silence a var->let warning,
now that we don't warn in this case. 


Swift SVN r28666
2015-05-16 23:10:03 +00:00
Dmitri Hrybenko
6aa84e164d stdlib: clean up some FIXMEs for protocol extensions
Swift SVN r28661
2015-05-16 04:26:21 +00:00
Dmitri Hrybenko
4c80e21350 Fix the syntax error that I just introduced.
Swift SVN r28660
2015-05-16 03:14:28 +00:00
Dmitri Hrybenko
313701286b stdlib: Various punctuation and markup improvements to the comments.
Patch by Brian Lanier.

Swift SVN r28659
2015-05-16 03:04:51 +00:00
Dmitri Hrybenko
ba4c959f1a stdlib: correct the comment on Unsafe{,Mutable}Pointer.memory
Patch by Alex Martini.

Swift SVN r28655
2015-05-16 00:51:40 +00:00
John McCall
312a9c1f6e Clean up correctly if a variadic argument throws.
rdar://20942603

Swift SVN r28622
2015-05-15 08:20:36 +00:00
Dmitri Hrybenko
d8d50e1815 stdlib: in Array bridging code, use the same pattern as Set and Dictionary use
Also, simplify the code by removing an unused parameter.  NFC.

Swift SVN r28607
2015-05-15 03:44:37 +00:00
Dmitri Hrybenko
25d9a4fe32 stdlib: protocol extensions: de-underscore filter()
The API was adjusted according to the API review previously.

Swift SVN r28592
2015-05-15 00:37:01 +00:00
Dmitri Hrybenko
b1b9a91663 stdlib: push Array's specialization of filter() to CollectionType
This way, the specialization is more generally applicable.

Swift SVN r28561
2015-05-14 05:55:20 +00:00
Dmitri Hrybenko
6274168959 stdlib: move _SequenceDefaultsType extensions to SequenceType
Now compiler supports this arrangement.  It provides a better generated
interface.

Swift SVN r28557
2015-05-14 04:06:48 +00:00
Dmitri Hrybenko
71ef0c2296 stdlib: rearrange declarations to be more logically grouped together
Swift SVN r28556
2015-05-14 04:06:46 +00:00
Dmitri Hrybenko
843d8a4eb7 stdlib: protocol extensions: de-underscore map()
Swift SVN r28502
2015-05-13 01:58:46 +00:00
Ted Kremenek
7f1119f690 Underscore properties of ErrorType.
The internal details of ErrorType are still being designed.
They should be underscored in the meantime to
indicate they are still evolving.

Implements rdar://problem/20927102.

Swift SVN r28500
2015-05-13 00:24:09 +00:00
Dmitri Hrybenko
efed32e6bc stdlib: indent doc comment per coding style
Swift SVN r28496
2015-05-12 23:17:51 +00:00
Ted Kremenek
62feb5c949 Change @availability to @available.
This came out of today's language review meeting.
The intent is to match #available with the attribute
that describes availability.

This is a divergence from Objective-C.

Swift SVN r28484
2015-05-12 20:06:13 +00:00
Dmitri Hrybenko
68ef59e37a stdlib: Convert comments to use '- requires:' instead of 'Requires:'.
Tidy misc. comments and markdown along the way.

Patch by Brian Lanier.

Swift SVN r28473
2015-05-12 17:47:11 +00:00
Dave Abrahams
5c55682d8b [stdlib] Capitalize keywords in doc comments
Again, the text is a lot more readable that way.

Swift SVN r28472
2015-05-12 16:59:13 +00:00
Dave Abrahams
106b39a497 [stdlib] Indent bullet continuations in doc comments
The text is a lot more readable that way.

Swift SVN r28471
2015-05-12 16:59:08 +00:00
Dmitri Hrybenko
a8ee15331e Add periods and blank lines between abstracts and discussions.
Patch by Alex Martini.

Swift SVN r28466
2015-05-12 07:39:53 +00:00
Dmitri Hrybenko
1bc7b4c226 Move requirements out of abstracts.
Searched for "/// ..*Requires:" and did manual replacements.

Patch by Alex Martini.

Swift SVN r28465
2015-05-12 07:39:52 +00:00
Dmitri Hrybenko
631a4eff32 Move return descriptions out of abstracts.
Searched for "(?<!- )returns:" and did manual replacements.

Patch by Alex Martini.

Swift SVN r28464
2015-05-12 07:39:51 +00:00
Ted Kremenek
42cccf07b2 Make CFunctionPointer, GeneratorOf, SequenceOf unavailable.
Implements rdar://problem/20477688

Swift SVN r28459
2015-05-12 06:28:02 +00:00
Dmitri Hrybenko
4925bda845 stdlib: make 'first' dynamically dispatched so that it can be made fast
on Dictionary and Set

Swift SVN r28453
2015-05-12 04:46:26 +00:00
Dmitri Hrybenko
33276a4014 stdlib: make _prext_filter() return an Array<Element> for all collections
Swift SVN r28451
2015-05-12 03:02:58 +00:00
Dave Abrahams
ee8daf63d7 Yon semicolon doth offend mine eye
Swift SVN r28450
2015-05-12 01:56:39 +00:00
Enrico Granata
68ba7a7cfa Revert the reversal of Mirror for Mirror
Third take might be the charm after all



Swift SVN r28443
2015-05-11 21:25:28 +00:00
Dmitri Hrybenko
61214ec55b stdlib: remove Sliceable conformance from String
Swift SVN r28442
2015-05-11 20:58:31 +00:00
Dave Abrahams
f8e5d28465 [stdlib] Remove needless "let"s
Simpler is better.

Swift SVN r28434
2015-05-11 19:34:26 +00:00
Dmitri Hrybenko
e63d851040 stdlib: fix up a doc comment
Patch by Alex Martini.

Swift SVN r28432
2015-05-11 18:52:25 +00:00
Slava Pestov
d2a5fbd94a Implement reflection on instances of empty and single-payload enums
This change attempts to introduce the functionality without being too
disruptive. After we branch, I want to consolidate some of the runtime
functions and implement this functionality for multi-payload enums
as well, which requires adding new runtime metadata.

Example:

(swift) enum Color { case Red, Green, Blue(Int) }
(swift) print(Color.Red)
REPL.Color.Red
(swift) print(Color.Blue(5))
REPL.Color.Blue(5)

Implements <rdar://problem/18334936>.

Swift SVN r28430
2015-05-11 18:21:39 +00:00
Dave Abrahams
918b323565 [stdlib] Suppress some new warnings
Swift SVN r28420
2015-05-11 16:18:55 +00:00
Dmitri Hrybenko
7ac7eba882 stdlib: make map() dynamically dispatched
This change tries to recover the performance regression in map() that
was caused by moving map() to a protocol extension and degrading the
static type information (when mapping a collection, we only know that it
is a sequence).  Adding map() to the witness table allows us to provide
a specialized implementation for collections, and hopefully recover the
lost performance.

Swift SVN r28416
2015-05-11 15:59:02 +00:00
Chris Lattner
39dc866eb2 tweak a couple of more files in the build to strength reduce from var -> let.
Swift SVN r28410
2015-05-11 06:06:40 +00:00
Chris Lattner
934bbd0a42 more stdlib hygiene
Swift SVN r28393
2015-05-10 06:35:15 +00:00