Skip to content

Commit

Permalink
fix(from_usage): fix bug causing args to not be required
Browse files Browse the repository at this point in the history
  • Loading branch information
kbknapp committed Apr 22, 2015
1 parent d7c724d commit b76129e
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 12 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@
Cargo.lock

# Temp files
*~
.*~
32 changes: 21 additions & 11 deletions src/args/arg.rs
Original file line number Diff line number Diff line change
Expand Up @@ -211,21 +211,31 @@ impl<'n, 'l, 'h, 'b, 'p, 'r> Arg<'n, 'l, 'h, 'b, 'p, 'r> {
UsageToken::Name(n, req) => {
if name.is_none() {
name = Some(n);
if let Some(m) = req {
required = m;
if let Some(r) = req {
required = r;
}
}
} else if let Some(l) = long {
if l == name.unwrap() {
if let Some(r) = req {
required = r;
}
name = Some(n);
} else if n != l {
name = Some(n);
}

}
if short.is_some() || long.is_some() {
takes_value = true;
}
if let Some(l) = long {
if n != name.unwrap() && name.unwrap() == l {
name = Some(n);
if let Some(m) = req {
required = m;
}
}
}
// if let Some(l) = long {
// if n != name.unwrap() && name.unwrap() == l {
// name = Some(n);
// if let Some(r) = req {
// required = r;
// }
// }
// }
},
UsageToken::Short(s) => {
short = Some(s);
Expand Down

0 comments on commit b76129e

Please sign in to comment.