Skip to content

Commit fb59949

Browse files
authored
Merge pull request #537 from lorentey/fix-bigstring-in-xcodeproj
Fix ability to build & test BigString with Xcode & CMake
2 parents 359726d + 65d174c commit fb59949

File tree

7 files changed

+74
-81
lines changed

7 files changed

+74
-81
lines changed

Sources/RopeModule/BigString/Chunk/BigString+Chunk+RopeElement.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ extension BigString._Chunk: RopeElement {
2525

2626
func invariantCheck() {
2727
#if COLLECTIONS_INTERNAL_CHECKS
28-
precondition(string.endIndex._canBeUTF8)
2928
let c = utf8Count
3029
if c == 0 {
3130
precondition(counts == Counts(), "Non-empty counts")

Sources/RopeModule/CMakeLists.txt

Lines changed: 48 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -23,80 +23,82 @@ else()
2323
endif()
2424

2525
target_sources(${module_name} PRIVATE
26-
"BigString/Basics/BigString+Metrics.swift"
27-
"BigString/Basics/BigString+Index.swift"
28-
"BigString/Basics/BigString+Summary.swift"
2926
"BigString/Basics/BigString.swift"
30-
"BigString/Basics/BigString+Iterators.swift"
27+
"BigString/Basics/BigString+Builder.swift"
3128
"BigString/Basics/BigString+Contents.swift"
32-
"BigString/Basics/BigString+Invariants.swift"
33-
"BigString/Basics/BigString+Ingester.swift"
3429
"BigString/Basics/BigString+Debugging.swift"
35-
"BigString/Basics/BigString+Builder.swift"
30+
"BigString/Basics/BigString+Index.swift"
31+
"BigString/Basics/BigString+Ingester.swift"
32+
"BigString/Basics/BigString+Invariants.swift"
33+
"BigString/Basics/BigString+Metrics.swift"
34+
"BigString/Basics/BigString+Summary.swift"
35+
"BigString/Chunk/BigString+Chunk.swift"
3636
"BigString/Chunk/BigString+Chunk+Append and Insert.swift"
37-
"BigString/Chunk/BigString+Chunk+Indexing by UTF16.swift"
37+
"BigString/Chunk/BigString+Chunk+Breaks.swift"
38+
"BigString/Chunk/BigString+Chunk+Character.swift"
3839
"BigString/Chunk/BigString+Chunk+Counts.swift"
39-
"BigString/Chunk/BigString+Chunk+Indexing by Characters.swift"
40-
"BigString/Chunk/BigString+Chunk.swift"
4140
"BigString/Chunk/BigString+Chunk+Description.swift"
42-
"BigString/Chunk/BigString+Chunk+Splitting.swift"
43-
"BigString/Chunk/BigString+Chunk+Breaks.swift"
41+
"BigString/Chunk/BigString+Chunk+Index.swift"
4442
"BigString/Chunk/BigString+Chunk+RopeElement.swift"
45-
"BigString/Operations/BigString+Split.swift"
43+
"BigString/Chunk/BigString+Chunk+Splitting.swift"
44+
"BigString/Chunk/BigString+Chunk+UnicodeScalar.swift"
45+
"BigString/Chunk/BigString+Chunk+UTF16.swift"
46+
"BigString/Chunk/BigString+Chunk+UTF8.swift"
47+
"BigString/Conformances/BigString+BidirectionalCollection.swift"
48+
"BigString/Conformances/BigString+Comparable.swift"
49+
"BigString/Conformances/BigString+CustomDebugStringConvertible.swift"
50+
"BigString/Conformances/BigString+CustomStringConvertible.swift"
51+
"BigString/Conformances/BigString+Equatable.swift"
52+
"BigString/Conformances/BigString+ExpressibleByStringLiteral.swift"
53+
"BigString/Conformances/BigString+Hashing.swift"
54+
"BigString/Conformances/BigString+LosslessStringConvertible.swift"
55+
"BigString/Conformances/BigString+RangeReplaceableCollection.swift"
56+
"BigString/Conformances/BigString+Sequence.swift"
57+
"BigString/Conformances/BigString+TextOutputStream.swift"
58+
"BigString/Operations/BigString+Append.swift"
59+
"BigString/Operations/BigString+Initializers.swift"
60+
"BigString/Operations/BigString+Insert.swift"
4661
"BigString/Operations/BigString+Managing Breaks.swift"
4762
"BigString/Operations/BigString+RemoveSubrange.swift"
4863
"BigString/Operations/BigString+ReplaceSubrange.swift"
49-
"BigString/Operations/BigString+Insert.swift"
50-
"BigString/Operations/BigString+Initializers.swift"
64+
"BigString/Operations/BigString+Split.swift"
5165
"BigString/Operations/Range+BigString.swift"
52-
"BigString/Operations/BigString+Append.swift"
5366
"BigString/Views/BigString+UnicodeScalarView.swift"
67+
"BigString/Views/BigString+UTF16View.swift"
5468
"BigString/Views/BigString+UTF8View.swift"
55-
"BigString/Views/BigSubstring+UnicodeScalarView.swift"
5669
"BigString/Views/BigSubstring.swift"
70+
"BigString/Views/BigSubstring+UnicodeScalarView.swift"
5771
"BigString/Views/BigSubstring+UTF16View.swift"
58-
"BigString/Views/BigString+UTF16View.swift"
5972
"BigString/Views/BigSubstring+UTF8View.swift"
60-
"BigString/Conformances/BigString+Hashing.swift"
61-
"BigString/Conformances/BigString+CustomStringConvertible.swift"
62-
"BigString/Conformances/BigString+BidirectionalCollection.swift"
63-
"BigString/Conformances/BigString+CustomDebugStringConvertible.swift"
64-
"BigString/Conformances/BigString+Equatable.swift"
65-
"BigString/Conformances/BigString+TextOutputStream.swift"
66-
"BigString/Conformances/BigString+LosslessStringConvertible.swift"
67-
"BigString/Conformances/BigString+Sequence.swift"
68-
"BigString/Conformances/BigString+ExpressibleByStringLiteral.swift"
69-
"BigString/Conformances/BigString+RangeReplaceableCollection.swift"
70-
"BigString/Conformances/BigString+Comparable.swift"
71-
"Rope/Basics/RopeMetric.swift"
7273
"Rope/Basics/_RopeItem.swift"
73-
"Rope/Basics/Rope+Debugging.swift"
74+
"Rope/Basics/_RopePath.swift"
7475
"Rope/Basics/_RopeVersion.swift"
75-
"Rope/Basics/RopeElement.swift"
7676
"Rope/Basics/Rope.swift"
77-
"Rope/Basics/Rope+_UnsafeHandle.swift"
77+
"Rope/Basics/Rope+_Node.swift"
7878
"Rope/Basics/Rope+_Storage.swift"
79-
"Rope/Basics/Rope+Invariants.swift"
8079
"Rope/Basics/Rope+_UnmanagedLeaf.swift"
81-
"Rope/Basics/RopeSummary.swift"
80+
"Rope/Basics/Rope+_UnsafeHandle.swift"
8281
"Rope/Basics/Rope+Builder.swift"
83-
"Rope/Basics/_RopePath.swift"
84-
"Rope/Basics/Rope+_Node.swift"
85-
"Rope/Operations/Rope+Extract.swift"
82+
"Rope/Basics/Rope+Debugging.swift"
83+
"Rope/Basics/Rope+Invariants.swift"
84+
"Rope/Basics/RopeElement.swift"
85+
"Rope/Basics/RopeMetric.swift"
86+
"Rope/Basics/RopeSummary.swift"
87+
"Rope/Conformances/Rope+Collection.swift"
88+
"Rope/Conformances/Rope+Index.swift"
89+
"Rope/Conformances/Rope+Sequence.swift"
8690
"Rope/Operations/Rope+Append.swift"
87-
"Rope/Operations/Rope+Split.swift"
91+
"Rope/Operations/Rope+Extract.swift"
8892
"Rope/Operations/Rope+Find.swift"
89-
"Rope/Operations/Rope+Insert.swift"
9093
"Rope/Operations/Rope+ForEachWhile.swift"
91-
"Rope/Operations/Rope+MutatingForEach.swift"
94+
"Rope/Operations/Rope+Insert.swift"
9295
"Rope/Operations/Rope+Join.swift"
96+
"Rope/Operations/Rope+MutatingForEach.swift"
9397
"Rope/Operations/Rope+Remove.swift"
9498
"Rope/Operations/Rope+RemoveSubrange.swift"
95-
"Rope/Conformances/Rope+Index.swift"
96-
"Rope/Conformances/Rope+Sequence.swift"
97-
"Rope/Conformances/Rope+Collection.swift"
99+
"Rope/Operations/Rope+Split.swift"
100+
"Utilities/Optional Utilities.swift"
98101
"Utilities/String Utilities.swift"
99-
"Utilities/_CharacterRecognizer.swift"
100102
"Utilities/String.Index+ABI.swift"
101-
"Utilities/Optional Utilities.swift"
103+
"Utilities/_CharacterRecognizer.swift"
102104
)

Tests/OrderedCollectionsTests/OrderedSet/OrderedSetTests.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import XCTest
1515
#else
1616
@_spi(Testing) import OrderedCollections
1717
import _CollectionsTestSupport
18+
import InternalCollectionsUtilities
1819
#endif
1920

2021
extension OrderedSet: SetAPIExtras {}

Tests/OrderedCollectionsTests/OrderedSet/RandomAccessCollection+Extras.swift

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,35 +2,20 @@
22
//
33
// This source file is part of the Swift Collections open source project
44
//
5-
// Copyright (c) 2021 - 2024 Apple Inc. and the Swift project authors
5+
// Copyright (c) 2021 - 2025 Apple Inc. and the Swift project authors
66
// Licensed under Apache License v2.0 with Runtime Library Exception
77
//
88
// See https://swift.org/LICENSE.txt for license information
99
//
1010
//===----------------------------------------------------------------------===//
1111

12-
#if !COLLECTIONS_SINGLE_MODULE
12+
#if COLLECTIONS_SINGLE_MODULE
13+
import Collections
14+
#else
1315
import InternalCollectionsUtilities
1416
#endif
1517

1618
extension RandomAccessCollection {
17-
#if SWIFT_PACKAGE
18-
@inline(__always)
19-
internal func _index(at offset: Int) -> Index {
20-
index(startIndex, offsetBy: offset)
21-
}
22-
23-
@inline(__always)
24-
internal func _offset(of index: Index) -> Int {
25-
distance(from: startIndex, to: index)
26-
}
27-
28-
@inline(__always)
29-
internal subscript(_offset offset: Int) -> Element {
30-
self[_index(at: offset)]
31-
}
32-
#endif
33-
3419
@inline(__always)
3520
internal func _indexRange(at offsets: Range<Int>) -> Range<Index> {
3621
_index(at: offsets.lowerBound) ..< _index(at: offsets.upperBound)

Xcode/Collections.xcconfig

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,6 @@ PRODUCT_BUNDLE_IDENTIFIER = org.swift.Collections
1515
SUPPORTED_PLATFORMS = macosx iphoneos iphonesimulator watchos watchsimulator appletvos appletvsimulator
1616
ARCHS = $(ARCHS_STANDARD)
1717

18-
OTHER_SWIFT_FLAGS = $(inherited) \
19-
-package-name CollectionsInternal
20-
2118
MACOSX_DEPLOYMENT_TARGET = 12.0
2219
IPHONEOS_DEPLOYMENT_TARGET = 15.0
2320
WATCHOS_DEPLOYMENT_TARGET = 8.0

0 commit comments

Comments
 (0)