1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//! Backend marker types. One zero-sized struct per backend, each under
//! the existing Cargo feature. See DESIGN_V2.md §7.
;
;
;
/// AWS SQS backend marker.
///
/// SQS has no broker-level coordinated-group primitive — N consumers
/// polling one queue is independent polling, covered by
/// `Broker<Sqs>::consumer_supervisor()`. The `compile_fail` doctest below
/// pins that property: if someone ever adds
/// `impl HasCoordinatedGroups for Sqs`, this doctest starts compiling and
/// fails the build.
///
/// ```compile_fail
/// # #[cfg(feature = "aws-sns-sqs")]
/// # async fn _x() -> shove::error::Result<()> {
/// use shove::{Broker, Sqs};
/// use shove::sns::SnsConfig;
///
/// let broker = Broker::<Sqs>::new(SnsConfig {
/// region: None,
/// endpoint_url: None,
/// }).await?;
/// // error: no method named `consumer_group` for `Broker<Sqs>`
/// let _ = broker.consumer_group();
/// # Ok(())
/// # }
/// ```
;
;