Skip to content

Commit 0ad5b17

Browse files
authored
Merge pull request #2143 from drodriguez/fix-string-transform-enum
Fix StringTransform usage of forced casts.
2 parents 73c2878 + b48e6b9 commit 0ad5b17

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

Foundation/NSString.swift

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -135,34 +135,34 @@ extension NSString {
135135

136136
// Transliteration
137137
extension NSString.StringTransform {
138-
public static let toLatin: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformToLatin! as! String)
139-
public static let latinToArabic: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinArabic! as! String)
140-
public static let latinToCyrillic: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinCyrillic! as! String)
141-
public static let latinToGreen: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinGreek! as! String)
142-
public static let latinToHangul: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinHangul! as! String)
143-
public static let latinToHebrew: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinHebrew! as! String)
144-
public static let latinToHiragana: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinHiragana! as! String)
145-
public static let latinToKatakana: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinKatakana! as! String)
146-
public static let latinToThai: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinThai! as! String)
147-
public static let hiraganaToKatakana: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformHiraganaKatakana! as! String)
148-
public static let mandarinToLatin: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformMandarinLatin! as! String)
138+
public static let toLatin: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformToLatin!._swiftObject)
139+
public static let latinToArabic: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinArabic!._swiftObject)
140+
public static let latinToCyrillic: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinCyrillic!._swiftObject)
141+
public static let latinToGreen: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinGreek!._swiftObject)
142+
public static let latinToHangul: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinHangul!._swiftObject)
143+
public static let latinToHebrew: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinHebrew!._swiftObject)
144+
public static let latinToHiragana: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinHiragana!._swiftObject)
145+
public static let latinToKatakana: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinKatakana!._swiftObject)
146+
public static let latinToThai: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformLatinThai!._swiftObject)
147+
public static let hiraganaToKatakana: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformHiraganaKatakana!._swiftObject)
148+
public static let mandarinToLatin: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformMandarinLatin!._swiftObject)
149149
}
150150

151151
// Diacritic and Combining Mark Removal
152152
extension NSString.StringTransform {
153-
public static let stripDiacritics: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformStripDiacritics! as! String)
154-
public static let stripCombiningMarks: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformStripCombiningMarks! as! String)
153+
public static let stripDiacritics: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformStripDiacritics!._swiftObject)
154+
public static let stripCombiningMarks: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformStripCombiningMarks!._swiftObject)
155155
}
156156

157157
// Halfwidth and Fullwidth Form Conversion
158158
extension NSString.StringTransform {
159-
public static let fullwidthToHalfwidth: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformFullwidthHalfwidth! as! String)
159+
public static let fullwidthToHalfwidth: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformFullwidthHalfwidth!._swiftObject)
160160
}
161161

162162
// Character Representation
163163
extension NSString.StringTransform {
164-
public static let toUnicodeName: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformToUnicodeName! as! String)
165-
public static let toXMLHex: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformToXMLHex! as! String)
164+
public static let toUnicodeName: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformToUnicodeName!._swiftObject)
165+
public static let toXMLHex: NSString.StringTransform = NSString.StringTransform(rawValue: kCFStringTransformToXMLHex!._swiftObject)
166166
}
167167

168168
internal func _createRegexForPattern(_ pattern: String, _ options: NSRegularExpression.Options) -> NSRegularExpression? {

TestFoundation/TestNSString.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,7 @@ class TestNSString: LoopbackServerTest {
9393
("test_replacingOccurrences", test_replacingOccurrences),
9494
("test_getLineStart", test_getLineStart),
9595
("test_substringWithRange", test_substringWithRange),
96-
/* ⚠️ */ ("test_substringFromCFString", testExpectedToFail(test_substringFromCFString,
97-
/* ⚠️ */ "test_substringFromCFString is crashing unexpectedly on Ubuntu 14.04, possibly as a regression of something upstream. https://bugs.swift.org/browse/SR-10513")),
96+
("test_substringFromCFString", test_substringFromCFString),
9897
("test_createCopy", test_createCopy),
9998
("test_commonPrefix", test_commonPrefix),
10099
("test_lineRangeFor", test_lineRangeFor),

0 commit comments

Comments
 (0)