Erik Eckstein
c0964a492d
Re-instate "stdlib: Add some inlining attributes to help the optimizer getting the right inlining decisions."
...
This re-instates commit 8b0e36779e
2016-03-29 16:33:47 -07:00
Erik Eckstein
be8faad792
Revert my recent inliner commits.
...
There are some failures in the tests.
2016-03-28 11:11:25 -07:00
Erik Eckstein
8b0e36779e
stdlib: Add some inlining attributes to help the optimizer getting the right inlining decisions.
...
This is more or less a workaround for some optimizations (mainly ARC opt) to avoid performance degradation with the upcoming inliner changes
In some situations it makes a big difference for ARC opt if a function is inlined or not, althought this shouldn't be the case.
2016-03-27 10:59:29 -07:00
Dmitri Gribenko
2c53727bf7
stdlib: Use UInt8(truncatingBitPattern:) instead of an equivalent inline construct
2016-03-22 11:14:46 -07:00
Rintaro Ishizaki
8891eb638b
[stdlib] Add @noescape to output parameter of UnicodeCodecType.encode
...
Conformance:
- UTF8.encode
- UTF16.encode
- UTF32.encode
Related functions:
- transcode
- String._encode
- _StringCore.encode
2016-03-09 22:10:04 -08:00
Max Moiseev
02006f20bc
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-03-09 16:05:03 -08:00
Jordan Rose
2a5a8903e4
Revert "[stdlib] Add @noescape to output parameter of UnicodeCodecType.encode"
2016-03-08 17:29:56 -08:00
Max Moiseev
1fae0d1325
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-03-08 12:48:48 -08:00
Rintaro Ishizaki
4f1a4ecd62
[stdlib] Add @noescape to output parameter of UnicodeCodecType.encode
...
Conformance:
- UTF8.encode
- UTF16.encode
- UTF32.encode
Related functions:
- transcode
- String._encode
- _StringCore.encode
2016-03-08 17:34:15 +09:00
Dmitri Gribenko
6bb8045a72
stdlib: add better argument labels to transcode()
2016-02-25 14:53:52 -08: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
Chris Willmore
2ddb6106e4
stdlib: Audit API for Swift 3 preposition, first-arg label rules
...
This commit is the result of auditing the following files:
* StringBuffer.swift
* StringCharacterView.swift
* StringCore.swift
* StringInterpolation.swift.gyb
* StringLegacy.swift
2016-02-24 16:11:20 -08:00
Dmitri Gribenko
18965b370b
stdlib: add argument labels to _cocoaStringToContiguous()
2016-02-24 14:09:04 -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
40b1a0b7e0
[stdlib] all sorts of require renamed back to precondition
2016-02-19 18:21:29 -08:00
Dmitri Gribenko
dd75aed67a
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-02-17 14:40:05 -08:00
Dmitri Gribenko
efaa39ea79
stdlib: add first argument labels and some other changes to conform to API guidelines
2016-02-15 23:47:54 -08:00
Nate Cook
355fa4d064
Mark true as code in documentation comments.
2016-02-12 04:21:57 -06:00
Nate Cook
51251dc133
Convert imperative function summaries to present.
...
i.e., "Return ..." -> "Returns ..."
2016-02-12 04:20:39 -06:00
Max Moiseev
61c837209b
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-02-04 16:13:39 -08:00
Slava Pestov
55644c1540
stdlib: Remove Self parameter from SequenceType._preprocessingPass
...
This code as written is not sound and should not type check
for non-final classes conforming to SequenceType (eg, NSArray).
Instead, capture the base of the call from the preprocess closure
passed in. The closure is @noescape, so it should be equivalent.
2016-01-29 12:18:39 -08:00
Dmitri Gribenko
9bcd5a1056
Collection.length => .count
2016-01-22 18:41:19 -08:00
Max Moiseev
f51e708a8f
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2016-01-04 12:25:25 -08:00
Zach Panzarino
e3a4147ac9
Update copyright date
2015-12-31 23:28:40 +00:00
Max Moiseev
5ccc258f71
func underestimatedLength() => var underestimatedLength { get }
2015-12-18 16:22:24 -08:00
Max Moiseev
b3fcc5fefa
underestimateLength() => underestimatedLength()
2015-12-18 16:22:24 -08:00
Dmitri Gribenko
ebb3e45886
Sequence.{min,max}Element() => .min(), .max()
2015-12-17 17:07:01 -08:00
Dmitri Gribenko
73ce9ae7e9
Collection.count => .length
...
And other API changes that naturally fall out from this, like
Array(repeating:count:) => Array(repeating:length:).
2015-12-17 15:55:29 -08:00
Max Moiseev
3fe0c60d7f
Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines
2015-12-17 11:00:02 -08:00
Maxim Moiseev
e6468a0eca
_precondition => _require
2015-12-16 17:19:01 -08:00
Maxim Moiseev
0e54467bfa
Final bulk removal of Type suffix
2015-12-16 17:06:19 -08:00
Dmitri Gribenko
3d0ad16094
Unsafe[Mutable]Pointer.memory => .pointee
2015-12-16 15:50:31 -08:00
Chris Lattner
e9a2e1e128
Eliminate all of the uses of ++/-- from stdlib/public/core.
...
At DaveA's suggestion, I took a mostly mechanical approach to this:
pointers and numeric types start using += 1, and indexes use
i = i.successor(). The index model is likely to be revised in
Swift 3 anyway, so micro-optimizing this code syntactically isn't
super important.
There is some performance concern of this patch, since some
in-place succesor operations are more efficient than
i = i.successor(). The one that seems particularly at issue is the
instance in the implementation of partition(), which I changed to
use i._successorInPlace(). If other instances lead to a perf issue,
they can be changed to use that as well.
2015-12-15 23:21:55 -08:00
Max Moiseev
806be29941
Merge remote-tracking branch 'origin' into swift-3-api-guidelines
2015-12-14 12:05:35 -08:00
Patrick Pijnappel
668e7101eb
[stdlib] Replace .None by nil in doc comments
2015-12-13 12:10:43 +11:00
Patrick Pijnappel
95622c435b
[stdlib] Replace .Some(x) and .None by x and nil, respectively
2015-12-13 12:10:43 +11:00
Dmitri Gribenko
280feafd10
public struct RawByte => internal struct _RawByte
2015-12-09 17:19:27 -08:00
Dmitri Gribenko
f3ecc3cdc5
transcode(..., stopOnError:) => transcode(..., stoppingOnError:)
2015-12-09 17:18:55 -08:00
Dmitri Gribenko
9a9ff305f1
RangeReplaceableCollection.replaceRange() => .replaceSubrange()
2015-12-09 17:17:34 -08:00
Dmitri Gribenko
ab0a2a6044
Rename 'subrange' to 'bounds' in non-API arguments
2015-12-09 17:17:20 -08:00
Maxim Moiseev
844b81c46b
SequenceType => Sequence
2015-12-09 17:16:56 -08:00
Dmitri Gribenko
5a07f89297
Remove 'generator' from names of test functions and local variables
2015-12-09 17:15:11 -08:00
Maxim Moiseev
09a6913622
RangeReplaceableCollectionType => RangeReplaceableCollection
2015-12-09 17:13:08 -08:00
Maxim Moiseev
7e2466c14e
CollectionType => Collection
2015-12-09 17:12:48 -08:00
Dmitri Gribenko
1c0047829a
Rename SequenceType.generate() to SequenceType.iterator()
2015-12-09 17:11:17 -08:00
Dmitri Gribenko
2cf172160c
Rename SequenceType.Generator associated type to SequenceType.Iterator
2015-12-09 17:11:05 -08:00
Dmitri Gribenko
31598d41bf
Rename GeneratorType to IteratorProtocol
2015-12-07 17:08:32 -08:00
Maxim Moiseev
7372e9e045
COpaquePointer => OpaquePointer
2015-12-07 16:52:45 -08:00
Arnold Schwaighofer
7fa673c6bc
Revert "stdlib: Replace unsafeBitCast calls with unsafeCastReference."
...
Revert "For unsafeReferenceCast rely on static verifier checks."
This reverts commit r32796.
This reverts commit r32795.
They very likely broke a buildbot.
Swift SVN r32813
2015-10-21 22:06:01 +00:00