driver_tools/subcommands/doctor/args.rs
1// Copyright 2026 The Fuchsia Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5use argh::{ArgsInfo, FromArgs};
6
7#[derive(ArgsInfo, FromArgs, Debug, PartialEq)]
8#[argh(subcommand, name = "doctor", description = "Diagnose driver binding issues")]
9pub struct DoctorCommand {
10 /// URL or a substring of the URL of the driver to diagnose. The command will fail if multiple drivers match.
11 #[argh(option)]
12 pub driver: Option<String>,
13
14 /// moniker of the node to diagnose.
15 #[argh(option)]
16 pub node: Option<String>,
17
18 /// if this exists, the user will be prompted for a component to select.
19 #[argh(switch, short = 's', long = "select")]
20 pub select: bool,
21
22 /// name of the composite node spec to diagnose.
23 #[argh(option)]
24 pub composite_node_spec: Option<String>,
25}