19{
21
23
24 try {
25
26 JParser<> zap(
"Example program to test hash map.");
27
29
30 zap(argc, argv);
31 }
32 catch(const exception &error) {
33 FATAL(error.what() << endl);
34 }
35
36
38
40
41 typedef JTuple <typelist> key_type;
43
44 hash_map buffer;
45
46 buffer[1][1][3] = "mies";
47 buffer[2][1][2] = "noot";
48 buffer[3][1][1] = "aap";
49
50 key_type
key(2, 4, 6);
51
52 buffer.put(key, "hello world");
53
54 cout <<
"Has " <<
key <<
" ? " << buffer.has(key) << endl;
55
56
57 for (hash_map::super_iterator i = buffer.super_begin(); i != buffer.super_end(); ++i) {
58 i.getValue() += '!';
59 }
60
61 for (hash_map::const_iterator i0 = buffer.begin(); i0 != buffer.end(); ++i0) {
62 for (hash_map::mapped_type::const_iterator i1 = i0->second.begin(); i1 != i0->second.end(); ++i1) {
63 for (hash_map::mapped_type::mapped_type::const_iterator i2 = i1->second.begin(); i2 != i1->second.end(); ++i2) {
64 cout << i0->first << ' ' << i1->first << ' ' << i2->first << ' ' << i2->second << endl;
65 }
66 }
67 }
68
69 for (hash_map::super_const_iterator i = buffer.super_begin(); i != buffer.super_end(); ++i) {
70 cout << i.getKey() << ' ' << i.getValue() << endl;
71 }
72}
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Utility class to parse command line options.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).