X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=include%2Fanna%2Fcore%2Futil%2FTextComposer.hpp;h=eef60e01940d169b3b3921de6cdaf1c01882eeba;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hp=684812f8cb8ace7efa693690a7f2028fc30e5b62;hpb=4e12ac57e93c052f716a6305ad8fc099c45899d1;p=anna.git diff --git a/include/anna/core/util/TextComposer.hpp b/include/anna/core/util/TextComposer.hpp index 684812f..eef60e0 100644 --- a/include/anna/core/util/TextComposer.hpp +++ b/include/anna/core/util/TextComposer.hpp @@ -1,37 +1,9 @@ -// ANNA - Anna is Not 'N' 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_core_util_TextComposer_hpp @@ -96,7 +68,7 @@ public: */ ~TextComposer(); - TextVariable& operator[](const char* varName) throw(RuntimeException) { + TextVariable& operator[](const char* varName) noexcept(false) { return *(find(varName, Exception::Mode::Throw)); } @@ -104,26 +76,26 @@ public: * Método que realiza la interpretación del texto de esta instancia. * Si la instancia se crea mediante un #util::TextManager no es necesario invocar a este método. */ - void initialize() throw(RuntimeException); + void initialize() noexcept(false); /** Devuelve el identificador del compositor, que coincidira con el indicado a la hora de crear el compositor mediante el metodo TextManager::create. \return El identificador del compositor. */ - const int getId() const throw() { return a_id; } + const int getId() const { return a_id; } /** Devuelve el nº de variables asociadas al texto. \return el nº de variables asociadas al texto. */ - int getNumberOfVariables() const throw() { return container::size(); } + int getNumberOfVariables() const { return container::size(); } /** Devuelve una cadena con la informacion relevante de este objeto. \return Una cadena con la informacion relevante de este objeto. */ - String asString() const throw(); + String asString() const ; protected: /** @@ -138,19 +110,19 @@ protected: Crea el texto teniendo en cuenta la expression y el contenido de las variables asociadas. \return El texto teniendo en cuenta la expression y el contenido de las variables asociadas. */ - String apply() const throw(RuntimeException); + String apply() const noexcept(false); /** * Devuelve la instancia de la variable a la que apunta el iterador. * return la instancia de la variable a la que apunta el iterador. */ - static TextVariable* textVariable(variable_iterator ii) throw() { return *ii; } + static TextVariable* textVariable(variable_iterator ii) { return *ii; } /** * Devuelve la instancia de la variable a la que apunta el iterador. * return la instancia de la variable a la que apunta el iterador. */ - static const TextVariable* textVariable(const_variable_iterator ii) throw() { return *ii; } + static const TextVariable* textVariable(const_variable_iterator ii) { return *ii; } private: const int a_id; @@ -161,11 +133,11 @@ private: TextComposer(const TextComposer&); - TextVariable* find(const char* name, const Exception::Mode::_v) throw(RuntimeException); - void lock() throw(RuntimeException) { a_mutex.lock(); } - void unlock() throw() { a_mutex.unlock(); } + TextVariable* find(const char* name, const Exception::Mode::_v) noexcept(false); + void lock() noexcept(false) { a_mutex.lock(); } + void unlock() { a_mutex.unlock(); } - static TextVariable::Type::_v calculeType(const char* format) throw(RuntimeException); + static TextVariable::Type::_v calculeType(const char* format) noexcept(false); friend class TextManager; // friend class Guard ;