(NS)String // Add some codepoint extensions.
This commit is contained in:
parent
bd5fdcaa26
commit
55dcdc8ce0
|
@ -71,6 +71,18 @@ public extension NSAttributedString {
|
|||
|
||||
public extension NSString {
|
||||
var localized: String { NSLocalizedString(description, comment: "") }
|
||||
|
||||
@objc func getCharDescriptions(_: Any? = nil) -> [String] {
|
||||
(self as String).charDescriptions
|
||||
}
|
||||
|
||||
@objc func getCodePoints(_: Any? = nil) -> [String] {
|
||||
(self as String).codePoints
|
||||
}
|
||||
|
||||
@objc func getDescriptionAsCodePoints(_: Any? = nil) -> [String] {
|
||||
(self as String).describedAsCodePoints
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - NSRange Extension
|
||||
|
|
|
@ -200,7 +200,7 @@ public extension String {
|
|||
}
|
||||
}
|
||||
|
||||
// MARK: - String CharName Extension
|
||||
// MARK: - String CharName and CodePoint Extension
|
||||
|
||||
public extension String {
|
||||
var charDescriptions: [String] {
|
||||
|
@ -209,6 +209,25 @@ public extension String {
|
|||
return String(format: "U+%02X %@", $0.value, theName)
|
||||
}
|
||||
}
|
||||
|
||||
var codePoints: [String] {
|
||||
map(\.codePoint)
|
||||
}
|
||||
|
||||
var describedAsCodePoints: [String] {
|
||||
map {
|
||||
"\($0) (\($0.codePoint))"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Character Codepoint
|
||||
|
||||
public extension Character {
|
||||
var codePoint: String {
|
||||
guard let value = unicodeScalars.first?.value else { return "U+NULL" }
|
||||
return String(format: "U+%02X", value)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - String Ellipsis Extension
|
||||
|
|
Loading…
Reference in New Issue