メインページ   名前空間一覧   クラス階層   構成   ファイル一覧   名前空間メンバ   構成メンバ   ファイルメンバ  

DefaultXMLTraits.h

解説を見る。
00001 // -*- mode: c++ -*-
00002 #ifndef MiX_DEFAULTXMLTRAITS_H_
00003 #define MiX_DEFAULTXMLTRAITS_H_
00004 
00005 // Adlib/DefaultXMLTraits.h
00006 // (C) Copyright KUBO,Yotaro.
00007 // [o[W]
00008 // 0.4.7
00009 //   - DefaultXMLTraits.cppIncludeGuard}NX
00010 #include <string>
00011 #include "config.h"
00012 
00013 namespace MiX{
00014 
00015   template <class charT,class char_traits>
00016   class DefaultXMLTraits{
00017   public:
00018     typedef std::basic_string<charT,char_traits> basic_string_type;
00019   private:
00020     static basic_string_type makeString(const char* szSrc);
00021 
00022   public:
00024     static charT null(){ return static_cast<charT>('\0'); }
00026     static charT crlf(){ return static_cast<charT>('\n'); }
00028     static charT sp(){ return static_cast<charT>(' '); }
00030     static charT tab(){ return static_cast<charT>('\t'); }
00031 
00033     static charT lt(){ return static_cast<charT>('<'); }
00035     static charT eq(){ return static_cast<charT>('='); }
00037     static charT gt(){ return static_cast<charT>('>'); }
00038 
00040     static charT slash(){ return static_cast<charT>('/'); }
00042     static charT hyphen(){ return static_cast<charT>('-'); }
00044     static charT colon() { return static_cast<charT>(':'); }
00046     static charT semicolon(){ return static_cast<charT>(';'); }
00047 
00049     static charT exclamation(){ return static_cast<charT>('!'); }
00051     static charT question(){ return static_cast<charT>('?'); }
00053     static charT amp(){ return static_cast<charT>('&'); }
00054 
00056     static charT dblquote() { return static_cast<charT>('\"'); }
00058     static charT quote() { return static_cast<charT>('\''); }
00059 
00060     //
00061     //XMLgB
00063     static basic_string_type xml(){ 
00064       return makeString("xml");
00065     }
00067     static basic_string_type cdata(){
00068       return makeString("CDATA");
00069     }
00071     static basic_string_type str_lt(){
00072       return makeString("lt");
00073     }
00075     static basic_string_type str_gt(){
00076       return makeString("gt");
00077     }
00079     static basic_string_type str_amp(){
00080       return makeString("amp");
00081     }
00083     static basic_string_type str_quot(){
00084       return makeString("quot");
00085     }
00087     static basic_string_type str_apos(){
00088       return makeString("apos");
00089     }
00090 
00092     static basic_string_type str_xmlns(){ 
00093       return makeString("xmlns");
00094     }
00095 
00104     static int ci_compare(const charT* s1,const charT* s2,size_t n){
00105       for(size_t i=0;i<n;i++){
00106         int c1,c2;
00107         c1 = std::tolower(static_cast<int>(s1[i]));
00108         c2 = std::tolower(static_cast<int>(s2[i]));
00109         if(c1>c2) return 1;
00110         if(c1<c2) return -1;
00111       }
00112       return 0;
00113     }
00114     
00115   };
00116 }
00117 
00118 #ifndef MiX_DEFAULTXMLTRAITS_CPP_
00119 #include "DefaultXMLTraits.cpp"
00120 #endif
00121 
00122 #endif

MiXに対してSun Nov 17 01:28:36 2002に生成されました。 doxygen1.2.14 作者 Dimitri van Heesch, © 1997-2002