From 5d8f6832bab8b662f4226fbc21cbd8dac97dccfb Mon Sep 17 00:00:00 2001 From: Nikita Konopelko Date: Mon, 13 Nov 2023 13:12:53 +0100 Subject: [PATCH] namespace DelayedQueue.n --- Source/DelayedQueue.swift | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/Source/DelayedQueue.swift b/Source/DelayedQueue.swift index a6a73f7..4829f95 100644 --- a/Source/DelayedQueue.swift +++ b/Source/DelayedQueue.swift @@ -27,4 +27,38 @@ public extension DelayedQueue { execute: workItem) } } + + /// namespace for shortcut + /// + /// interface: + /// ```swift + /// func set(_ queue: DelayedQueue) + /// ``` + /// call will be: + /// ```swift + /// set(.n.sync(.main)) + /// ``` + /// instead of + /// ```swift + /// set(.sync(Queue.main)) + /// ``` + enum n {} +} + +public extension DelayedQueue.n { + static func sync(_ q: Queue) -> DelayedQueue { + return .sync(q) + } + + static func async(_ q: Queue) -> DelayedQueue { + return .async(q) + } + + static func asyncAfter(deadline: DispatchTime, queue: Queue) -> DelayedQueue { + return .asyncAfter(deadline: deadline, queue: queue) + } + + static func asyncAfter(deadline: DispatchTime, flags: Queue.Flags, queue: Queue) -> DelayedQueue { + return .asyncAfterWithFlags(deadline: deadline, flags: flags, queue: queue) + } }