You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/SessionUtilitiesKit/Utilities/Notification+Utilities.swift

40 lines
1.1 KiB
Swift

// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved.
import Foundation
extension Notification {
public struct Key: RawRepresentable, Hashable, ExpressibleByUnicodeScalarLiteral, ExpressibleByExtendedGraphemeClusterLiteral, ExpressibleByStringLiteral {
public typealias RawValue = String
public var rawValue: String
public init(_ rawValue: String) {
self.rawValue = rawValue
}
// MARK: - RawRepresentable
public init?(rawValue: String) {
self.rawValue = rawValue
}
// MARK: - ExpressibleByStringLiteral
public init(stringLiteral value: String) {
self.rawValue = value
}
// MARK: - ExpressibleByExtendedGraphemeClusterLiteral
public init(extendedGraphemeClusterLiteral value: String) {
self.rawValue = value
}
// MARK: - ExpressibleByUnicodeScalarLiteral
public init(unicodeScalarLiteral value: String) {
self.rawValue = value
}
}
}