msh-console/msh-console-library/data.cpp

40 lines
1.1 KiB
C++

#include "command.h"
namespace mshconsole{
inline const union Command::Data::Arg& Command::Data::getArg() const{
return d;
}
enum Command::Data::Types Command::Data::getType() const{
if(of->argInfo & POPT_ARG_INT || of->argInfo & POPT_ARG_VAL || of->argInfo == POPT_ARG_NONE){
return INT;
}
else if(of->argInfo & POPT_ARG_STRING){
return STRING;
}
else if(of->argInfo & POPT_ARG_LONG){
return LONG;
}
else if(of->argInfo & POPT_ARG_FLOAT){
return FLOAT;
}
else if(of->argInfo & POPT_ARG_DOUBLE){
return DOUBLE;
}
//else return NULL;
}
int Command::Data::getInt() const{
return d.i;
}
char* Command::Data::getString() const{
return d.i ? d.s : const_cast<char*>("");
}
long Command::Data::getLong() const{
return d.l;
}
float Command::Data::getFloat() const{
return d.f;
}
double Command::Data::getDouble() const{
return d.d;
}
}