Android-cuttlefish cvd tool
|
#include <start_selector_parser.h>
Classes | |
struct | InstanceFromEnvParam |
struct | InstanceIdsParams |
class | ParsedInstanceIdsOpt |
struct | VerifyNumOfInstancesParam |
Public Member Functions | |
std::optional< std::string > | GroupName () const |
std::optional< std::vector< std::string > > | PerInstanceNames () const |
const std::optional< std::vector< unsigned > > & | InstanceIds () const |
unsigned | RequestedNumInstances () const |
bool | IsMaybeDefaultGroup () const |
bool | UseCvdalloc () const |
Static Public Member Functions | |
static Result< StartSelectorParser > | ConductSelectFlagsParser (const SelectorOptions &selector_options, const cvd_common::Args &cmd_args, const cvd_common::Envs &envs) |
Private Member Functions | |
StartSelectorParser (const std::string &system_wide_user_home, const SelectorOptions &selector_options, const cvd_common::Args &cmd_args, const cvd_common::Envs &envs) | |
Result< void > | ParseOptions () |
Result< ParsedInstanceIdsOpt > | HandleInstanceIds (const InstanceIdsParams &instance_id_params) |
std::optional< std::vector< unsigned > > | InstanceFromEnvironment (const InstanceFromEnvParam ¶ms) |
Result< unsigned > | VerifyNumOfInstances (const VerifyNumOfInstancesParam ¶ms, unsigned default_n_instances=1) const |
bool | CalcMayBeDefaultGroup () |
Private Attributes | |
std::optional< std::vector< unsigned > > | instance_ids_ |
unsigned | requested_num_instances_ |
bool | may_be_default_group_ |
bool | use_cvdalloc_ |
const std::string | client_user_home_ |
SelectorOptions | selector_options_ |
cvd_common::Args | cmd_args_ |
cvd_common::Envs | envs_ |
This class parses the separated SelectorOptions defined in cvd_server.proto.
Note that the parsing is from the perspective of syntax.
In other words, this does not check the following, for example:
Extends the common selector options with start specific ones.
|
private |
|
private |
|
static |
std::optional< std::string > cuttlefish::selector::StartSelectorParser::GroupName | ( | ) | const |
|
private |
|
private |
|
inline |
|
inline |
|
private |
std::optional< std::vector< std::string > > cuttlefish::selector::StartSelectorParser::PerInstanceNames | ( | ) | const |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
The following are considered, and left empty if can't be figured out.
–base_instance_num, –instance_nums, –num_instances, instance_names_.size(), CUTTLEFISH_INSTANCE, and vsoc-suffix if it is the user name.
instance_names_.size() is effectively another –num_instances. CUTTLEFISH_INSTANCE and the suffix in order are considered as –base_instance_num if –base_instance_num is not given and –instance_nums is not given.
|
private |
|
private |
|
private |
|
private |