@@ -22,14 +22,13 @@ extension NSAttributedString {
2222 ///
2323 func paragraphRanges( intersecting range: NSRange , includeParagraphSeparator: Bool = true ) -> [ NSRange ] {
2424 var paragraphRanges = [ NSRange] ( )
25- let swiftRange = string. range ( fromUTF16NSRange: range)
26- let paragraphsRange = string. paragraphRange ( for: swiftRange)
27-
28- string. enumerateSubstrings ( in: paragraphsRange, options: . byParagraphs) { [ unowned self] ( substring, substringRange, enclosingRange, stop) in
25+ let paragraphsRange = foundationString. paragraphRange ( for: range)
26+
27+ foundationString. enumerateSubstrings ( in: paragraphsRange, options: . byParagraphs) { ( substring, substringRange, enclosingRange, stop) in
2928 let paragraphRange = includeParagraphSeparator ? enclosingRange : substringRange
30- paragraphRanges. append ( self . string . utf16NSRange ( from : paragraphRange) )
29+ paragraphRanges. append ( paragraphRange)
3130 }
32-
31+
3332 return paragraphRanges
3433 }
3534
@@ -44,16 +43,12 @@ extension NSAttributedString {
4443 ///
4544 func paragraphRanges( intersecting range: NSRange ) -> ( [ ParagraphRange ] ) {
4645 var paragraphRanges = [ ParagraphRange] ( )
47- let swiftRange = string. range ( fromUTF16NSRange: range)
48- let paragraphsRange = string. paragraphRange ( for: swiftRange)
49-
50- string. enumerateSubstrings ( in: paragraphsRange, options: . byParagraphs) { [ unowned self] ( substring, substringRange, enclosingRange, stop) in
51- let substringNSRange = self . string. utf16NSRange ( from: substringRange)
52- let enclosingNSRange = self . string. utf16NSRange ( from: enclosingRange)
53-
54- paragraphRanges. append ( ( substringNSRange, enclosingNSRange) )
46+ let paragraphsRange = foundationString. paragraphRange ( for: range)
47+
48+ foundationString. enumerateSubstrings ( in: paragraphsRange, options: . byParagraphs) { ( substring, substringRange, enclosingRange, stop) in
49+ paragraphRanges. append ( ( substringRange, enclosingRange) )
5550 }
56-
51+
5752 return paragraphRanges
5853 }
5954
@@ -62,10 +57,7 @@ extension NSAttributedString {
6257 /// This is an attributed string wrapper for `NSString.paragraphRangeForRange()`
6358 ///
6459 func paragraphRange( for range: NSRange ) -> NSRange {
65- let swiftRange = string. range ( fromUTF16NSRange: range)
66- let outRange = string. paragraphRange ( for: swiftRange)
67-
68- return string. utf16NSRange ( from: outRange)
60+ return foundationString. paragraphRange ( for: range)
6961 }
7062
7163 func paragraphRange( for attachment: NSTextAttachment ) -> NSRange {
0 commit comments