Revert "/api/schema.rs: implement Schema::Option"

This reverts commit 0a35462c1e.

I am not sure this add much value, and the old approach needs
less memory. If we really need single optional values, we can still
implement such Option while keeping the hash based approach...
This commit is contained in:
Dietmar Maurer
2019-01-19 12:53:07 +01:00
parent 80f069656d
commit 379ea0edb6
4 changed files with 20 additions and 44 deletions

View File

@ -120,7 +120,7 @@ fn record_done_arguments(done: &mut HashSet<String>, parameters: &ObjectSchema,
for arg in list {
if arg.starts_with("--") && arg.len() > 2 {
let prop_name = arg[2..].to_owned();
if let Some(schema) = parameters.properties.get::<str>(&prop_name) {
if let Some((_, schema)) = parameters.properties.get::<str>(&prop_name) {
match schema.as_ref() {
Schema::Array(_) => { /* do nothing */ }
_ => { done.insert(prop_name); }
@ -147,7 +147,7 @@ fn print_simple_completion(
print_simple_completion(cli_cmd, done, &arg_param[1..], args);
return;
} else if args.len() == 1 {
if let Some(schema) = cli_cmd.info.parameters.properties.get(prop_name) {
if let Some((_, schema)) = cli_cmd.info.parameters.properties.get(prop_name) {
print_property_completion(schema, prop_name, &cli_cmd.completion_functions, &args[0]);
}
}
@ -164,14 +164,14 @@ fn print_simple_completion(
let last = &args[args.len()-1];
if last.starts_with("--") && last.len() > 2 {
let prop_name = &last[2..];
if let Some(schema) = cli_cmd.info.parameters.properties.get(prop_name) {
if let Some((_, schema)) = cli_cmd.info.parameters.properties.get(prop_name) {
print_property_completion(schema, prop_name, &cli_cmd.completion_functions, &prefix);
}
return;
}
}
for (name, _schema) in &cli_cmd.info.parameters.properties {
for (name, (_optional, _schema)) in &cli_cmd.info.parameters.properties {
if done.contains(*name) { continue; }
let option = String::from("--") + name;
if option.starts_with(&prefix) {