@@ -52,7 +52,7 @@ class Collection {
52
52
virtual void del (const std::string& key) = 0;
53
53
54
54
virtual std::unique_ptr<std::string> resolveFirst (
55
- const std::string& var) = 0;
55
+ const std::string& var) = 0;
56
56
57
57
virtual void resolveSingleMatch (const std::string& var,
58
58
std::vector<const Variable *> *l) = 0;
@@ -62,52 +62,129 @@ class Collection {
62
62
std::vector<const Variable *> *l) = 0;
63
63
64
64
65
+ /* store */
65
66
virtual void store (std::string key, std::string compartment,
66
67
std::string value) {
67
68
std::string nkey = compartment + " ::" + key;
68
69
store (nkey, value);
69
70
}
70
71
72
+
73
+ virtual void store (std::string key, std::string compartment,
74
+ std::string compartment2, std::string value) {
75
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + key;
76
+ store (nkey, value);
77
+ }
78
+
79
+
80
+ /* storeOrUpdateFirst */
71
81
virtual bool storeOrUpdateFirst (const std::string &key,
72
82
std::string compartment, const std::string &value) {
73
83
std::string nkey = compartment + " ::" + key;
74
84
return storeOrUpdateFirst (nkey, value);
75
85
}
76
86
87
+
88
+ virtual bool storeOrUpdateFirst (const std::string &key,
89
+ std::string compartment, std::string compartment2,
90
+ const std::string &value) {
91
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + key;
92
+ return storeOrUpdateFirst (nkey, value);
93
+ }
94
+
95
+
96
+ /* updateFirst */
77
97
virtual bool updateFirst (const std::string &key, std::string compartment,
78
98
const std::string &value) {
79
99
std::string nkey = compartment + " ::" + key;
80
100
return updateFirst (nkey, value);
81
101
}
82
102
103
+
104
+ virtual bool updateFirst (const std::string &key, std::string compartment,
105
+ std::string compartment2, const std::string &value) {
106
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + key;
107
+ return updateFirst (nkey, value);
108
+ }
109
+
110
+
111
+ /* del */
83
112
virtual void del (const std::string& key, std::string compartment) {
84
113
std::string nkey = compartment + " ::" + key;
85
114
del (nkey);
86
115
}
87
116
117
+
118
+ virtual void del (const std::string& key, std::string compartment,
119
+ std::string compartment2) {
120
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + key;
121
+ del (nkey);
122
+ }
123
+
124
+
125
+ /* resolveFirst */
88
126
virtual std::unique_ptr<std::string> resolveFirst (const std::string& var,
89
127
std::string compartment) {
90
128
std::string nkey = compartment + " ::" + var;
91
129
return resolveFirst (nkey);
92
130
}
93
131
132
+
133
+ virtual std::unique_ptr<std::string> resolveFirst (const std::string& var,
134
+ std::string compartment, std::string compartment2) {
135
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + var;
136
+ return resolveFirst (nkey);
137
+ }
138
+
139
+
140
+ /* resolveSingleMatch */
94
141
virtual void resolveSingleMatch (const std::string& var,
95
142
std::string compartment, std::vector<const Variable *> *l) {
96
143
std::string nkey = compartment + " ::" + var;
97
144
resolveSingleMatch (nkey, l);
98
145
}
99
146
147
+
148
+ virtual void resolveSingleMatch (const std::string& var,
149
+ std::string compartment, std::string compartment2,
150
+ std::vector<const Variable *> *l) {
151
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + var;
152
+ resolveSingleMatch (nkey, l);
153
+ }
154
+
155
+
156
+ /* resolveMultiMatches */
100
157
virtual void resolveMultiMatches (const std::string& var,
101
158
std::string compartment, std::vector<const Variable *> *l) {
102
159
std::string nkey = compartment + " ::" + var;
103
160
resolveMultiMatches (nkey, l);
104
161
}
105
162
163
+
164
+ virtual void resolveMultiMatches (const std::string& var,
165
+ std::string compartment, std::string compartment2,
166
+ std::vector<const Variable *> *l) {
167
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + var;
168
+ resolveMultiMatches (nkey, l);
169
+ }
170
+
171
+
172
+ /* resolveRegularExpression */
106
173
virtual void resolveRegularExpression (const std::string& var,
107
174
std::string compartment, std::vector<const Variable *> *l) {
108
175
std::string nkey = compartment + " ::" + var;
109
176
resolveRegularExpression (nkey, l);
110
177
}
178
+
179
+
180
+ virtual void resolveRegularExpression (const std::string& var,
181
+ std::string compartment, std::string compartment2,
182
+ std::vector<const Variable *> *l) {
183
+ std::string nkey = compartment + " ::" + compartment2 + " ::" + var;
184
+ resolveRegularExpression (nkey, l);
185
+ }
186
+
187
+ std::string m_name;
111
188
};
112
189
113
190
} // namespace collection
0 commit comments