YB
Size: a a a
YB
K
K
use structopt::clap::ArgGroup;
use structopt::StructOpt;
#[derive(Debug, StructOpt)]
#[structopt(
group = ArgGroup::with_name("verbose"),
group = ArgGroup::with_name("quiet").conflicts_with("verbose"),
)]
struct Opt {
#[structopt(long, group = "verbose")]
verbose: bool,
#[structopt(long, group = "quiet")]
quiet: bool,
}
fn main() {
dbg!(Opt::from_args());
}
multiple
, вот так работает:use structopt::clap::ArgGroup;
use structopt::StructOpt;
#[derive(Debug, StructOpt)]
#[structopt(
group = ArgGroup::with_name("verbosity").multiple(false),
)]
struct Opt {
#[structopt(long, group = "verbosity")]
verbose: bool,
#[structopt(long, group = "verbosity")]
quiet: bool,
}
fn main() {
dbg!(Opt::from_args());
}
YB
R
R
K
tokio::sync::broadcast
, только нужно смотреть по требуемым гарантиямRS
tokio::sync::broadcast
, только нужно смотреть по требуемым гарантиямK
RS
K
E
R
tokio::sync::broadcast
, только нужно смотреть по требуемым гарантиямK
E
RS
K
R
E