ximol/macros.hpp

Go to the documentation of this file.
00001 /*****************************************************************************\
00002  *                                                                           *
00003  * library XiMoL                                                             *
00004  * Copyright (C) 2002, 2003, 2004 Florent Tournois                           *
00005  *                                                                           *
00006  * This library is free software; you can redistribute it and/or             *
00007  * modify it under the terms of the GNU Lesser General Public                *
00008  * License as published by the Free Software Foundation; either              *
00009  * version 2.1 of the License, or (at your option) any later version.        *
00010  *                                                                           *
00011  * This library is distributed in the hope that it will be useful,           *
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of            *
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU         *
00014  * Lesser General Public License for more details.                           *
00015  *                                                                           *
00016  * You should have received a copy of the GNU Lesser General Public          *
00017  * License along with this library; if not, write to the Free Software       *
00018  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA   *
00019  *                                                                           *
00020 \*****************************************************************************/
00021 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00022 /** \file 
00023         \brief Define XiMoL macros.
00024         
00025         \author Tournois Florent
00026         \version 1.0
00027 
00028     $Id: macros.hpp,v 1.4 2004/02/22 10:27:32 tournois Exp $
00029     $Log: macros.hpp,v $
00030     Revision 1.4  2004/02/22 10:27:32  tournois
00031     Add some doc.
00032 
00033     Revision 1.3  2004/02/22 09:54:19  tournois
00034     Change years on the copyright.
00035 
00036     Revision 1.2  2003/11/02 19:23:01  tournois
00037     Go to the boost coding standard.
00038     Change all name to lower case.
00039 
00040     Revision 1.1  2003/09/24 08:28:17  tournois
00041     Create the namespace Encoders, Parser, Xml
00042     Change the library organization.
00043     add VC7.1 project for this organization.
00044 
00045   */
00046 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00047 #ifndef XIMOL_MACRO_HPP_
00048 #define XIMOL_MACRO_HPP_
00049 
00050 /// Default value for the encoding in XiMoL.
00051 #define XIMOL_DEFAULT_ENCODING "UTF-8"
00052 
00053 #define XIMOL_NO_THROW 
00054 //#define XIMOL_NO_THROW throw()
00055 
00056 #define XIMOL_TEMPLATE_NULL
00057 //#define XIMOL_TEMPLATE_NULL template <>
00058 
00059 #define XIMOL_MIN(a,b) ((b) < (a) ? (b) : (a)) 
00060 
00061 #ifndef _MSC_VER
00062 #define XIMOL_STANDARD_FACET
00063 #endif
00064 
00065 // for the microsoft stl
00066 #if (defined(XIMOL_STANDARD_FACET))
00067 #  define XIMOL_HAS_FACET(locale_name,facet_name) ::std::has_facet< facet_name >( locale_name )
00068 #  define XIMOL_USE_FACET(locale_name,facet_name) ::std::use_facet< facet_name >( locale_name )
00069 #  define XIMOL_ADD_FACET(locale_name,facet_name) ::std::locale( locale_name , facet_name )
00070 #else
00071 #  define XIMOL_HAS_FACET(locale_name,facet_name) ::std::_HAS(locale_name,facet_name)    
00072 #  define XIMOL_USE_FACET(locale_name,facet_name) ::std::_USE(locale_name,facet_name)    
00073 #  define XIMOL_ADD_FACET(locale_name,facet_name) ::std::_ADDFAC(locale_name,facet_name)
00074 #endif
00075 
00076 #endif // #ifndef XIMOL_MACRO_HPP_


Donate to the XiMoL project SourceForge.net Logo If you have any questions about XiMoL, you could write to tournois@users.sourceforge.net.