Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.9

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

PlatformDefinitions.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright 1999-2004 The Apache Software Foundation.
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 #if !defined(PLATFORMDEFINITIONS_HEADER_GUARD_1357924680)
00017 #define PLATFORMDEFINITIONS_HEADER_GUARD_1357924680
00018 
00019 #if defined(__cplusplus)
00020 #include "xercesc/util/XercesDefs.hpp"
00021 #endif
00022 
00023 #if defined(_MSC_VER)
00024 #include "VCPPDefinitions.hpp"
00025 #elif defined(CYGWIN)
00026 #include "CygwinDefinitions.hpp"
00027 #elif defined(__GNUC__)
00028 #include "GCCDefinitions.hpp"
00029 #elif defined(_AIX)
00030 #include "AIXDefinitions.hpp"
00031 #elif defined(__hpux)
00032 #include "HPUXDefinitions.hpp"
00033 #elif defined(SOLARIS)
00034 #include "SolarisDefinitions.hpp"
00035 #elif defined(OS390)
00036 #include "OS390Definitions.hpp"
00037 #elif defined(OS400)
00038 #include "OS400Definitions.hpp"
00039 #elif defined(__DECCXX)
00040 #include "TRU64Definitions.hpp"
00041 #elif defined(__INTEL_COMPILER)
00042 #include "IntelDefinitions.hpp"
00043 #else
00044 #error Unknown compiler!
00045 #endif
00046 
00047 #include "XalanVersion.hpp"
00048 
00049 #if defined(__cplusplus)
00050 
00051 // ---------------------------------------------------------------------------
00052 // Define namespace symbols if the compiler supports it.
00053 // ---------------------------------------------------------------------------
00054 #if defined(XALAN_HAS_CPP_NAMESPACE)
00055     #define XALAN_CPP_NAMESPACE_BEGIN namespace XALAN_CPP_NAMESPACE {
00056     #define XALAN_CPP_NAMESPACE_END  }
00057     #define XALAN_CPP_NAMESPACE_USE using namespace XALAN_CPP_NAMESPACE;
00058     #define XALAN_CPP_NAMESPACE_QUALIFIER XALAN_CPP_NAMESPACE::
00059     #define XALAN_USING(NAMESPACE,NAME) using NAMESPACE :: NAME;
00060     #define XALAN_DECLARE_CLASS(NAMESPACE,NAME) namespace NAMESPACE { class NAME; }
00061     #define XALAN_DECLARE_STRUCT(NAMESPACE,NAME) namespace NAMESPACE { struct NAME; }
00062 
00063     namespace XALAN_CPP_NAMESPACE { }
00064     namespace xalanc = XALAN_CPP_NAMESPACE;
00065 #else
00066     #if defined(XALAN_CPP_NAMESPACE)
00067     #undef XALAN_CPP_NAMESPACE
00068     #endif
00069 
00070     #define XALAN_CPP_NAMESPACE
00071     #define XALAN_CPP_NAMESPACE_BEGIN
00072     #define XALAN_CPP_NAMESPACE_END
00073     #define XALAN_CPP_NAMESPACE_USE
00074     #define XALAN_CPP_NAMESPACE_QUALIFIER
00075     #define XALAN_USING(NAMESPACE,NAME)
00076     #define XALAN_DECLARE_CLASS(NAMESPACE,NAME) class NAME;
00077     #define XALAN_DECLARE_STRUCT(NAMESPACE,NAME) struct NAME;
00078     #if !defined(XALAN_NO_STD_NAMESPACE)
00079         #define XALAN_NO_STD_NAMESPACE
00080     #endif
00081 #endif
00082 
00083 
00084 #if defined(XALAN_NO_STD_NAMESPACE)
00085     #define XALAN_USING_STD(NAME)
00086     #define XALAN_STD_QUALIFIER 
00087 #else
00088     #define XALAN_USING_STD(NAME) using std :: NAME;
00089     #define XALAN_STD_QUALIFIER  std ::
00090 #endif
00091 
00092 #define XALAN_DECLARE_XALAN_CLASS(NAME) XALAN_DECLARE_CLASS(XALAN_CPP_NAMESPACE, NAME)
00093 #define XALAN_DECLARE_XALAN_STRUCT(NAME) XALAN_DECLARE_STRUCT(XALAN_CPP_NAMESPACE, NAME)
00094 #define XALAN_USING_XALAN(NAME) XALAN_USING(XALAN_CPP_NAMESPACE, NAME)
00095 
00096 
00097 #if defined(XERCES_HAS_CPP_NAMESPACE)
00098     #define XALAN_USING_XERCES(NAME) XALAN_USING(XERCES_CPP_NAMESPACE, NAME)
00099     #define XALAN_DECLARE_XERCES_CLASS(NAME) XALAN_DECLARE_CLASS(XERCES_CPP_NAMESPACE, NAME)
00100     #define XALAN_DECLARE_XERCES_STRUCT(NAME) XALAN_DECLARE_STRUCT(XERCES_CPP_NAMESPACE, NAME)
00101 #else
00102     #define XERCES_CPP_NAMESPACE_QUALIFIER
00103     #define XERCES_CPP_NAMESPACE_BEGIN
00104     #define XERCES_CPP_NAMESPACE_END
00105     #define XERCES_CPP_NAMESPACE_USE
00106     #define XALAN_USING_XERCES(NAME)
00107     #define XALAN_DECLARE_XERCES_CLASS(NAME) class NAME;
00108     #define XALAN_DECLARE_XERCES_STRUCT(NAME) struct NAME;
00109 #endif
00110 
00111 
00112 
00113 #include <cstddef>
00114 
00115 
00116 
00117 XALAN_CPP_NAMESPACE_BEGIN
00118 #if defined(XALAN_USE_NATIVE_WCHAR_T)
00119 typedef wchar_t         XalanDOMChar;
00120 #else
00121 // UTF-16 character...
00122 typedef unsigned short  XalanDOMChar;
00123 #endif
00124 XALAN_CPP_NAMESPACE_END
00125 
00126 
00127 
00128 #endif // __cplusplus
00129 
00130 
00131 
00132 #endif  // PLATFORMDEFINITIONS_HEADER_GUARD_1357924680

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.9
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.