forked from OSchip/llvm-project
[driver] Add a hasFlag API that accepts a positive alias.
Part of rdar://13622687 llvm-svn: 180203
This commit is contained in:
parent
cc111b2bc9
commit
cba3b88da5
|
@ -237,7 +237,14 @@ namespace driver {
|
|||
/// true if the option is present, false if the negation is present, and
|
||||
/// \p Default if neither option is given. If both the option and its
|
||||
/// negation are present, the last one wins.
|
||||
bool hasFlag(OptSpecifier Pos, OptSpecifier Neg, bool Default=true) const;
|
||||
bool hasFlag(OptSpecifier Pos, OptSpecifier Neg, bool Default = true) const;
|
||||
|
||||
/// hasFlag - Given an option \p Pos, an alias \p PosAlias and its negative
|
||||
/// form \p Neg, return true if the option or its alias is present, false if
|
||||
/// the negation is present, and \p Default if none of the options are
|
||||
/// given. If multiple options are present, the last one wins.
|
||||
bool hasFlag(OptSpecifier Pos, OptSpecifier PosAlias, OptSpecifier Neg,
|
||||
bool Default = true) const;
|
||||
|
||||
/// AddLastArg - Render only the last argument match \p Id0, if present.
|
||||
void AddLastArg(ArgStringList &Output, OptSpecifier Id0) const;
|
||||
|
|
|
@ -206,6 +206,13 @@ bool ArgList::hasFlag(OptSpecifier Pos, OptSpecifier Neg, bool Default) const {
|
|||
return Default;
|
||||
}
|
||||
|
||||
bool ArgList::hasFlag(OptSpecifier Pos, OptSpecifier PosAlias, OptSpecifier Neg,
|
||||
bool Default) const {
|
||||
if (Arg *A = getLastArg(Pos, PosAlias, Neg))
|
||||
return A->getOption().matches(Pos) || A->getOption().matches(PosAlias);
|
||||
return Default;
|
||||
}
|
||||
|
||||
StringRef ArgList::getLastArgValue(OptSpecifier Id,
|
||||
StringRef Default) const {
|
||||
if (Arg *A = getLastArg(Id))
|
||||
|
|
Loading…
Reference in New Issue