Various improvements

This commit is contained in:
Ilya Laktyushin
2022-05-10 19:32:23 +04:00
parent ff7cc72a71
commit 5e65806ac3
13 changed files with 877 additions and 141 deletions

View File

@@ -128,6 +128,37 @@ public extension TelegramEngine {
)
}
}
public func subscribe<
T0: TelegramEngineDataItem,
T1: TelegramEngineDataItem,
T2: TelegramEngineDataItem
>(
_ t0: T0,
_ t1: T1,
_ t2: T2
) -> Signal<
(
T0.Result,
T1.Result,
T2.Result
),
NoError> {
return self._subscribe(items: [
t0 as! AnyPostboxViewDataItem,
t1 as! AnyPostboxViewDataItem,
t2 as! AnyPostboxViewDataItem
])
|> map { results -> (T0.Result, T1.Result, T2.Result) in
return (
results[0] as! T0.Result,
results[1] as! T1.Result,
results[2] as! T2.Result
)
}
}
public func get<
T0: TelegramEngineDataItem,
T1: TelegramEngineDataItem
@@ -142,5 +173,23 @@ public extension TelegramEngine {
NoError> {
return self.subscribe(t0, t1) |> take(1)
}
public func get<
T0: TelegramEngineDataItem,
T1: TelegramEngineDataItem,
T2: TelegramEngineDataItem
>(
_ t0: T0,
_ t1: T1,
_ t2: T2
) -> Signal<
(
T0.Result,
T1.Result,
T2.Result
),
NoError> {
return self.subscribe(t0, t1, t2) |> take(1)
}
}
}