Home | History | Annotate | Download | only in Support

Lines Matching refs:Arg

162 static Option *LookupOption(StringRef &Arg, StringRef &Value,
165 if (Arg.empty()) return 0;
167 size_t EqualPos = Arg.find('=');
172 StringMap<Option*>::const_iterator I = OptionsMap.find(Arg);
177 // return Arg unmolested.
179 OptionsMap.find(Arg.substr(0, EqualPos));
182 Value = Arg.substr(EqualPos+1);
183 Arg = Arg.substr(0, EqualPos);
191 static Option *LookupNearestOption(StringRef Arg,
195 if (Arg.empty()) return 0;
198 std::pair<StringRef, StringRef> SplitArg = Arg.split('=');
199 StringRef &LHS = SplitArg.first; // LHS == Arg when no '=' is present.
214 StringRef Flag = PermitValue ? LHS : Arg;
297 // If this isn't a multi-arg option, just run the handler.
324 static bool ProvidePositionalOption(Option *Handler, StringRef Arg, int i) {
326 return ProvideOption(Handler, Handler->ArgStr, Arg, 0, 0, Dummy);
367 /// see if this is a prefix or grouped option. If so, split arg into output an
368 /// Arg/Value pair and return the Option to parse it with.
369 static Option *HandlePrefixedOrGroupedOption(StringRef &Arg, StringRef &Value,
372 if (Arg.size() == 1) return 0;
376 Option *PGOpt = getOptionPred(Arg, Length, isPrefixedOrGrouping, OptionsMap);
383 Value = Arg.substr(Length);
384 Arg = Arg.substr(0, Length);
385 assert(OptionsMap.count(Arg) && OptionsMap.find(Arg)->second == PGOpt);
394 // Move current arg name out of Arg into OneArgName.
395 StringRef OneArgName = Arg.substr(0, Length);
396 Arg = Arg.substr(Length);
407 PGOpt = getOptionPred(Arg, Length, isGrouping, OptionsMap);
408 } while (PGOpt && Length != Arg.size());
410 // Return the last option with Arg cut down to just the last one.
501 const char *arg = argv[i];
503 if (arg[0] == '@') {
504 sys::PathWithStatus respFile(++arg);
527 newArgv.push_back(strdup(arg));
950 StringRef Arg, bool &Value) {
951 if (Arg == "" || Arg == "true" || Arg == "TRUE" || Arg == "True" ||
952 Arg == "1") {
957 if (Arg == "false" || Arg == "FALSE" || Arg == "False" || Arg == "0") {
961 return O.error("'" + Arg +
968 StringRef Arg, boolOrDefault &Value) {
969 if (Arg == "" || Arg == "true" || Arg == "TRUE" || Arg == "True" ||
970 Arg == "1") {
974 if (Arg == "false" || Arg == "FALSE" || Arg == "False" || Arg == "0") {
979 return O.error("'" + Arg +
986 StringRef Arg, int &Value) {
987 if (Arg.getAsInteger(0, Value))
988 return O.error("'" + Arg + "' value invalid for integer argument!");
995 StringRef Arg, unsigned &Value) {
997 if (Arg.getAsInteger(0, Value))
998 return O.error("'" + Arg + "' value invalid for uint argument!");
1005 StringRef Arg, unsigned long long &Value){
1007 if (Arg.getAsInteger(0, Value))
1008 return O.error("'" + Arg + "' value invalid for uint argument!");
1014 static bool parseDouble(Option &O, StringRef Arg, double &Value) {
1015 SmallString<32> TmpStr(Arg.begin(), Arg.end());
1020 return O.error("'" + Arg + "' value invalid for floating point argument!");
1025 StringRef Arg, double &Val) {
1026 return parseDouble(O, Arg, Val);
1030 StringRef Arg, float &Val) {
1032 if (parseDouble(O, Arg, dVal))