mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Foundation overlay: add String.stringByApplyingTransform()
This API is new in OS X 10.11 and iOS 9.0. rdar://20645458 Swift SVN r28257
This commit is contained in:
@@ -1468,5 +1468,13 @@ extension String {
|
||||
try self._ns.writeToURL(
|
||||
url, atomically: useAuxiliaryFile, encoding: enc)
|
||||
}
|
||||
|
||||
@availability(iOS, introduced=9.0)
|
||||
@availability(OSX, introduced=10.11)
|
||||
public func stringByApplyingTransform(
|
||||
transform: String, reverse: Bool
|
||||
) -> String? {
|
||||
return _ns.stringByApplyingTransform(transform, reverse: reverse)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1583,6 +1583,32 @@ NSStringAPIs.test("writeToURL(_:atomically:encoding:error:)") {
|
||||
}
|
||||
}
|
||||
|
||||
NSStringAPIs.test("stringByApplyingTransform(_:reverse:)") {
|
||||
if #available(OSX 10.11, iOS 9.0, *) {
|
||||
if true {
|
||||
let source = "tre\u{300}s k\u{fc}hl"
|
||||
expectEqual(
|
||||
"tres kuhl",
|
||||
source.stringByApplyingTransform(
|
||||
NSStringTransformStripDiacritics, reverse: false))
|
||||
}
|
||||
if true {
|
||||
let source = "hiragana"
|
||||
expectEqual(
|
||||
"ひらがな",
|
||||
source.stringByApplyingTransform(
|
||||
NSStringTransformLatinToHiragana, reverse: false))
|
||||
}
|
||||
if true {
|
||||
let source = "ひらがな"
|
||||
expectEqual(
|
||||
"hiragana",
|
||||
source.stringByApplyingTransform(
|
||||
NSStringTransformLatinToHiragana, reverse: true))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct ComparisonTest {
|
||||
let expectedUnicodeCollation: ExpectedComparisonResult
|
||||
let lhs: String
|
||||
|
||||
Reference in New Issue
Block a user