Fixes from Marco Jez.
This commit is contained in:
parent
b40fe170c7
commit
25658ad31f
@ -294,33 +294,37 @@ bool ArgumentParser::read(int pos, const std::string& str)
|
||||
remove(pos,1);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]))
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+1)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]))
|
||||
{
|
||||
value1.assign(_argv[pos+1]);
|
||||
remove(pos,2);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+2)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]))
|
||||
{
|
||||
value1.assign(_argv[pos+1]);
|
||||
@ -328,17 +332,22 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,3);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2, Parameter value3)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+3)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]) &&
|
||||
value3.valid(_argv[pos+3]))
|
||||
{
|
||||
@ -348,17 +357,22 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,4);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2, Parameter value3, Parameter value4)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+4)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]) &&
|
||||
value3.valid(_argv[pos+3]) &&
|
||||
value4.valid(_argv[pos+4]))
|
||||
@ -370,17 +384,22 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,5);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+5)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]) &&
|
||||
value3.valid(_argv[pos+3]) &&
|
||||
value4.valid(_argv[pos+4]) &&
|
||||
@ -394,17 +413,22 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,6);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+6)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]) &&
|
||||
value3.valid(_argv[pos+3]) &&
|
||||
value4.valid(_argv[pos+4]) &&
|
||||
@ -420,17 +444,22 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,7);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+7)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]) &&
|
||||
value3.valid(_argv[pos+3]) &&
|
||||
value4.valid(_argv[pos+4]) &&
|
||||
@ -448,17 +477,22 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,8);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7, Parameter value8)
|
||||
{
|
||||
if (match(pos,str) &&
|
||||
value1.valid(_argv[pos+1]) &&
|
||||
if (match(pos,str))
|
||||
{
|
||||
if ((pos+8)<*_argc)
|
||||
{
|
||||
if (value1.valid(_argv[pos+1]) &&
|
||||
value2.valid(_argv[pos+2]) &&
|
||||
value3.valid(_argv[pos+3]) &&
|
||||
value4.valid(_argv[pos+4]) &&
|
||||
@ -478,11 +512,13 @@ bool ArgumentParser::read(int pos, const std::string& str, Parameter value1, Par
|
||||
remove(pos,9);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
reportError("argument to `"+str+"` is not valid");
|
||||
return false;
|
||||
}
|
||||
reportError("argument to `"+str+"` is missing");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ArgumentParser::errors(ErrorSeverity severity) const
|
||||
|
Loading…
Reference in New Issue
Block a user