TrackQueues: Convenience methods and extension (#7)

* Adds a uuid field to tracks and handles to make it easier to identify and match event sources after the fact.
* Adds optional feature "builtin-queue" to expose a queue on every driver, as a convenience for users who can guarantee they'll need a queue for every driver/call.
* Adds methods to queues to allow access to the currently running track handle, remove a specified queue entry, as well as to mutate the underlying queue from a closure.
This commit is contained in:
Kyle Simpson
2020-11-16 08:57:54 +00:00
committed by GitHub
parent 047ce0379a
commit de652250d8
7 changed files with 387 additions and 119 deletions

View File

@@ -94,6 +94,11 @@ default-features = false
optional = true
version = "2"
[dependencies.uuid]
optional = true
version = "0.8"
features = ["v4"]
[dependencies.xsalsa20poly1305]
optional = true
version = "0.6"
@@ -135,9 +140,9 @@ driver = [
"tokio/sync",
"tokio/time",
"url",
"uuid",
"xsalsa20poly1305",
]
youtube-dlc = []
rustls = ["async-tungstenite/tokio-rustls"]
native = ["async-tungstenite/tokio-native-tls"]
serenity-rustls = ["serenity/rustls_backend", "rustls", "gateway", "serenity-deps"]
@@ -149,6 +154,9 @@ simd-zlib = ["twilight-gateway/simd-zlib"]
stock-zlib = ["twilight-gateway/stock-zlib"]
serenity-deps = ["async-trait"]
youtube-dlc = []
builtin-queue = []
[[bench]]
name = "mixing"
path = "benches/mixing.rs"