19   typedef JAutoMap_t::value_type                  value_type;
 
   24   struct JElement_t : 
public value_type 
 
   32   template<> JElement_t::JElement_t(
JType<char>)   : value_type(1, 
"char") {}
 
   33   template<> JElement_t::JElement_t(
JType<int>)    : value_type(2, 
"int") {}
 
   34   template<> JElement_t::JElement_t(
JType<float>)  : value_type(3, 
"float") {}
 
   35   template<> JElement_t::JElement_t(
JType<double>) : value_type(4, 
"double") {}
 
   42   template<> 
template<> value_type JAutoMap_t::getAutoElement(
JType<char>  ) { 
return value_type(1, 
"char"); }
 
   43   template<> 
template<> value_type JAutoMap_t::getAutoElement(
JType<int>   ) { 
return value_type(2, 
"int"); }
 
   44   template<> 
template<> value_type JAutoMap_t::getAutoElement(
JType<float> ) { 
return value_type(3, 
"float"); }
 
   45   template<> 
template<> value_type JAutoMap_t::getAutoElement(
JType<double>) { 
return value_type(4, 
"double"); }
 
   56 int main(
int argc, 
char **argv)
 
   64     JParser<> zap(
"Example program to test automatic generation of map based on data types.");
 
   70   catch(
const exception &error) {
 
   71     FATAL(error.what() << endl);
 
   86     zmap.insert<JDataTypes_t>();
 
   88     cout << 
"First method" << endl;
 
   90     for (JAutoMap_t::const_iterator i = zmap.begin(); i != zmap.end(); ++i) {
 
   91       cout << setw(2) << i->first << 
' ' << i->second << endl;
 
  100     cout << 
"Second method" << endl;
 
  102     for (JAutoMap_t::const_iterator i = zmap.begin(); i != zmap.end(); ++i) {
 
  103       cout << setw(2) << i->first << 
' ' << i->second << endl;
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
Auxiliary class for a type holder. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
General purpose messaging. 
 
Utility class to parse command line options.