00001 #ifndef N2NC_UTILS_ARGSVALIDARGUMENT_H
00002 #define N2NC_UTILS_ARGSVALIDARGUMENT_H
00003
00004 #include "nixsys.h"
00005
00006 namespace n2nc {
00007 namespace utils {
00008 namespace args {
00009
00010 using namespace std ;
00016 class ValidArgument{
00017 public:
00018 ValidArgument(string name);
00019
00020
00021 ~ValidArgument();
00022
00023 string toString();
00024 static ValidArgument* find(string name,vector<ValidArgument>& valids);
00025
00026
00028 bool paramrequired ;
00030 std::string name ;
00032 std::string comment ;
00034 std::string defaultparam ;
00036 std::vector<std::string> paramlist ;
00038 std::vector<std::string> paramlist_pattern ;
00040 std::vector<std::string> dependsof ;
00042 std::vector<std::string> conflictsto ;
00043
00044
00045
00046 };
00047
00055 string explode(vector<string>& sl, string delimiter);
00056
00057
00058 }
00059 }
00060 }
00061
00062 #endif