25{
   27 
   28  string      inputFile;
   30 
   31  try {
   32 
   33    JParser<> zap(
"Example program to test equation parsing");
 
   34 
   37 
   38    zap(argc, argv);
   39  }
   40  catch(const exception &error) {
   41    FATAL(error.what() << endl);
 
   42  }
   43 
   44 
   46 
   47  const int  KEY_WIDTH =  6;
   48  const int  VAL_WIDTH = 30;
   49  const char SEP       = '|';
   50  
   52 
   53  ifstream in(inputFile.c_str());
   54 
   55  in.imbue(locale(in.getloc(), facet.clone()));
   56 
   57  cout << setw(4) << " "                            << ' ' 
   58       << setw(KEY_WIDTH) << left << "key"   << SEP << ' ' 
   59       << setw(VAL_WIDTH) << left << "value" << endl;
   60 
   61  cout << setw(KEY_WIDTH + 5) << setfill('-') << left << "-" 
   62       << setw(VAL_WIDTH + 0) << setfill('-') << left << "+" << setfill(' ') << endl;
   63 
   64  for (
JEquation equation; in >> equation; ) {
 
   65 
   66    int i = 0;
   67 
   68    for ( ; facet.isDivision(equation.getSeparator()); ++i) {
   69 
   70      cout << "[" << setw(2) << right << i << "]"                    << ' '
   71           << setw(KEY_WIDTH) << left << equation.getKey()   << SEP  << ' '
   72           << setw(VAL_WIDTH) << left << equation.getValue() << endl;
   73 
   74      equation.setEquation(facet);
   75    }
   76 
   77    cout << "[" << setw(2) << right << i << "]"                    << ' '
   78         << setw(KEY_WIDTH) << left << equation.getKey()   << SEP  << ' '
   79         << setw(VAL_WIDTH) << left << equation.getValue() << endl;
   80  }
   81 
   82  in.close();
   83}
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
Facet class to specify parsing of equations in currect locale (see class JLANG::JEquation).
 
Simple data structure to support I/O of equations (see class JLANG::JEquation).
 
General purpose equation class.
 
Utility class to parse command line options.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).