Commit Graph

7655 Commits

Author SHA1 Message Date
Ling Wang
1ae71d4915 Merge from upstream and resolve conflicts 2016-01-28 11:13:42 -06:00
Austin Zheng
77918a86ac [SR-88] Reinstate Mirror migration changes, fix test issues
This reverts commit 182bb7f812.
2016-01-27 20:40:52 -08:00
Ling Wang
29bd8cc1b5 Merge from upstream and resolve conflicts 2016-01-27 16:08:15 -06:00
Max Moiseev
59303e239c [stdlib] improving RangeReplaceableCollection
Incorporates a commit from master, where an extra overload for `+` on
Collection was removed.
Also fixes a minor bug where capacity was calculated incorrectly as
`rhs.count + rhs.underestimatedCount`.
2016-01-27 11:19:42 -08:00
Andrew Trick
182bb7f812 Revert "Merge pull request #1058 from austinzheng/az-port-mirror"
This pull request broke the following tests on several build configurations
(eg --preset=buildbot,tools=RA,stdlib=DA)

    1_stdlib/Reflection.swift
    1_stdlib/ReflectionHashing.swift
    1_stdlib/UnsafePointer.swift.gyb

This reverts commit c223a3bf06, reversing
changes made to 5c2bb09b09.
2016-01-27 10:43:08 -08:00
Austin Zheng
10d5b23c30 [SR-88] Reinstate mirror migration commit
Changes:
- Reverted commit reverting original SR-88 commit
- Removed mirror children helper collections and related code
- Rewrote some tests to keep them working properly
- Wrote two more tests for the three pointer APIs to ensure no crashes if created using a value > Int64.max

This reverts commit 8917eb0e5a.
2016-01-26 19:28:32 -08:00
Maxim Moiseev
d2cccdeac0 Merge pull request #741 from nielsandriesse/collectiontype-overloads
[stdlib] Remove redundant +(_:_:) overload in RangeReplaceableCollectionType
2016-01-26 11:46:18 -08:00
Dmitri Gribenko
c497ea9da9 Revert "[SR-610][Stdlib] Use for-in to iterate over CollectionType elements" 2016-01-25 18:08:21 -08:00
Dmitri Gribenko
544a8ef06a Merge pull request #1084 from lorentey/sr-610
[SR-610][Stdlib] Use for-in to iterate over CollectionType elements
2016-01-25 16:18:33 -08:00
Károly Lőrentey
015004e3d5 [SR-610][stdlib] Use _initialize_to in _copyCollectionToNativeArrayBuffer
The Generator interface is specialized for iteration and is often faster than indexing.

Using _initialize_to results in a ~10% speedup for Dictionary. For collections with more complex iteration state (such as search trees with O(log(n)) indexing), this leads to a complexity class improvement.

This requires a small change to the testsuite, because the generate() method of Defaulted*RangeReplaceableSlice called Array(self), which now leads to infinite recursion.

https://bugs.swift.org/browse/SR-610
2016-01-25 19:47:43 +01:00
Arnold Schwaighofer
ce10cc7bd4 A dictionary must be native if *either* the key *or* the value is guaranteed not
to be a class/objc existential type.
2016-01-25 08:49:18 -08:00
Arnold Schwaighofer
b30f9fea03 Dictionary: More guaranteedNative fast paths
When we know that the backing of dictionary will be native only we can
circumvent the objective-c path.
2016-01-25 08:49:17 -08:00
practicalswift
71e00fefa1 [gardening] Fix typos: "word word" (two spaces) → "word word" (one space) 2016-01-24 21:27:16 +01:00
Dmitri Gribenko
fd8739105c Merge pull request #1057 from tanadeau/sr-538
[SR-538][Stdlib][3.0] Updated constraints and docs for popFirst/popLast. Added tests.
2016-01-23 21:20:06 -08:00
Ted Kremenek
5699bc67d4 Merge pull request #1003 from practicalswift/adhere-to-subset-of-pep8-iii
[gardening] Fix violations of non-controversial PEP8 rules
2016-01-23 16:38:43 -08:00
Trent Nadeau
160efd1023 Updated constraints and docs for popFirst/popLast. Added tests. 2016-01-23 18:01:06 +00:00
practicalswift
ca9e488f30 [gardening] Add "-*- swift -*-" to *.swift.gyb. Remove from *.swift. 2016-01-23 10:27:03 +01:00
Dmitri Gribenko
fa5e4c74e5 stdlib comments: remove duplicated punctuation 2016-01-23 01:25:45 -08:00
practicalswift
1cd4d4e9c9 [gardening] Fix violations of non-controversial PEP8 rules
Fixes:
* multiple statements on one line (colon) (E701)
* missing whitespace around arithmetic operator (E226)
* missing whitespace around operator (E225)
* closing bracket does not match visual indentation (E124)
* blank line contains whitespace (W293)
* continuation line missing indentation or outdented (E122)
* continuation line over-indented for hanging indent (E126)
* missing expected blank line (E301)
* trailing whitespace (W291)
* unexpected spaces around keyword / parameter equals (E251)
* whitespace after '(', '[' or '{' (E201)
* whitespace before ')', ']' or '}' (E202)
* whitespace before ',' or ':' (E203)
2016-01-23 09:23:33 +01:00
Adriano Ferreira
e6be43090e Adjust space in property/subscript declarations 2016-01-22 22:02:29 -05:00
Dmitri Gribenko
9bcd5a1056 Collection.length => .count 2016-01-22 18:41:19 -08:00
Adriano Ferreira
e6cbebe6ea Revert "Adjust space in property/subscript declarations"
This reverts commit 47ab2e0e28.
2016-01-22 19:53:01 -05:00
Max Moiseev
29b26cf3b8 [stdlib] making Set conform to SetAlgebra
Since the API is not quite the same, needed to introduce several
overloads that accept Set<> and not any S : Sequence.
Some dynamic casts were removed from methods, since Set.init already
handles situations where sequence being passed is in fact a Set.
Verified there is no significant change in performance after vs before
the change.
2016-01-22 15:00:57 -08:00
Adriano Ferreira
47ab2e0e28 Adjust space in property/subscript declarations 2016-01-22 17:03:15 -05:00
Dmitri Gribenko
ed790c8d54 Swift 3 migration: add annotations for MirrorPathType 2016-01-22 09:16:11 -08:00
Mark Lacey
8917eb0e5a Revert "[Runtime][StdLib] Migrate mirrors to use CustomReflectable API, rewrite dump()"
This reverts commit 9798dfd4aa because it
broke the stdlib build.
2016-01-22 08:41:07 -08:00
Dmitri Gribenko
3b4248ea78 stdlib: add migration aids for lazy filter collections 2016-01-21 18:00:30 -08:00
Dmitri Gribenko
f5153572d7 stdlib: rename count labels in underscored protocols
lengthInBytes => utf8CodeUnitCount

numberOfCodeUnits => utf16CodeUnitCount
2016-01-21 17:18:15 -08:00
Dmitri Gribenko
574052f1be stdlib: standardize fatalError() messages for unavailable APIs 2016-01-21 16:34:54 -08:00
Dmitri Gribenko
b371422dd9 stdlib: standardize fatalError() messages for unavailable APIs 2016-01-21 15:27:03 -08:00
Dmitri Gribenko
c5d694c4af Swift 3 migration: add migration aids for EnumeratedIterator and EnumeratedSequence 2016-01-21 15:25:21 -08:00
Max Moiseev
d00f407a59 [stdlib] checking for negative count value in Repeated.init 2016-01-21 15:08:14 -08:00
Max Moiseev
5568426991 [stdlib] RangeReplaceable.init with 0 repeated elements optimization 2016-01-21 12:27:09 -08:00
Max Moiseev
744b989f69 [stdlib] optimization for RangeReplaceableCollection.appendContentsOf 2016-01-21 12:27:09 -08:00
Max Moiseev
e3bb2a0972 [stdlib] adding init(repeating:length:) to RangeReplaceableCollection 2016-01-21 12:27:09 -08:00
Dmitri Gribenko
62f73f4469 Rename CollectionDefaultIterator to IndexingIterator 2016-01-21 11:49:03 -08:00
Dmitri Gribenko
a34a44f6c2 Swift 3 migration: add migration aids for EnumerateSequence 2016-01-21 11:48:41 -08:00
Austin Zheng
9798dfd4aa [Runtime][StdLib] Migrate mirrors to use CustomReflectable API, rewrite dump()
Jira: SR-88
Changes:
- Removed stdlib type conformances to _Reflectable
- Conformed stdlib types to CustomReflectable, CustomPlaygroundQuickLookable
- Rewrote dump() function to not use _reflect()
- CGRect, CGPoint, CGSize now conform to CustomDebugStringConvertible
- Rewrote unit tests for compatibility with new API
2016-01-21 09:44:15 -08:00
Guillaume Lessard
47a3a71bf3 Outdated comment; already fixed 2016-01-20 21:05:43 -07:00
Max Moiseev
b4d74838d6 improving the deprecation attribute message for MutableSliceable 2016-01-20 17:23:54 -08:00
Max Moiseev
9a018bd77d Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines 2016-01-20 14:38:22 -08:00
Max Moiseev
86680ec622 [stdlib] @available attributes for removed APIs 2016-01-20 13:08:27 -08:00
Dave Abrahams
966b6f435b Merge pull request #1025 from glessard/details2
80-column compliance
2016-01-20 08:19:32 -08:00
Guillaume Lessard
5d4fb3f210 80-column compliance 2016-01-20 07:53:44 -07:00
Doug Gregor
7d70b704e4 Merge commit '5e11e3f7287427d386636a169c4065c0373931a8' into swift-3-api-guidelines 2016-01-19 23:18:20 -08:00
Dmitri Gribenko
74ce1ca79c Add unavailable declarations for Swift 2.2 -> 3 migration 2016-01-19 14:32:59 -08:00
Chris Lattner
671eb1f4dd Merge pull request #976 from gregomni/associatedtype-in-stdlib
[stdlib] Switch keywords from 'typealias' to 'associatedtype' in stdlib
2016-01-17 14:09:06 -08:00
practicalswift
043d4ebc1f Fix recently introduced typos 2016-01-16 10:56:11 +01:00
Dmitri Gribenko
5a1f8b25a5 Merge pull request #979 from antonblanchard/powerpc64_merge
Add powerpc64le Linux support
2016-01-15 18:14:45 -08:00
Luke Howard
70c5755adb [SR-381]: runtime resolution of type metadata from a name
replace ProtocolConformanceTypeKind with TypeMetadataRecordKind

metadata reference does not need to be indirectable

more efficient check for protocol conformances

remove swift_getMangledTypeName(), not needed yet

kill off Remangle.cpp for non-ObjC builds

cleanup

cleanup

cleanup comments
2016-01-15 17:48:42 +11:00