Remove dynamic exceptions
[anna.git] / include / anna / dbms / Data.hpp
index 0011a80..9ddafed 100644 (file)
@@ -1,37 +1,9 @@
-// ANNA - Anna is Not Nothingness Anymore
-//
-// (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo
-//
-// https://bitbucket.org/testillano/anna
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions
-// are met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//
-// Authors: eduardo.ramos.testillano@gmail.com
-//          cisco.tierra@gmail.com
+// ANNA - Anna is Not Nothingness Anymore                                                         //
+//                                                                                                //
+// (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo                         //
+//                                                                                                //
+// See project site at http://redmine.teslayout.com/projects/anna-suite                           //
+// See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
 
 
 #ifndef anna_dbms_Data_hpp
@@ -70,30 +42,30 @@ public:
      Devuelve el tamano maximo de este dato que coincidiria con el indicado en el constructor.
      \return El tamano maximo de este dato que coincidiria con el indicado en el constructor.
   */
-  int getMaxSize() const throw() { return a_maxSize; }
+  int getMaxSize() const { return a_maxSize; }
 
   /**
      Devuelve el tipo de dato.
      \return El tipo de datos.
   */
-  Type::_v getType() const throw() { return a_type; }
+  Type::_v getType() const { return a_type; }
 
   /**
      Devuelve el area de memoria asociada a esta variable.
   */
-  void* getBuffer() throw() { return a_buffer; }
+  void* getBuffer() { return a_buffer; }
 
   /**
      Devuelve el indicador de nulo de esta instancia.
      \return El indicador de nulo de esta instancia.
   */
-  bool isNull() const throw() { return a_isNull; }
+  bool isNull() const { return a_isNull; }
 
   /**
      Devuelve el valor que indica si este dato puede tomar valores nulos.
      \return El valor que indica si este dato puede tomar valores nulos.
   */
-  bool isNulleable() const throw() { return a_isNulleable; }
+  bool isNulleable() const { return a_isNulleable; }
 
   /**
      Establece el indicador de nulo de esta instancia.
@@ -101,7 +73,7 @@ public:
      \warning Slo tendr�efecto en caso de haber indicado en el constructor que
      el dato puede tomar valores nulos.
   */
-  void setNull(const bool isNull) throw() { if(a_isNulleable == true) a_isNull = isNull; }
+  void setNull(const bool isNull) { if(a_isNulleable == true) a_isNull = isNull; }
 
   /**
      Incorpora el método clear para todos tipos de datos con lo que podemos obtener información
@@ -111,7 +83,7 @@ public:
      en otro caso se asignará un valor adecuado dependiendo del tipo del dato, cero para los números,
      "" para las cadenas, etc.
   */
-  void clear() throw() {
+  void clear() {
     setNull(true);
     do_clear();
   }
@@ -120,7 +92,7 @@ public:
      Devuelve una cadena con la informacion referente a esta instancia.
      @return Una cadena con la informacion referente a esta instancia.
   */
-  virtual std::string asString() const throw();
+  virtual std::string asString() const ;
 
 protected:
   /**
@@ -156,7 +128,7 @@ protected:
      Establece el area de memoria asociada a esta variable.
      \param buffer Direccion de memoria donde comienza el contenido esta variable.
   */
-  void setBuffer(void* buffer) throw() { a_buffer = buffer; }
+  void setBuffer(void* buffer) { a_buffer = buffer; }
 
 private:
   const Type::_v a_type;
@@ -165,7 +137,7 @@ private:
   void* a_buffer;
   bool a_isNull;
 
-  virtual void do_clear() throw() = 0;
+  virtual void do_clear()  = 0;
 };
 
 }