Add no-deprecated to warnings due to dynamic exceptions.
[anna.git] / include / anna / dbms.mysql / InputBind.hpp
1 // ANNA - Anna is Not Nothingness Anymore                                                         //
2 //                                                                                                //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo                         //
4 //                                                                                                //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite                           //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
7
8
9 #ifndef anna_dbms_mysql_InputBind_hpp
10 #define anna_dbms_mysql_InputBind_hpp
11
12 #include <anna/dbms/InputBind.hpp>
13
14 #include <anna/dbms.mysql/BaseBind.hpp>
15
16 namespace anna {
17
18 class DataBlock;
19
20 namespace dbms {
21
22 class Data;
23 class Statement;
24
25 namespace mysql {
26
27 class Statement;
28
29 class InputBind : public dbms::InputBind, public BaseBind {
30 public:
31   InputBind(const char* name, dbms::Data& data);
32   virtual ~InputBind();
33
34 private:
35   void code() const throw(RuntimeException);
36
37   void codeShortBlock(dbms::Data&) throw();
38   void codeDate(dbms::Data&) throw();
39
40   static char asCharacter(const char byte)
41   throw() {
42     return (byte >= 0 && byte <= 9) ? (byte + '0') : ((byte - 0xa) + 'A');
43   }
44
45   /* Funciones virtuales puras */
46   void prepare(anna::dbms::Statement*, anna::dbms::Connection*, const int pos) throw(RuntimeException);
47   void release(anna::dbms::Statement*) throw() {;}
48
49   friend class mysql::Statement;
50 };
51
52 }
53 }
54 }
55
56 #endif
57