xref: /OK3568_Linux_fs/buildroot/package/odb/0002-Remove-gratuitous-classes.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom 5486c8c85b9cfb92232518b2fadf6d8ed7b332d5 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Boris Kolpackov <boris@codesynthesis.com>
3*4882a593SmuzhiyunDate: Wed, 3 Jun 2015 21:35:43 +0200
4*4882a593SmuzhiyunSubject: [PATCH] Remove gratuitous classes
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunIn the process also get rid of global class processor which conflicts
7*4882a593Smuzhiyunwith enum processor on MIPS.
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun[Upstream: bbc39ffe31c67506b4c03fc56fa3adcb925b6325]
10*4882a593SmuzhiyunSigned-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com>
11*4882a593Smuzhiyun---
12*4882a593Smuzhiyun odb/context.hxx              |  3 ++-
13*4882a593Smuzhiyun odb/generator.cxx            | 24 ++++++++++++------------
14*4882a593Smuzhiyun odb/generator.hxx            | 26 ++++++++------------------
15*4882a593Smuzhiyun odb/plugin.cxx               | 18 +++++++-----------
16*4882a593Smuzhiyun odb/processor.cxx            |  4 ++--
17*4882a593Smuzhiyun odb/processor.hxx            | 22 ++++++----------------
18*4882a593Smuzhiyun odb/relational/validator.cxx |  6 +++---
19*4882a593Smuzhiyun odb/relational/validator.hxx | 29 +++++++++--------------------
20*4882a593Smuzhiyun odb/validator.cxx            | 13 ++++++-------
21*4882a593Smuzhiyun odb/validator.hxx            | 28 +++++++++-------------------
22*4882a593Smuzhiyun 10 files changed, 64 insertions(+), 109 deletions(-)
23*4882a593Smuzhiyun
24*4882a593Smuzhiyundiff --git a/odb/context.hxx b/odb/context.hxx
25*4882a593Smuzhiyunindex 1cf002a..351bc61 100644
26*4882a593Smuzhiyun--- a/odb/context.hxx
27*4882a593Smuzhiyun+++ b/odb/context.hxx
28*4882a593Smuzhiyun@@ -41,7 +41,8 @@ typedef cutl::re::format regex_format;
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun typedef std::vector<regexsub> regex_mapping;
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun-//
33*4882a593Smuzhiyun+// Generic exception thrown to indicate a failure when diagnostics
34*4882a593Smuzhiyun+// has already been issued (to stderr).
35*4882a593Smuzhiyun //
36*4882a593Smuzhiyun class operation_failed {};
37*4882a593Smuzhiyun
38*4882a593Smuzhiyundiff --git a/odb/generator.cxx b/odb/generator.cxx
39*4882a593Smuzhiyunindex e165faf..6aa5151 100644
40*4882a593Smuzhiyun--- a/odb/generator.cxx
41*4882a593Smuzhiyun+++ b/odb/generator.cxx
42*4882a593Smuzhiyun@@ -58,7 +58,7 @@ namespace
43*4882a593Smuzhiyun     if (!ifs.is_open ())
44*4882a593Smuzhiyun     {
45*4882a593Smuzhiyun       cerr << "error: unable to open '" << p << "' in read mode" << endl;
46*4882a593Smuzhiyun-      throw generator::failed ();
47*4882a593Smuzhiyun+      throw generator_failed ();
48*4882a593Smuzhiyun     }
49*4882a593Smuzhiyun   }
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun@@ -70,7 +70,7 @@ namespace
52*4882a593Smuzhiyun     if (!ofs.is_open ())
53*4882a593Smuzhiyun     {
54*4882a593Smuzhiyun       cerr << "error: unable to open '" << p << "' in write mode" << endl;
55*4882a593Smuzhiyun-      throw generator::failed ();
56*4882a593Smuzhiyun+      throw generator_failed ();
57*4882a593Smuzhiyun     }
58*4882a593Smuzhiyun   }
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun@@ -118,7 +118,7 @@ namespace
61*4882a593Smuzhiyun   }
62*4882a593Smuzhiyun }
63*4882a593Smuzhiyun
64*4882a593Smuzhiyun-void generator::
65*4882a593Smuzhiyun+void
66*4882a593Smuzhiyun generate (options const& ops,
67*4882a593Smuzhiyun           features& fts,
68*4882a593Smuzhiyun           semantics::unit& unit,
69*4882a593Smuzhiyun@@ -259,7 +259,7 @@ generate (options const& ops,
70*4882a593Smuzhiyun             cerr << in_log_path << ": error: wrong database '" <<
71*4882a593Smuzhiyun               old_changelog->database () << "', expected '" << db <<
72*4882a593Smuzhiyun               "'" << endl;
73*4882a593Smuzhiyun-            throw generator::failed ();
74*4882a593Smuzhiyun+            throw generator_failed ();
75*4882a593Smuzhiyun           }
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun           string sn (ops.schema_name ()[db]);
78*4882a593Smuzhiyun@@ -268,18 +268,18 @@ generate (options const& ops,
79*4882a593Smuzhiyun             cerr << in_log_path << ": error: wrong schema name '" <<
80*4882a593Smuzhiyun               old_changelog->schema_name () << "', expected '" << sn <<
81*4882a593Smuzhiyun               "'" << endl;
82*4882a593Smuzhiyun-            throw generator::failed ();
83*4882a593Smuzhiyun+            throw generator_failed ();
84*4882a593Smuzhiyun           }
85*4882a593Smuzhiyun         }
86*4882a593Smuzhiyun         catch (const ios_base::failure& e)
87*4882a593Smuzhiyun         {
88*4882a593Smuzhiyun           cerr << in_log_path << ": read failure" << endl;
89*4882a593Smuzhiyun-          throw failed ();
90*4882a593Smuzhiyun+          throw generator_failed ();
91*4882a593Smuzhiyun         }
92*4882a593Smuzhiyun         catch (const xml::parsing& e)
93*4882a593Smuzhiyun         {
94*4882a593Smuzhiyun           cerr << e.what () << endl;
95*4882a593Smuzhiyun-          throw failed ();
96*4882a593Smuzhiyun+          throw generator_failed ();
97*4882a593Smuzhiyun         }
98*4882a593Smuzhiyun       }
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun@@ -976,12 +976,12 @@ generate (options const& ops,
101*4882a593Smuzhiyun       catch (const ios_base::failure& e)
102*4882a593Smuzhiyun       {
103*4882a593Smuzhiyun         cerr << out_log_path << ": write failure" << endl;
104*4882a593Smuzhiyun-        throw failed ();
105*4882a593Smuzhiyun+        throw generator_failed ();
106*4882a593Smuzhiyun       }
107*4882a593Smuzhiyun       catch (const xml::serialization& e)
108*4882a593Smuzhiyun       {
109*4882a593Smuzhiyun         cerr << e.what () << endl;
110*4882a593Smuzhiyun-        throw failed ();
111*4882a593Smuzhiyun+        throw generator_failed ();
112*4882a593Smuzhiyun       }
113*4882a593Smuzhiyun     }
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun@@ -998,18 +998,18 @@ generate (options const& ops,
116*4882a593Smuzhiyun   {
117*4882a593Smuzhiyun     // Code generation failed. Diagnostics has already been issued.
118*4882a593Smuzhiyun     //
119*4882a593Smuzhiyun-    throw failed ();
120*4882a593Smuzhiyun+    throw generator_failed ();
121*4882a593Smuzhiyun   }
122*4882a593Smuzhiyun   catch (semantics::invalid_path const& e)
123*4882a593Smuzhiyun   {
124*4882a593Smuzhiyun     cerr << "error: '" << e.path () << "' is not a valid filesystem path"
125*4882a593Smuzhiyun          << endl;
126*4882a593Smuzhiyun-    throw failed ();
127*4882a593Smuzhiyun+    throw generator_failed ();
128*4882a593Smuzhiyun   }
129*4882a593Smuzhiyun   catch (fs::error const&)
130*4882a593Smuzhiyun   {
131*4882a593Smuzhiyun     // Auto-removal of generated files failed. Ignore it.
132*4882a593Smuzhiyun     //
133*4882a593Smuzhiyun-    throw failed ();
134*4882a593Smuzhiyun+    throw generator_failed ();
135*4882a593Smuzhiyun   }
136*4882a593Smuzhiyun }
137*4882a593Smuzhiyundiff --git a/odb/generator.hxx b/odb/generator.hxx
138*4882a593Smuzhiyunindex ce49295..e83d94d 100644
139*4882a593Smuzhiyun--- a/odb/generator.hxx
140*4882a593Smuzhiyun+++ b/odb/generator.hxx
141*4882a593Smuzhiyun@@ -11,23 +11,13 @@
142*4882a593Smuzhiyun #include <odb/features.hxx>
143*4882a593Smuzhiyun #include <odb/semantics/unit.hxx>
144*4882a593Smuzhiyun
145*4882a593Smuzhiyun-class generator
146*4882a593Smuzhiyun-{
147*4882a593Smuzhiyun-public:
148*4882a593Smuzhiyun-  class failed {};
149*4882a593Smuzhiyun-
150*4882a593Smuzhiyun-  void
151*4882a593Smuzhiyun-  generate (options const&,
152*4882a593Smuzhiyun-            features&,
153*4882a593Smuzhiyun-            semantics::unit&,
154*4882a593Smuzhiyun-            semantics::path const& file,
155*4882a593Smuzhiyun-            std::vector<semantics::path> const& inputs);
156*4882a593Smuzhiyun-
157*4882a593Smuzhiyun-  generator () {}
158*4882a593Smuzhiyun-
159*4882a593Smuzhiyun-private:
160*4882a593Smuzhiyun-  generator (generator const&);
161*4882a593Smuzhiyun-  generator& operator= (generator const&);
162*4882a593Smuzhiyun-};
163*4882a593Smuzhiyun+class generator_failed {};
164*4882a593Smuzhiyun+
165*4882a593Smuzhiyun+void
166*4882a593Smuzhiyun+generate (options const&,
167*4882a593Smuzhiyun+          features&,
168*4882a593Smuzhiyun+          semantics::unit&,
169*4882a593Smuzhiyun+          semantics::path const& file,
170*4882a593Smuzhiyun+          std::vector<semantics::path> const& inputs);
171*4882a593Smuzhiyun
172*4882a593Smuzhiyun #endif // ODB_GENERATOR_HXX
173*4882a593Smuzhiyundiff --git a/odb/plugin.cxx b/odb/plugin.cxx
174*4882a593Smuzhiyunindex e32f225..51f0cb1 100644
175*4882a593Smuzhiyun--- a/odb/plugin.cxx
176*4882a593Smuzhiyun+++ b/odb/plugin.cxx
177*4882a593Smuzhiyun@@ -199,27 +199,23 @@ gate_callback (void*, void*)
178*4882a593Smuzhiyun     parser p (*options_, loc_pragmas_, ns_loc_pragmas_, decl_pragmas_);
179*4882a593Smuzhiyun     auto_ptr<unit> u (p.parse (global_namespace, file_));
180*4882a593Smuzhiyun
181*4882a593Smuzhiyun-
182*4882a593Smuzhiyun     features f;
183*4882a593Smuzhiyun
184*4882a593Smuzhiyun     // Validate, pass 1.
185*4882a593Smuzhiyun     //
186*4882a593Smuzhiyun-    validator v;
187*4882a593Smuzhiyun-    v.validate (*options_, f, *u, file_, 1);
188*4882a593Smuzhiyun+    validate (*options_, f, *u, file_, 1);
189*4882a593Smuzhiyun
190*4882a593Smuzhiyun     // Process.
191*4882a593Smuzhiyun     //
192*4882a593Smuzhiyun-    processor pr;
193*4882a593Smuzhiyun-    pr.process (*options_, f, *u, file_);
194*4882a593Smuzhiyun+    process (*options_, f, *u, file_);
195*4882a593Smuzhiyun
196*4882a593Smuzhiyun     // Validate, pass 2.
197*4882a593Smuzhiyun     //
198*4882a593Smuzhiyun-    v.validate (*options_, f, *u, file_, 2);
199*4882a593Smuzhiyun+    validate (*options_, f, *u, file_, 2);
200*4882a593Smuzhiyun
201*4882a593Smuzhiyun     // Generate.
202*4882a593Smuzhiyun     //
203*4882a593Smuzhiyun-    generator g;
204*4882a593Smuzhiyun-    g.generate (*options_, f, *u, file_, inputs_);
205*4882a593Smuzhiyun+    generate (*options_, f, *u, file_, inputs_);
206*4882a593Smuzhiyun   }
207*4882a593Smuzhiyun   catch (cutl::re::format const& e)
208*4882a593Smuzhiyun   {
209*4882a593Smuzhiyun@@ -239,19 +235,19 @@ gate_callback (void*, void*)
210*4882a593Smuzhiyun     //
211*4882a593Smuzhiyun     r = 1;
212*4882a593Smuzhiyun   }
213*4882a593Smuzhiyun-  catch (validator::failed const&)
214*4882a593Smuzhiyun+  catch (validator_failed const&)
215*4882a593Smuzhiyun   {
216*4882a593Smuzhiyun     // Diagnostics has aready been issued.
217*4882a593Smuzhiyun     //
218*4882a593Smuzhiyun     r = 1;
219*4882a593Smuzhiyun   }
220*4882a593Smuzhiyun-  catch (processor::failed const&)
221*4882a593Smuzhiyun+  catch (processor_failed const&)
222*4882a593Smuzhiyun   {
223*4882a593Smuzhiyun     // Diagnostics has aready been issued.
224*4882a593Smuzhiyun     //
225*4882a593Smuzhiyun     r = 1;
226*4882a593Smuzhiyun   }
227*4882a593Smuzhiyun-  catch (generator::failed const&)
228*4882a593Smuzhiyun+  catch (generator_failed const&)
229*4882a593Smuzhiyun   {
230*4882a593Smuzhiyun     // Diagnostics has aready been issued.
231*4882a593Smuzhiyun     //
232*4882a593Smuzhiyundiff --git a/odb/processor.cxx b/odb/processor.cxx
233*4882a593Smuzhiyunindex a808a52..3a2cb1d 100644
234*4882a593Smuzhiyun--- a/odb/processor.cxx
235*4882a593Smuzhiyun+++ b/odb/processor.cxx
236*4882a593Smuzhiyun@@ -3064,7 +3064,7 @@ namespace
237*4882a593Smuzhiyun   };
238*4882a593Smuzhiyun }
239*4882a593Smuzhiyun
240*4882a593Smuzhiyun-void processor::
241*4882a593Smuzhiyun+void
242*4882a593Smuzhiyun process (options const& ops,
243*4882a593Smuzhiyun          features& f,
244*4882a593Smuzhiyun          semantics::unit& unit,
245*4882a593Smuzhiyun@@ -3120,6 +3120,6 @@ process (options const& ops,
246*4882a593Smuzhiyun   {
247*4882a593Smuzhiyun     // Processing failed. Diagnostics has already been issued.
248*4882a593Smuzhiyun     //
249*4882a593Smuzhiyun-    throw failed ();
250*4882a593Smuzhiyun+    throw processor_failed ();
251*4882a593Smuzhiyun   }
252*4882a593Smuzhiyun }
253*4882a593Smuzhiyundiff --git a/odb/processor.hxx b/odb/processor.hxx
254*4882a593Smuzhiyunindex 602b999..e62dd25 100644
255*4882a593Smuzhiyun--- a/odb/processor.hxx
256*4882a593Smuzhiyun+++ b/odb/processor.hxx
257*4882a593Smuzhiyun@@ -9,22 +9,12 @@
258*4882a593Smuzhiyun #include <odb/features.hxx>
259*4882a593Smuzhiyun #include <odb/semantics/unit.hxx>
260*4882a593Smuzhiyun
261*4882a593Smuzhiyun-class processor
262*4882a593Smuzhiyun-{
263*4882a593Smuzhiyun-public:
264*4882a593Smuzhiyun-  class failed {};
265*4882a593Smuzhiyun+class processor_failed {};
266*4882a593Smuzhiyun
267*4882a593Smuzhiyun-  void
268*4882a593Smuzhiyun-  process (options const&,
269*4882a593Smuzhiyun-           features&,
270*4882a593Smuzhiyun-           semantics::unit&,
271*4882a593Smuzhiyun-           semantics::path const&);
272*4882a593Smuzhiyun-
273*4882a593Smuzhiyun-  processor () {}
274*4882a593Smuzhiyun-
275*4882a593Smuzhiyun-private:
276*4882a593Smuzhiyun-  processor (processor const&);
277*4882a593Smuzhiyun-  processor& operator= (processor const&);
278*4882a593Smuzhiyun-};
279*4882a593Smuzhiyun+void
280*4882a593Smuzhiyun+process (options const&,
281*4882a593Smuzhiyun+         features&,
282*4882a593Smuzhiyun+         semantics::unit&,
283*4882a593Smuzhiyun+         semantics::path const&);
284*4882a593Smuzhiyun
285*4882a593Smuzhiyun #endif // ODB_PROCESSOR_HXX
286*4882a593Smuzhiyundiff --git a/odb/relational/validator.cxx b/odb/relational/validator.cxx
287*4882a593Smuzhiyunindex 1d51c9a..47f089c 100644
288*4882a593Smuzhiyun--- a/odb/relational/validator.cxx
289*4882a593Smuzhiyun+++ b/odb/relational/validator.cxx
290*4882a593Smuzhiyun@@ -528,7 +528,7 @@ namespace relational
291*4882a593Smuzhiyun     };
292*4882a593Smuzhiyun   }
293*4882a593Smuzhiyun
294*4882a593Smuzhiyun-  void validator::
295*4882a593Smuzhiyun+  void
296*4882a593Smuzhiyun   validate (options const&,
297*4882a593Smuzhiyun             features&,
298*4882a593Smuzhiyun             semantics::unit& u,
299*4882a593Smuzhiyun@@ -608,7 +608,7 @@ namespace relational
300*4882a593Smuzhiyun     }
301*4882a593Smuzhiyun
302*4882a593Smuzhiyun     if (!valid)
303*4882a593Smuzhiyun-      throw failed ();
304*4882a593Smuzhiyun+      throw operation_failed ();
305*4882a593Smuzhiyun
306*4882a593Smuzhiyun     if (pass == 1)
307*4882a593Smuzhiyun     {
308*4882a593Smuzhiyun@@ -636,6 +636,6 @@ namespace relational
309*4882a593Smuzhiyun     }
310*4882a593Smuzhiyun
311*4882a593Smuzhiyun     if (!valid)
312*4882a593Smuzhiyun-      throw failed ();
313*4882a593Smuzhiyun+      throw operation_failed ();
314*4882a593Smuzhiyun   }
315*4882a593Smuzhiyun }
316*4882a593Smuzhiyundiff --git a/odb/relational/validator.hxx b/odb/relational/validator.hxx
317*4882a593Smuzhiyunindex f0ede53..93360c3 100644
318*4882a593Smuzhiyun--- a/odb/relational/validator.hxx
319*4882a593Smuzhiyun+++ b/odb/relational/validator.hxx
320*4882a593Smuzhiyun@@ -11,26 +11,15 @@
321*4882a593Smuzhiyun
322*4882a593Smuzhiyun namespace relational
323*4882a593Smuzhiyun {
324*4882a593Smuzhiyun-  class validator
325*4882a593Smuzhiyun-  {
326*4882a593Smuzhiyun-  public:
327*4882a593Smuzhiyun-    struct failed {};
328*4882a593Smuzhiyun-
329*4882a593Smuzhiyun-    // The first pass is performed before processing. The second -- after.
330*4882a593Smuzhiyun-    //
331*4882a593Smuzhiyun-    void
332*4882a593Smuzhiyun-    validate (options const&,
333*4882a593Smuzhiyun-              features&,
334*4882a593Smuzhiyun-              semantics::unit&,
335*4882a593Smuzhiyun-              semantics::path const&,
336*4882a593Smuzhiyun-              unsigned short pass);
337*4882a593Smuzhiyun-
338*4882a593Smuzhiyun-    validator () {}
339*4882a593Smuzhiyun-
340*4882a593Smuzhiyun-  private:
341*4882a593Smuzhiyun-    validator (validator const&);
342*4882a593Smuzhiyun-    validator& operator= (validator const&);
343*4882a593Smuzhiyun-  };
344*4882a593Smuzhiyun+  // The first pass is performed before processing. The second -- after.
345*4882a593Smuzhiyun+  // Throws operation_failed to signal a failure.
346*4882a593Smuzhiyun+  //
347*4882a593Smuzhiyun+  void
348*4882a593Smuzhiyun+  validate (options const&,
349*4882a593Smuzhiyun+            features&,
350*4882a593Smuzhiyun+            semantics::unit&,
351*4882a593Smuzhiyun+            semantics::path const&,
352*4882a593Smuzhiyun+            unsigned short pass);
353*4882a593Smuzhiyun }
354*4882a593Smuzhiyun
355*4882a593Smuzhiyun #endif // ODB_RELATIONAL_VALIDATOR_HXX
356*4882a593Smuzhiyundiff --git a/odb/validator.cxx b/odb/validator.cxx
357*4882a593Smuzhiyunindex e80f4d8..91d91e5 100644
358*4882a593Smuzhiyun--- a/odb/validator.cxx
359*4882a593Smuzhiyun+++ b/odb/validator.cxx
360*4882a593Smuzhiyun@@ -1457,7 +1457,7 @@ namespace
361*4882a593Smuzhiyun   };
362*4882a593Smuzhiyun }
363*4882a593Smuzhiyun
364*4882a593Smuzhiyun-void validator::
365*4882a593Smuzhiyun+void
366*4882a593Smuzhiyun validate (options const& ops,
367*4882a593Smuzhiyun           features& f,
368*4882a593Smuzhiyun           semantics::unit& u,
369*4882a593Smuzhiyun@@ -1506,7 +1506,7 @@ validate (options const& ops,
370*4882a593Smuzhiyun   }
371*4882a593Smuzhiyun
372*4882a593Smuzhiyun   if (!valid)
373*4882a593Smuzhiyun-    throw failed ();
374*4882a593Smuzhiyun+    throw validator_failed ();
375*4882a593Smuzhiyun
376*4882a593Smuzhiyun   auto_ptr<context> ctx (create_context (cerr, u, ops, f, 0));
377*4882a593Smuzhiyun
378*4882a593Smuzhiyun@@ -1559,7 +1559,7 @@ validate (options const& ops,
379*4882a593Smuzhiyun   }
380*4882a593Smuzhiyun
381*4882a593Smuzhiyun   if (!valid)
382*4882a593Smuzhiyun-    throw failed ();
383*4882a593Smuzhiyun+    throw validator_failed ();
384*4882a593Smuzhiyun
385*4882a593Smuzhiyun   switch (db)
386*4882a593Smuzhiyun   {
387*4882a593Smuzhiyun@@ -1575,12 +1575,11 @@ validate (options const& ops,
388*4882a593Smuzhiyun     {
389*4882a593Smuzhiyun       try
390*4882a593Smuzhiyun       {
391*4882a593Smuzhiyun-        relational::validator v;
392*4882a593Smuzhiyun-        v.validate (ops, f, u, p, pass);
393*4882a593Smuzhiyun+        relational::validate (ops, f, u, p, pass);
394*4882a593Smuzhiyun       }
395*4882a593Smuzhiyun-      catch (relational::validator::failed const&)
396*4882a593Smuzhiyun+      catch (operation_failed const&)
397*4882a593Smuzhiyun       {
398*4882a593Smuzhiyun-        throw failed ();
399*4882a593Smuzhiyun+        throw validator_failed ();
400*4882a593Smuzhiyun       }
401*4882a593Smuzhiyun
402*4882a593Smuzhiyun       break;
403*4882a593Smuzhiyundiff --git a/odb/validator.hxx b/odb/validator.hxx
404*4882a593Smuzhiyunindex f913049..3ffa470 100644
405*4882a593Smuzhiyun--- a/odb/validator.hxx
406*4882a593Smuzhiyun+++ b/odb/validator.hxx
407*4882a593Smuzhiyun@@ -9,25 +9,15 @@
408*4882a593Smuzhiyun #include <odb/features.hxx>
409*4882a593Smuzhiyun #include <odb/semantics/unit.hxx>
410*4882a593Smuzhiyun
411*4882a593Smuzhiyun-class validator
412*4882a593Smuzhiyun-{
413*4882a593Smuzhiyun-public:
414*4882a593Smuzhiyun-  struct failed {};
415*4882a593Smuzhiyun+class validator_failed {};
416*4882a593Smuzhiyun
417*4882a593Smuzhiyun-  // The first pass is performed before processing. The second -- after.
418*4882a593Smuzhiyun-  //
419*4882a593Smuzhiyun-  void
420*4882a593Smuzhiyun-  validate (options const&,
421*4882a593Smuzhiyun-            features&,
422*4882a593Smuzhiyun-            semantics::unit&,
423*4882a593Smuzhiyun-            semantics::path const&,
424*4882a593Smuzhiyun-            unsigned short pass);
425*4882a593Smuzhiyun-
426*4882a593Smuzhiyun-  validator () {}
427*4882a593Smuzhiyun-
428*4882a593Smuzhiyun-private:
429*4882a593Smuzhiyun-  validator (validator const&);
430*4882a593Smuzhiyun-  validator& operator= (validator const&);
431*4882a593Smuzhiyun-};
432*4882a593Smuzhiyun+// The first pass is performed before processing. The second -- after.
433*4882a593Smuzhiyun+//
434*4882a593Smuzhiyun+void
435*4882a593Smuzhiyun+validate (options const&,
436*4882a593Smuzhiyun+          features&,
437*4882a593Smuzhiyun+          semantics::unit&,
438*4882a593Smuzhiyun+          semantics::path const&,
439*4882a593Smuzhiyun+          unsigned short pass);
440*4882a593Smuzhiyun
441*4882a593Smuzhiyun #endif // ODB_VALIDATOR_HXX
442*4882a593Smuzhiyun--
443*4882a593Smuzhiyun2.25.0
444*4882a593Smuzhiyun
445