## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.10

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# 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(__GNUC__)
    00026 #include "GCCDefinitions.hpp"
    00027 #elif defined(_AIX)
    00028 #include "AIXDefinitions.hpp"
    00029 #elif defined(__hpux)
    00030 #include "HPUXDefinitions.hpp"
    00031 #elif defined(SOLARIS)
    00032 #include "SolarisDefinitions.hpp"
    00033 #elif defined(OS390)
    00034 #include "OS390Definitions.hpp"
    00035 #elif defined(OS400)
    00036 #include "OS400Definitions.hpp"
    00037 #elif defined(__DECCXX)
    00038 #include "TRU64Definitions.hpp"
    00039 #elif defined(__INTEL_COMPILER)
    00040 #include "IntelDefinitions.hpp"
    00041 #else
    00042 #error Unknown compiler!
    00043 #endif
    00044
    00045 #include "XalanVersion.hpp"
    00046
    00047 #if defined(__cplusplus)
    00048
    00049 // ---------------------------------------------------------------------------
    00050 // Define namespace symbols if the compiler supports it.
    00051 // ---------------------------------------------------------------------------
    00052 #if defined(XALAN_HAS_CPP_NAMESPACE)
    00053     #define XALAN_CPP_NAMESPACE_BEGIN namespace XALAN_CPP_NAMESPACE {
    00054     #define XALAN_CPP_NAMESPACE_END  }
    00055     #define XALAN_CPP_NAMESPACE_USE using namespace XALAN_CPP_NAMESPACE;
    00056     #define XALAN_CPP_NAMESPACE_QUALIFIER XALAN_CPP_NAMESPACE::
    00057     #define XALAN_USING(NAMESPACE,NAME) using NAMESPACE :: NAME;
    00058     #define XALAN_DECLARE_CLASS(NAMESPACE,NAME) namespace NAMESPACE { class NAME; }
    00059     #define XALAN_DECLARE_STRUCT(NAMESPACE,NAME) namespace NAMESPACE { struct NAME; }
    00060
    00061     namespace XALAN_CPP_NAMESPACE { }
    00062     namespace xalanc = XALAN_CPP_NAMESPACE;
    00063 #else
    00064     #if defined(XALAN_CPP_NAMESPACE)
    00065     #undef XALAN_CPP_NAMESPACE
    00066     #endif
    00067
    00068     #define XALAN_CPP_NAMESPACE
    00069     #define XALAN_CPP_NAMESPACE_BEGIN
    00070     #define XALAN_CPP_NAMESPACE_END
    00071     #define XALAN_CPP_NAMESPACE_USE
    00072     #define XALAN_CPP_NAMESPACE_QUALIFIER
    00073     #define XALAN_USING(NAMESPACE,NAME)
    00074     #define XALAN_DECLARE_CLASS(NAMESPACE,NAME) class NAME;
    00075     #define XALAN_DECLARE_STRUCT(NAMESPACE,NAME) struct NAME;
    00076     #if !defined(XALAN_NO_STD_NAMESPACE)
    00077         #define XALAN_NO_STD_NAMESPACE
    00078     #endif
    00079 #endif
    00080
    00081
    00082 #if defined(XALAN_NO_STD_NAMESPACE)
    00083     #define XALAN_USING_STD(NAME)
    00084     #define XALAN_STD_QUALIFIER
    00085 #else
    00086     #define XALAN_USING_STD(NAME) using std :: NAME;
    00087     #define XALAN_STD_QUALIFIER  std ::
    00088 #endif
    00089
    00090 #define XALAN_DECLARE_XALAN_CLASS(NAME) XALAN_DECLARE_CLASS(XALAN_CPP_NAMESPACE, NAME)
    00091 #define XALAN_DECLARE_XALAN_STRUCT(NAME) XALAN_DECLARE_STRUCT(XALAN_CPP_NAMESPACE, NAME)
    00092 #define XALAN_USING_XALAN(NAME) XALAN_USING(XALAN_CPP_NAMESPACE, NAME)
    00093
    00094
    00095 #if defined(XERCES_HAS_CPP_NAMESPACE)
    00096     #define XALAN_USING_XERCES(NAME) XALAN_USING(XERCES_CPP_NAMESPACE, NAME)
    00097     #define XALAN_DECLARE_XERCES_CLASS(NAME) XALAN_DECLARE_CLASS(XERCES_CPP_NAMESPACE, NAME)
    00098     #define XALAN_DECLARE_XERCES_STRUCT(NAME) XALAN_DECLARE_STRUCT(XERCES_CPP_NAMESPACE, NAME)
    00099 #else
    00100     #define XERCES_CPP_NAMESPACE_QUALIFIER
    00101     #define XERCES_CPP_NAMESPACE_BEGIN
    00102     #define XERCES_CPP_NAMESPACE_END
    00103     #define XERCES_CPP_NAMESPACE_USE
    00104     #define XALAN_USING_XERCES(NAME)
    00105     #define XALAN_DECLARE_XERCES_CLASS(NAME) class NAME;
    00106     #define XALAN_DECLARE_XERCES_STRUCT(NAME) struct NAME;
    00107 #endif
    00108
    00109
    00110
    00111 #include <cstddef>
    00112
    00113
    00114
    00115 XALAN_CPP_NAMESPACE_BEGIN
    00116 #if defined(XALAN_USE_NATIVE_WCHAR_T)
    00117 typedef wchar_t         XalanDOMChar;
    00118 #else
    00119 // UTF-16 character...
    00120 typedef unsigned short  XalanDOMChar;
    00121 #endif
    00122
    00123 template<bool value>
    00124 struct XalanCompileErrorBoolean
    00125 {
    00126     char    foo[value];
    00127 };
    00128
    00129 XALAN_CPP_NAMESPACE_END
    00130
    00131
    00132 #define XALAN_STATIC_ASSERT(expr) XALAN_CPP_NAMESPACE_QUALIFIER XalanCompileErrorBoolean<bool(expr)>()
    00133
    00134
    00135
    00136 #endif // __cplusplus
    00137
    00138
    00139
    00140 #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.10 Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.