#! /bin/sh
-# From configure.in Id: configure.in 51895 2008-02-18 22:50:15Z DE .
+# From configure.in Id: configure.in 52015 2008-02-22 22:27:39Z RD .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for wxWidgets 2.9.0.
#
ac_config_files="$ac_config_files lib/wx/config/inplace-${TOOLCHAIN_FULLNAME}:wx-config-inplace.in"
+ac_config_files="$ac_config_files utils/ifacecheck/rungccxml.sh"
+
+
if test "$wx_cv_version_script" = "yes"; then
ac_config_files="$ac_config_files version-script"
"rcdefs.h") CONFIG_COMMANDS="$CONFIG_COMMANDS rcdefs.h" ;;
"lib/wx/config/${TOOLCHAIN_FULLNAME}") CONFIG_FILES="$CONFIG_FILES lib/wx/config/${TOOLCHAIN_FULLNAME}:wx-config.in" ;;
"lib/wx/config/inplace-${TOOLCHAIN_FULLNAME}") CONFIG_FILES="$CONFIG_FILES lib/wx/config/inplace-${TOOLCHAIN_FULLNAME}:wx-config-inplace.in" ;;
+ "utils/ifacecheck/rungccxml.sh") CONFIG_FILES="$CONFIG_FILES utils/ifacecheck/rungccxml.sh" ;;
"version-script") CONFIG_FILES="$CONFIG_FILES version-script" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"wx-config") CONFIG_COMMANDS="$CONFIG_COMMANDS wx-config" ;;
;;
"lib/wx/config/${TOOLCHAIN_FULLNAME}":F) chmod +x lib/wx/config/${TOOLCHAIN_FULLNAME} ;;
"lib/wx/config/inplace-${TOOLCHAIN_FULLNAME}":F) chmod +x lib/wx/config/inplace-${TOOLCHAIN_FULLNAME} ;;
+ "utils/ifacecheck/rungccxml.sh":F) chmod +x utils/ifacecheck/rungccxml.sh ;;
"wx-config":C) rm -f wx-config
${LN_S} lib/wx/config/inplace-${TOOLCHAIN_FULLNAME} wx-config
;;
getgrgid_r(0, &grp, buf, sizeof(buf), &pgrp)
]])
fi
-
+
fi
[ chmod +x lib/wx/config/inplace-${TOOLCHAIN_FULLNAME} ],
[ TOOLCHAIN_FULLNAME="${TOOLCHAIN_FULLNAME}" ])
+dnl this is used to run ifacecheck with the same flags used by the compiler
+dnl for the real compilation:
+AC_CONFIG_FILES([ utils/ifacecheck/rungccxml.sh ],
+ [ chmod +x utils/ifacecheck/rungccxml.sh ])
+
if test "$wx_cv_version_script" = "yes"; then
AC_CONFIG_FILES(version-script)
fi
Note that it must be included before defining hardware symbols below as they
could be already defined by configure
*/
-#include "wx/setup.h"
+#ifdef __GCCXML__
+ /*
+ we're using gccxml to create an XML representation of the entire
+ wxWidgets interface; pass it a special setup.h file
+ */
+ #include "wx/setup_gccxml.h"
+#else
+ #include "wx/setup.h"
+#endif
/*
Hardware platform detection.
/*
test for old versions of Borland C, normally need at least 5.82, Turbo
- explorer, available for free at http://www.turboexplorer.com/downloads
+ explorer, available for free at http://www.turboexplorer.com/downloads
*/
#if defined(__BORLANDC__) && (__BORLANDC__ < 0x550)
# error "wxWidgets requires a newer version of Borland, we recommend upgrading to 5.82 (Turbo Explorer). You may at your own risk remove this line and try building but be prepared to get build errors."
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////
+// Name: wx/setup_gccxml.h
+// Purpose: setup.h settings for gccxml
+// Author: Francesco Montorsi
+// Modified by:
+// RCS-ID: $Id$
+// Copyright: (c) Francesco Montorsi
+// Licence: wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+
+/* This define (__WX_SETUP_H__) is used both to ensure setup.h is included
+ * only once and to indicate that we are building using configure. */
+#ifndef __WX_SETUP_H__
+#define __WX_SETUP_H__
+
+/* fill in with the string wxGetOsDescription() will return */
+#define WXWIN_OS_DESCRIPTION "Linux 2.6.24-12-386 i686"
+
+/* the installation location prefix from configure */
+#define wxINSTALL_PREFIX "/usr/local"
+
+/* Define to `int' if <sys/types.h> doesn't define. */
+/* #undef gid_t */
+
+/* Define to `int' if <sys/types.h> doesn't define. */
+/* #undef mode_t */
+
+/* Define to `long' if <sys/types.h> doesn't define. */
+/* #undef off_t */
+
+/* Define to `int' if <sys/types.h> doesn't define. */
+/* #undef pid_t */
+
+/* Define to `unsigned' if <sys/types.h> doesn't define. */
+/* #undef size_t */
+
+/* Define if ssize_t type is available. */
+#define HAVE_SSIZE_T 1
+
+/* Define if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define this to get extra features from GNU libc. */
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE 1
+#endif
+
+/* Define to `int' if <sys/types.h> doesn't define. */
+/* #undef uid_t */
+
+/* Define if your processor stores words with the most significant
+ byte first (like Motorola and SPARC, unlike Intel and VAX). */
+/* #undef WORDS_BIGENDIAN */
+
+/* Define this if your version of GTK+ is greater than 1.2 */
+#define __WXGTK12__ 1
+
+/* Define this if your version of GTK+ is greater than 1.2.7 */
+/* #undef __WXGTK127__ */
+
+/* Define this if your version of GTK+ is greater than 2.0 */
+#define __WXGTK20__ 1
+
+/* Define this if your version of GTK+ is greater than 2.6 */
+#define __WXGTK26__ 1
+
+/* Define this if your version of GTK+ is greater than 2.10 */
+#define __WXGTK210__ 1
+
+/* Define this if you want to use GPE features */
+/* #undef __WXGPE__ */
+
+/* Define this if your version of Motif is greater than 2.0 */
+/* #undef __WXMOTIF20__ */
+
+/* Define this if you are using Lesstif */
+/* #undef __WXLESSTIF__ */
+
+/*
+ * Define to 1 for Unix[-like] system
+ */
+#define wxUSE_UNIX 1
+
+#define __UNIX__ 1
+
+/* #undef __AIX__ */
+/* #undef __BSD__ */
+/* #undef __DARWIN__ */
+/* #undef __EMX__ */
+/* #undef __FREEBSD__ */
+/* #undef __HPUX__ */
+#define __LINUX__ 1
+/* #undef __NETBSD__ */
+/* #undef __OPENBSD__ */
+/* #undef __OSF__ */
+/* #undef __SGI__ */
+/* #undef __SOLARIS__ */
+/* #undef __SUN__ */
+/* #undef __SUNOS__ */
+/* #undef __SVR4__ */
+/* #undef __SYSV__ */
+/* #undef __ULTRIX__ */
+/* #undef __UNIXWARE__ */
+/* #undef __VMS__ */
+
+/* #undef __IA64__ */
+/* #undef __ALPHA__ */
+
+/* NanoX (with wxX11) */
+#define wxUSE_NANOX 0
+
+/* PowerPC Darwin & Mac OS X */
+/* #undef __POWERPC__ */
+/* #undef TARGET_CARBON */
+
+/* Hack to make IOGraphicsTypes.h not define Point conflicting with MacTypes */
+/* #undef __Point__ */
+
+/* MS-DOS with DJGPP */
+/* #undef __DOS__ */
+
+/* Stupid hack; __WINDOWS__ clashes with wx/defs.h */
+#ifndef __WINDOWS__
+/* #undef __WINDOWS__ */
+#endif
+
+#ifndef __WIN32__
+/* #undef __WIN32__ */
+#endif
+#ifndef __GNUWIN32__
+/* #undef __GNUWIN32__ */
+#endif
+#ifndef STRICT
+/* #undef STRICT */
+#endif
+#ifndef WINVER
+/* #undef WINVER */
+#endif
+
+/* OS/2 with EMX */
+/* #undef __OS2__ */
+
+/* --- start common options --- */
+
+#ifndef wxUSE_GUI
+ #define wxUSE_GUI 1
+#endif
+
+
+#define WXWIN_COMPATIBILITY_2_6 0
+
+#define WXWIN_COMPATIBILITY_2_8 1
+
+#define wxDIALOG_UNIT_COMPATIBILITY 0
+
+
+
+#define wxUSE_DEBUG_CONTEXT 0
+
+#define wxUSE_MEMORY_TRACING 0
+
+#define wxUSE_GLOBAL_MEMORY_OPERATORS 0
+
+#define wxUSE_DEBUG_NEW_ALWAYS 0
+
+#define wxUSE_ON_FATAL_EXCEPTION 1
+
+#define wxUSE_STACKWALKER 1
+
+#define wxUSE_DEBUGREPORT 1
+
+
+#ifndef wxUSE_UNICODE
+ #define wxUSE_UNICODE 1
+#endif
+
+#define wxUSE_WCHAR_T 1
+
+
+#define wxUSE_EXCEPTIONS 1
+
+#define wxUSE_EXTENDED_RTTI 0
+
+#define wxUSE_STL 0
+
+#define wxUSE_LOG 1
+
+#define wxUSE_LOGWINDOW 1
+
+#define wxUSE_LOGGUI 1
+
+#define wxUSE_LOG_DIALOG 1
+
+#define wxUSE_CMDLINE_PARSER 1
+
+#define wxUSE_THREADS 1
+
+#define wxUSE_WEAKREF 1
+
+#define wxUSE_STREAMS 1
+
+#if defined(__DMC__) || defined(__WATCOMC__) \
+ || (defined(_MSC_VER) && _MSC_VER < 1200)
+ #define wxUSE_STD_DEFAULT 0
+#else
+ #define wxUSE_STD_DEFAULT 0
+#endif
+
+#define wxUSE_STD_IOSTREAM 1
+
+#define wxUSE_STD_STRING 1
+
+#define wxUSE_PRINTF_POS_PARAMS 1
+
+
+#define wxUSE_LONGLONG 1
+
+#define wxUSE_BASE64 1
+
+#define wxUSE_CONSOLE_EVENTLOOP 1
+
+#define wxUSE_FILE 1
+#define wxUSE_FFILE 1
+
+#define wxUSE_FSVOLUME 0
+
+#define wxUSE_STDPATHS 1
+
+#define wxUSE_TEXTBUFFER 1
+
+#define wxUSE_TEXTFILE 1
+
+#define wxUSE_INTL 1
+
+#define wxUSE_XLOCALE 1
+
+#define wxUSE_DATETIME 1
+
+#define wxUSE_TIMER 1
+
+#define wxUSE_STOPWATCH 1
+
+#define wxUSE_CONFIG 1
+
+#define wxUSE_CONFIG_NATIVE 1
+
+#define wxUSE_DIALUP_MANAGER 1
+
+#define wxUSE_DYNLIB_CLASS 1
+
+#define wxUSE_DYNAMIC_LOADER 1
+
+#define wxUSE_SOCKETS 1
+
+#define wxUSE_IPV6 0
+
+#define wxUSE_FILESYSTEM 1
+
+#define wxUSE_FS_ZIP 1
+
+#define wxUSE_FS_ARCHIVE 1
+
+#define wxUSE_FS_INET 1
+
+#define wxUSE_ARCHIVE_STREAMS 1
+
+#define wxUSE_ZIPSTREAM 1
+
+#define wxUSE_TARSTREAM 1
+
+#define wxUSE_ZLIB 1
+
+#define wxUSE_APPLE_IEEE 1
+
+#define wxUSE_JOYSTICK 1
+
+#define wxUSE_FONTENUM 1
+
+#define wxUSE_FONTMAP 1
+
+#define wxUSE_MIMETYPE 1
+
+#define wxUSE_PROTOCOL 1
+
+#define wxUSE_PROTOCOL_FILE 1
+#define wxUSE_PROTOCOL_FTP 1
+#define wxUSE_PROTOCOL_HTTP 1
+
+#define wxUSE_URL 1
+
+#define wxUSE_URL_NATIVE 0
+
+#define wxUSE_VARIANT 1
+
+#define wxUSE_REGEX 1
+
+#define wxUSE_SYSTEM_OPTIONS 1
+
+#define wxUSE_SOUND 1
+
+#define wxUSE_MEDIACTRL 0
+
+#define wxUSE_GSTREAMER 0
+
+#define wxUSE_XRC 1
+
+#define wxUSE_XML 1
+
+#define wxUSE_AUI 1
+
+#define wxUSE_STC 1
+
+
+#ifndef wxUSE_GRAPHICS_CONTEXT
+#define wxUSE_GRAPHICS_CONTEXT 0
+#endif
+
+
+#define wxUSE_CONTROLS 1
+
+#define wxUSE_POPUPWIN 1
+
+#define wxUSE_TIPWINDOW 1
+
+#define wxUSE_ANIMATIONCTRL 1
+#define wxUSE_BUTTON 1
+#define wxUSE_BMPBUTTON 1
+#define wxUSE_CALENDARCTRL 1
+#define wxUSE_CHECKBOX 1
+#define wxUSE_CHECKLISTBOX 1
+#define wxUSE_CHOICE 1
+#define wxUSE_COLLPANE 1
+#define wxUSE_COLOURPICKERCTRL 1
+#define wxUSE_COMBOBOX 1
+#define wxUSE_DATAVIEWCTRL 1
+#define wxUSE_DATEPICKCTRL 1
+#define wxUSE_DIRPICKERCTRL 1
+#define wxUSE_EDITABLELISTBOX 1
+#define wxUSE_FILECTRL 1
+#define wxUSE_FILEPICKERCTRL 1
+#define wxUSE_FONTPICKERCTRL 1
+#define wxUSE_GAUGE 1
+#define wxUSE_HYPERLINKCTRL 1
+#define wxUSE_LISTBOX 1
+#define wxUSE_LISTCTRL 1
+#define wxUSE_RADIOBOX 1
+#define wxUSE_RADIOBTN 1
+#define wxUSE_SCROLLBAR 1
+#define wxUSE_SEARCHCTRL 1
+#define wxUSE_SLIDER 1
+#define wxUSE_SPINBTN 1
+#define wxUSE_SPINCTRL 1
+#define wxUSE_STATBOX 1
+#define wxUSE_STATLINE 1
+#define wxUSE_STATTEXT 1
+#define wxUSE_STATBMP 1
+#define wxUSE_TEXTCTRL 1
+#define wxUSE_TOGGLEBTN 1
+#define wxUSE_TREECTRL 1
+
+#define wxUSE_STATUSBAR 1
+
+#define wxUSE_NATIVE_STATUSBAR 1
+
+#define wxUSE_TOOLBAR 1
+#define wxUSE_TOOLBAR_NATIVE 1
+
+#define wxUSE_NOTEBOOK 1
+
+#define wxUSE_LISTBOOK 1
+
+#define wxUSE_CHOICEBOOK 1
+
+#define wxUSE_TREEBOOK 1
+
+#define wxUSE_TOOLBOOK 1
+
+#define wxUSE_TAB_DIALOG 0
+
+#define wxUSE_TASKBARICON 1
+
+#define wxUSE_GRID 1
+
+#define wxUSE_MINIFRAME 1
+
+#define wxUSE_COMBOCTRL 1
+
+#define wxUSE_ODCOMBOBOX 1
+
+#define wxUSE_BITMAPCOMBOBOX 1
+
+
+#define wxUSE_ACCEL 1
+
+#define wxUSE_HOTKEY 0
+
+#define wxUSE_CARET 1
+
+#define wxUSE_DISPLAY 1
+
+#define wxUSE_GEOMETRY 1
+
+#define wxUSE_IMAGLIST 1
+
+#define wxUSE_MENUS 1
+
+#define wxUSE_NOTIFICATION_MESSAGE 1
+
+#define wxUSE_SASH 1
+
+#define wxUSE_SPLITTER 1
+
+#define wxUSE_TOOLTIPS 1
+
+#define wxUSE_VALIDATORS 1
+
+#ifdef __WXMSW__
+#define wxUSE_AUTOID_MANAGEMENT 0
+#else
+#define wxUSE_AUTOID_MANAGEMENT 0
+#endif
+
+
+#define wxUSE_COMMON_DIALOGS 0
+
+#define wxUSE_BUSYINFO 1
+
+#define wxUSE_CHOICEDLG 1
+
+#define wxUSE_COLOURDLG 1
+
+#define wxUSE_DIRDLG 1
+
+
+#define wxUSE_FILEDLG 1
+
+#define wxUSE_FINDREPLDLG 1
+
+#define wxUSE_FONTDLG 1
+
+#define wxUSE_MSGDLG 1
+
+#define wxUSE_PROGRESSDLG 1
+
+#define wxUSE_STARTUP_TIPS 1
+
+#define wxUSE_TEXTDLG 1
+
+#define wxUSE_NUMBERDLG 1
+
+#define wxUSE_SPLASH 1
+
+#define wxUSE_WIZARDDLG 1
+
+#define wxUSE_ABOUTDLG 1
+
+
+#define wxUSE_METAFILE 0
+#define wxUSE_ENH_METAFILE 0
+#define wxUSE_WIN_METAFILES_ALWAYS 0
+
+
+#define wxUSE_MDI 1
+
+#define wxUSE_DOC_VIEW_ARCHITECTURE 1
+
+#define wxUSE_MDI_ARCHITECTURE 1
+
+#define wxUSE_PRINTING_ARCHITECTURE 1
+
+#define wxUSE_HTML 1
+
+#define wxUSE_GLCANVAS 0
+
+#define wxUSE_RICHTEXT 1
+
+
+#define wxUSE_CLIPBOARD 1
+
+#define wxUSE_DATAOBJ 1
+
+#define wxUSE_DRAG_AND_DROP 1
+
+#define wxUSE_ACCESSIBILITY 0
+
+
+#define wxUSE_SNGLINST_CHECKER 1
+
+#define wxUSE_DRAGIMAGE 1
+
+#define wxUSE_IPC 1
+
+#define wxUSE_HELP 1
+
+
+#define wxUSE_MS_HTML_HELP 0
+
+
+#define wxUSE_WXHTML_HELP 1
+
+#define wxUSE_CONSTRAINTS 1
+
+
+#define wxUSE_SPLINES 1
+
+
+#define wxUSE_MOUSEWHEEL 1
+
+
+
+#define wxUSE_POSTSCRIPT 1
+
+#define wxUSE_AFM_FOR_POSTSCRIPT 1
+
+#define wxUSE_SVG 1
+
+
+#define REMOVE_UNUSED_ARG 0
+
+#define wxUSE_IOSTREAMH 0
+
+
+
+#define wxUSE_IMAGE 1
+
+#define wxUSE_LIBPNG 1
+
+#define wxUSE_LIBJPEG 1
+
+#define wxUSE_LIBTIFF 1
+
+#define wxUSE_TGA 1
+
+#define wxUSE_GIF 1
+
+#define wxUSE_PNM 1
+
+#define wxUSE_PCX 1
+
+#define wxUSE_IFF 1
+
+#define wxUSE_XPM 1
+
+#define wxUSE_ICO_CUR 1
+
+#define wxUSE_PALETTE 1
+
+
+#define wxUSE_ALL_THEMES 0
+
+#define wxUSE_THEME_GTK 0
+#define wxUSE_THEME_METAL 0
+#define wxUSE_THEME_MONO 0
+#define wxUSE_THEME_WIN32 0
+
+
+/* --- end common options --- */
+
+/*
+ * Unix-specific options
+ */
+#define wxUSE_SELECT_DISPATCHER 1
+#define wxUSE_EPOLL_DISPATCHER 1
+
+#define wxUSE_UNICODE_UTF8 1
+#define wxUSE_UTF8_LOCALE_ONLY 0
+
+/* --- start MSW options --- */
+
+#ifndef wxUSE_UNICODE_MSLU
+ #define wxUSE_UNICODE_MSLU 0
+#endif
+
+#define wxUSE_MFC 0
+
+#define wxUSE_OLE 0
+
+#define wxUSE_OLE_AUTOMATION 0
+
+#define wxUSE_ACTIVEX 0
+
+#define wxUSE_DC_CACHEING 0
+
+#define wxUSE_WXDIB 0
+
+#define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 0
+
+#define wxUSE_REGKEY 0
+
+#define wxUSE_RICHEDIT 0
+
+#define wxUSE_RICHEDIT2 0
+
+#define wxUSE_OWNER_DRAWN 0
+
+#define wxUSE_TASKBARICON_BALLOONS 0
+
+#define wxUSE_UXTHEME 0
+
+#define wxUSE_INKEDIT 0
+
+#define wxUSE_INICONF 0
+
+
+#define wxUSE_DATEPICKCTRL_GENERIC 0
+
+
+#define wxUSE_CRASHREPORT 0
+/* --- end MSW options --- */
+
+/*
+ * Supports bool type
+ */
+#define HAVE_BOOL 1
+
+/*
+ * Define if your compiler supports the explicit keyword
+ */
+#define HAVE_EXPLICIT 1
+
+/*
+ * Define if your compiler supports const_cast<>()
+ */
+#define HAVE_CONST_CAST
+
+/*
+ * Define if your compiler supports reinterpret_cast<>()
+ */
+#define HAVE_REINTERPRET_CAST
+
+/*
+ * Define if your compiler supports static_cast<>()
+ */
+#define HAVE_STATIC_CAST
+
+/*
+ * Define if your compiler has C99 va_copy
+ */
+#define HAVE_VA_COPY 1
+
+/*
+ * Define if va_list type is an array
+ */
+/* #undef VA_LIST_IS_ARRAY */
+
+/*
+ * Define if the compiler supports variadic macros
+ */
+#define HAVE_VARIADIC_MACROS 1
+
+/*
+ * Define if your compiler has std::wstring
+ */
+#define HAVE_STD_WSTRING 1
+/*
+ * Define if your compiler has compliant std::string::compare
+ */
+/* #undef HAVE_STD_STRING_COMPARE */
+/*
+ * Define if your compiler has <hash_map>
+ */
+/* #undef HAVE_HASH_MAP */
+/*
+ * Define if your compiler has <ext/hash_map>
+ */
+/* #undef HAVE_EXT_HASH_MAP */
+/*
+ * Define if your compiler has std::hash_map/hash_set
+ */
+/* #undef HAVE_STD_HASH_MAP */
+/*
+ * Define if your compiler has __gnu_cxx::hash_map/hash_set
+ */
+/* #undef HAVE_GNU_CXX_HASH_MAP */
+
+/*
+ * Define if the compiler supports simple visibility declarations.
+ */
+/* #undef HAVE_VISIBILITY */
+
+/*
+ * Define if the compiler supports GCC's atomic memory access builtins
+ */
+#define HAVE_GCC_ATOMIC_BUILTINS 1
+
+/*
+ * Define if compiler's visibility support in libstdc++ is broken
+ */
+/* #undef HAVE_BROKEN_LIBSTDCXX_VISIBILITY */
+
+/*
+ * The built-in regex supports advanced REs in additional to POSIX's basic
+ * and extended. Your system regex probably won't support this, and in this
+ * case WX_NO_REGEX_ADVANCED should be defined.
+ */
+/* #undef WX_NO_REGEX_ADVANCED */
+/*
+ * On GNU systems use re_search instead of regexec, since the latter does a
+ * strlen on the search text affecting the performance of some operations.
+ */
+/* #undef HAVE_RE_SEARCH */
+/*
+ * Use SDL for audio (Unix)
+ */
+#define wxUSE_LIBSDL 0
+
+/*
+ * Compile sound backends as plugins
+ */
+#define wxUSE_PLUGINS 0
+
+/*
+ * Use GTK print for printing under GTK+ 2.0
+ */
+#define wxUSE_GTKPRINT 1
+/*
+ * Use GNOME print for printing under GTK+ 2.0
+ */
+#define wxUSE_LIBGNOMEPRINT 0
+/*
+ * Use GNOME VFS for MIME types
+ */
+#define wxUSE_LIBGNOMEVFS 0
+/*
+ * Use the Hildon framework
+ */
+#define wxUSE_LIBHILDON 0
+/*
+ * Have glibc2
+ */
+#define wxHAVE_GLIBC2 1
+/*
+ * Use libXpm
+ */
+#define wxHAVE_LIB_XPM 0
+/*
+ * Define if you have pthread_cleanup_push/pop()
+ */
+#define wxHAVE_PTHREAD_CLEANUP 1
+
+/* compatibility */
+/*
+ * Use OpenGL
+ */
+#define wxUSE_OPENGL 0
+
+/*
+ * Use MS HTML Help via libmspack (Unix)
+ */
+#define wxUSE_LIBMSPACK 0
+
+/*
+ * Matthews garbage collection (used for MrEd?)
+ */
+#define WXGARBAGE_COLLECTION_ON 0
+
+/*
+ * wxWebKitCtrl
+ */
+#define wxUSE_WEBKIT 0
+
+/*
+ * Objective-C class name uniquifying
+ */
+#define wxUSE_OBJC_UNIQUIFYING 0
+
+/*
+ * The const keyword is being introduced more in wxWindows.
+ * You can use this setting to maintain backward compatibility.
+ * If 0: will use const wherever possible.
+ * If 1: will use const only where necessary
+ * for precompiled headers to work.
+ * If 2: will be totally backward compatible, but precompiled
+ * headers may not work and program size will be larger.
+ */
+#define CONST_COMPATIBILITY 0
+
+/*
+ * use the session manager to detect KDE/GNOME
+ */
+#define wxUSE_DETECT_SM 1
+
+
+/* define with the name of timezone variable */
+#define WX_TIMEZONE timezone
+
+/* The type of 3rd argument to getsockname() - usually size_t or int */
+#define WX_SOCKLEN_T socklen_t
+
+/* The type of 5th argument to getsockopt() - usually size_t or int */
+#define SOCKOPTLEN_T socklen_t
+
+/* The type of statvfs(2) argument */
+#define WX_STATFS_T struct statfs
+
+/* The signal handler prototype */
+#define wxTYPE_SA_HANDLER int
+
+/* gettimeofday() usually takes 2 arguments, but some really old systems might
+ * have only one, in which case define WX_GETTIMEOFDAY_NO_TZ */
+/* #undef WX_GETTIMEOFDAY_NO_TZ */
+
+/* struct tm doesn't always have the tm_gmtoff field, define this if it does */
+#define WX_GMTOFF_IN_TM 1
+
+/* Define if you have poll(2) function */
+/* #undef HAVE_POLL */
+
+/* Define if you have pw_gecos field in struct passwd */
+#define HAVE_PW_GECOS 1
+
+/* Define if you have __cxa_demangle() in <cxxabi.h> */
+#define HAVE_CXA_DEMANGLE 1
+
+/* Define if you have dlopen() */
+#define HAVE_DLOPEN 1
+
+/* Define if you have gettimeofday() */
+#define HAVE_GETTIMEOFDAY 1
+
+/* Define if fsync() is available */
+#define HAVE_FSYNC 1
+
+/* Define if round() is available */
+#define HAVE_ROUND 1
+
+/* Define if you have ftime() */
+/* #undef HAVE_FTIME */
+
+/* Define if you have nanosleep() */
+#define HAVE_NANOSLEEP 1
+
+/* Define if you have sched_yield */
+#define HAVE_SCHED_YIELD 1
+
+/* Define if you have pthread_mutexattr_t and functions to work with it */
+#define HAVE_PTHREAD_MUTEXATTR_T 1
+
+/* Define if you have pthread_mutexattr_settype() declaration */
+#define HAVE_PTHREAD_MUTEXATTR_SETTYPE_DECL 1
+
+/* Define if you have PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP */
+/* #undef HAVE_PTHREAD_RECURSIVE_MUTEX_INITIALIZER */
+
+/* Define if you have pthread_cancel */
+#define HAVE_PTHREAD_CANCEL 1
+
+/* Define if you have pthread_mutex_timedlock */
+#define HAVE_PTHREAD_MUTEX_TIMEDLOCK 1
+
+/* Define if you have pthread_attr_setstacksize */
+#define HAVE_PTHREAD_ATTR_SETSTACKSIZE 1
+
+/* Define if you have shl_load() */
+/* #undef HAVE_SHL_LOAD */
+
+/* Define if you have snprintf() */
+#define HAVE_SNPRINTF 1
+
+/* Define if you have snprintf() declaration in the header */
+#define HAVE_SNPRINTF_DECL 1
+
+/* Define if you have a snprintf() which supports positional arguments
+ (defined in the unix98 standard) */
+#define HAVE_UNIX98_PRINTF 1
+
+/* define if you have statfs function */
+#define HAVE_STATFS 1
+
+/* define if you have statfs prototype */
+#define HAVE_STATFS_DECL 1
+
+/* define if you have statvfs function */
+/* #undef HAVE_STATVFS */
+
+/* Define if you have strptime() */
+#define HAVE_STRPTIME 1
+
+/* Define if strptime() is declared in headers */
+#define HAVE_STRPTIME_DECL 1
+
+/* Define if you have strtoull() and strtoll() */
+#define HAVE_STRTOULL 1
+
+/* Define if you have all functions to set thread priority */
+#define HAVE_THREAD_PRIORITY_FUNCTIONS 1
+
+/* Define if you have vsnprintf() */
+#define HAVE_VSNPRINTF 1
+
+/* Define if you have vsnprintf() declaration in the header */
+#define HAVE_VSNPRINTF_DECL 1
+
+/* Define if you have a _broken_ vsnprintf() declaration in the header,
+ * with 'char*' for the 3rd parameter instead of 'const char*' */
+/* #undef HAVE_BROKEN_VSNPRINTF_DECL */
+
+/* Define if you have usleep() */
+/* #undef HAVE_USLEEP */
+
+/* Define if you have wcslen function */
+#define HAVE_WCSLEN 1
+
+/* Define if you have wcsdup function */
+#define HAVE_WCSDUP 1
+
+/* Define if you have wcstoull() and wcstoll() */
+/* #undef HAVE_WCSTOULL */
+
+/* The number of bytes in a wchar_t. */
+#define SIZEOF_WCHAR_T 4
+
+/* The number of bytes in a int. */
+#define SIZEOF_INT 4
+
+/* The number of bytes in a pointer. */
+#define SIZEOF_VOID_P 4
+
+/* The number of bytes in a long. */
+#define SIZEOF_LONG 4
+
+/* The number of bytes in a long long. */
+#define SIZEOF_LONG_LONG 8
+
+/* The number of bytes in a short. */
+#define SIZEOF_SHORT 2
+
+/* The number of bytes in a size_t. */
+#define SIZEOF_SIZE_T 4
+
+/* Define if size_t on your machine is the same type as unsigned int. */
+#define wxSIZE_T_IS_UINT 1
+
+/* Define if size_t on your machine is the same type as unsigned long. */
+/* #undef wxSIZE_T_IS_ULONG */
+
+/* Define if wchar_t is distinct type in your compiler. */
+#define wxWCHAR_T_IS_REAL_TYPE 1
+
+/* Define if you have the dlerror function. */
+#define HAVE_DLERROR 1
+
+/* Define if you have Posix fnctl() function. */
+#define HAVE_FCNTL 1
+
+/* Define if you have BSD flock() function. */
+/* #undef HAVE_FLOCK */
+
+/* Define if you have getaddrinfo function. */
+/* #undef HAVE_GETADDRINFO */
+
+/* Define if you have a gethostbyname_r function taking 6 arguments. */
+#define HAVE_FUNC_GETHOSTBYNAME_R_6 1
+
+/* Define if you have a gethostbyname_r function taking 5 arguments. */
+/* #undef HAVE_FUNC_GETHOSTBYNAME_R_5 */
+
+/* Define if you have a gethostbyname_r function taking 3 arguments. */
+/* #undef HAVE_FUNC_GETHOSTBYNAME_R_3 */
+
+/* Define if you only have a gethostbyname function */
+/* #undef HAVE_GETHOSTBYNAME */
+
+/* Define if you have the gethostname function. */
+/* #undef HAVE_GETHOSTNAME */
+
+/* Define if you have a getservbyname_r function taking 6 arguments. */
+#define HAVE_FUNC_GETSERVBYNAME_R_6 1
+
+/* Define if you have a getservbyname_r function taking 5 arguments. */
+/* #undef HAVE_FUNC_GETSERVBYNAME_R_5 */
+
+/* Define if you have a getservbyname_r function taking 4 arguments. */
+/* #undef HAVE_FUNC_GETSERVBYNAME_R_4 */
+
+/* Define if you only have a getservbyname function */
+/* #undef HAVE_GETSERVBYNAME */
+
+/* Define if you have the gmtime_r function. */
+#define HAVE_GMTIME_R 1
+
+/* Define if you have the inet_addr function. */
+#define HAVE_INET_ADDR 1
+
+/* Define if you have the inet_aton function. */
+#define HAVE_INET_ATON 1
+
+/* Define if you have the localtime_r function. */
+#define HAVE_LOCALTIME_R 1
+
+/* Define if you have the mktemp function. */
+/* #undef HAVE_MKTEMP */
+
+/* Define if you have the mkstemp function. */
+#define HAVE_MKSTEMP 1
+
+/* Define if you have the putenv function. */
+/* #undef HAVE_PUTENV */
+
+/* Define if you have the setenv function. */
+#define HAVE_SETENV 1
+
+/* Define if you have strtok_r function. */
+#define HAVE_STRTOK_R 1
+
+/* Define if you have thr_setconcurrency function */
+/* #undef HAVE_THR_SETCONCURRENCY */
+
+/* Define if you have the uname function. */
+#define HAVE_UNAME 1
+
+/* Define if you have the unsetenv function. */
+#define HAVE_UNSETENV 1
+
+/* Define if you have the <X11/XKBlib.h> header file. */
+#define HAVE_X11_XKBLIB_H 1
+
+/* Define if you have the <X11/extensions/xf86vmode.h> header file. */
+/* #undef HAVE_X11_EXTENSIONS_XF86VMODE_H */
+
+/* Define if you have the <sched.h> header file. */
+#define HAVE_SCHED_H 1
+
+/* Define if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define if you have the <fcntl.h> header file. */
+/* #undef HAVE_FCNTL_H */
+
+/* Define if you have the <wchar.h> header file. */
+#define HAVE_WCHAR_H 1
+
+/* Define if you have the <wcstr.h> header file. */
+/* #undef HAVE_WCSTR_H */
+
+/* Define if you have <widec.h> (Solaris only) */
+/* #undef HAVE_WIDEC_H */
+
+/* Define if you have the <iconv.h> header file and iconv() symbol. */
+#define HAVE_ICONV 1
+
+/* Define as "const" if the declaration of iconv() needs const. */
+#define ICONV_CONST
+
+/* Define if you have the <langinfo.h> header file. */
+#define HAVE_LANGINFO_H 1
+
+/* Define if you have the <w32api.h> header file (mingw,cygwin). */
+/* #undef HAVE_W32API_H */
+
+/* Define if you have the <sys/soundcard.h> header file. */
+#define HAVE_SYS_SOUNDCARD_H 1
+
+/* Define if you have wcsrtombs() function */
+#define HAVE_WCSRTOMBS 1
+
+/* Define this if you have putws() */
+/* #undef HAVE_PUTWS */
+
+/* Define this if you have fputws() */
+#define HAVE_FPUTWS 1
+
+/* Define this if you have strcasecmp() function in <string.h> */
+#define HAVE_STRCASECMP_IN_STRING_H 1
+
+/* Define this if you have strcasecmp() function in <strings.h> */
+/* #undef HAVE_STRCASECMP_IN_STRINGS_H */
+
+/* Define this if you have wprintf() and related functions */
+#define HAVE_WPRINTF 1
+
+/* Define this if you have vswprintf() and related functions */
+#define HAVE_VSWPRINTF 1
+
+/* Define this if you have _vsnwprintf */
+/* #undef HAVE__VSNWPRINTF */
+
+/* vswscanf() */
+#define HAVE_VSWSCANF 1
+
+/* Define if fseeko and ftello are available. */
+#define HAVE_FSEEKO 1
+
+/* Define this if you are using gtk and gdk contains support for X11R6 XIM */
+/* #undef HAVE_XIM */
+
+/* Define this if you have X11/extensions/shape.h */
+/* #undef HAVE_XSHAPE */
+
+/* Define this if you have type SPBCDATA */
+/* #undef HAVE_SPBCDATA */
+
+/* Define if you have pango_font_family_is_monospace() (Pango >= 1.3.3) */
+/* #undef HAVE_PANGO_FONT_FAMILY_IS_MONOSPACE */
+
+/* Define if you have Pango xft support */
+/* #undef HAVE_PANGO_XFT */
+
+/* Define if you have the <sys/select.h> header file. */
+#define HAVE_SYS_SELECT_H 1
+
+/* Define if fdopen is available. */
+#define HAVE_FDOPEN 1
+
+/* Define if sysconf is available. */
+#define HAVE_SYSCONF 1
+
+/* Define if getpwuid_r is available. */
+#define HAVE_GETPWUID_R 1
+
+/* Define if getgrgid_r is available. */
+#define HAVE_GETGRGID_R 1
+
+/* Define if locale_t is available */
+#define HAVE_LOCALE_T 1
+
+/* -------------------------------------------------------------------------
+ Win32 adjustments section
+ ------------------------------------------------------------------------- */
+
+#ifdef __WIN32__
+
+/* we need to define wxUSE_XPM_IN_MSW for MSW compilation for compatibility
+ with wx/msw/setup.h */
+#define wxUSE_XPM_IN_MSW wxUSE_XPM
+
+/* When using an external jpeg library and the Windows headers already define
+ * boolean, define to the type used by the jpeg library for boolean. */
+/* #undef wxHACK_BOOLEAN */
+
+/* Define if the header pbt.h is missing. */
+/* #undef NEED_PBT_H */
+
+#endif /* __WIN32__ */
+
+/* --------------------------------------------------------*
+ * This stuff is static, it doesn't get modified directly
+ * by configure.
+*/
+
+/*
+ define some constants identifying wxWindows version in more details than
+ just the version number
+ */
+
+/* wxLogChain class available */
+#define wxHAS_LOG_CHAIN
+
+/* define this when wxDC::Blit() respects SetDeviceOrigin() in wxGTK */
+/* #undef wxHAS_WORKING_GTK_DC_BLIT */
+
+#endif /* __WX_SETUP_H__ */
+
--- /dev/null
+<!-- GCC_XML 0.7-cvs DTD Version 0.3 -->
+<!-- Written by Paul Ross 2003-07-13 -->
+<!-- Updated by Martin Piskernig 2004-11-14
+ * Some bugfixes (MP; 2004-11-18):
+ - added OffsetType attribute list
+ - Base cannot be child element of GCC_XML
+ - fixed Field::mutable to be of boolean type
+ - added "attributes" to destructor attlist
+-->
+
+<!ATTLIST Argument attributes CDATA #IMPLIED>
+<!ATTLIST Argument default CDATA #IMPLIED>
+<!ATTLIST Argument name CDATA #IMPLIED>
+<!-- type can not be an IDREF as it might be "_4c" etc. which will be
+an invalid id -->
+<!ATTLIST Argument type CDATA #REQUIRED>
+
+<!ATTLIST ArrayType align CDATA #IMPLIED>
+<!ATTLIST ArrayType attributes CDATA #IMPLIED>
+<!ATTLIST ArrayType id ID #REQUIRED>
+<!ATTLIST ArrayType max CDATA #REQUIRED>
+<!ATTLIST ArrayType min CDATA #FIXED "0">
+<!ATTLIST ArrayType size CDATA #IMPLIED>
+<!ATTLIST ArrayType type IDREF #REQUIRED>
+
+<!ATTLIST Base access (public | private | protected) "public">
+<!ATTLIST Base type IDREF #REQUIRED>
+<!ATTLIST Base virtual (0 | 1) "0">
+
+<!ATTLIST Class abstract (0 | 1) "0">
+<!ATTLIST Class access (public | private | protected) "public">
+<!ATTLIST Class align CDATA #IMPLIED>
+<!ATTLIST Class artificial CDATA #IMPLIED>
+<!ATTLIST Class attributes CDATA #IMPLIED>
+<!ATTLIST Class bases CDATA #IMPLIED>
+<!ATTLIST Class context IDREF #REQUIRED>
+<!ATTLIST Class file CDATA #REQUIRED>
+<!ATTLIST Class id ID #REQUIRED>
+<!ATTLIST Class incomplete (0 | 1) "0">
+<!ATTLIST Class line CDATA #REQUIRED>
+<!ATTLIST Class location CDATA #REQUIRED>
+<!ATTLIST Class mangled CDATA #REQUIRED>
+<!ATTLIST Class members CDATA #IMPLIED>
+<!ATTLIST Class name CDATA #REQUIRED>
+<!ATTLIST Class size CDATA #IMPLIED>
+
+<!ATTLIST Constructor access (public | private | protected) "public">
+<!ATTLIST Constructor artificial CDATA #IMPLIED>
+<!ATTLIST Constructor attributes CDATA #IMPLIED>
+<!ATTLIST Constructor context CDATA #REQUIRED>
+<!ATTLIST Constructor endline CDATA #IMPLIED>
+<!ATTLIST Constructor extern (0 | 1) "0">
+<!ATTLIST Constructor file CDATA #REQUIRED>
+<!ATTLIST Constructor id ID #REQUIRED>
+<!ATTLIST Constructor line CDATA #REQUIRED>
+<!ATTLIST Constructor location CDATA #REQUIRED>
+<!ATTLIST Constructor mangled CDATA #REQUIRED>
+<!ATTLIST Constructor name CDATA #REQUIRED>
+<!ATTLIST Constructor throw CDATA #IMPLIED>
+
+<!ATTLIST Converter access (public | private | protected) "public">
+<!ATTLIST Converter attributes CDATA #IMPLIED>
+<!ATTLIST Converter const (0 | 1) "0">
+<!ATTLIST Converter context IDREF #REQUIRED>
+<!ATTLIST Converter endline CDATA #IMPLIED>
+<!ATTLIST Converter extern (0 | 1) "0">
+<!ATTLIST Converter file CDATA #REQUIRED>
+<!ATTLIST Converter id ID #REQUIRED>
+<!ATTLIST Converter line CDATA #REQUIRED>
+<!ATTLIST Converter location CDATA #REQUIRED>
+<!ATTLIST Converter mangled CDATA #REQUIRED>
+<!ATTLIST Converter name CDATA #REQUIRED>
+<!ATTLIST Converter returns IDREF #REQUIRED>
+<!ATTLIST Converter throw CDATA #IMPLIED>
+<!ATTLIST Converter virtual (0 | 1) "0">
+
+<!ATTLIST CvQualifiedType align CDATA #IMPLIED>
+<!ATTLIST CvQualifiedType attributes CDATA #IMPLIED>
+<!ATTLIST CvQualifiedType const CDATA #IMPLIED>
+<!ATTLIST CvQualifiedType id ID #REQUIRED>
+<!ATTLIST CvQualifiedType restrict CDATA #IMPLIED>
+<!ATTLIST CvQualifiedType size CDATA #IMPLIED>
+<!ATTLIST CvQualifiedType type IDREF #REQUIRED>
+<!ATTLIST CvQualifiedType volatile CDATA #IMPLIED>
+
+<!ATTLIST Destructor access (public | private | protected) "public">
+<!ATTLIST Destructor artificial CDATA #IMPLIED>
+<!ATTLIST Destructor attributes CDATA #IMPLIED>
+<!ATTLIST Destructor context IDREF #REQUIRED>
+<!ATTLIST Destructor endline CDATA #IMPLIED>
+<!ATTLIST Destructor extern (0 | 1) "0">
+<!ATTLIST Destructor file CDATA #REQUIRED>
+<!ATTLIST Destructor id ID #REQUIRED>
+<!ATTLIST Destructor line CDATA #REQUIRED>
+<!ATTLIST Destructor location CDATA #REQUIRED>
+<!ATTLIST Destructor mangled CDATA #REQUIRED>
+<!ATTLIST Destructor name CDATA #REQUIRED>
+<!ATTLIST Destructor throw CDATA #IMPLIED>
+<!ATTLIST Destructor virtual (0 | 1) "0">
+
+<!ATTLIST EnumValue init CDATA #REQUIRED>
+<!ATTLIST EnumValue name CDATA #REQUIRED>
+
+<!ATTLIST Enumeration access (public | private | protected) "public">
+<!ATTLIST Enumeration align CDATA #IMPLIED>
+<!ATTLIST Enumeration artificial CDATA #IMPLIED>
+<!ATTLIST Enumeration attributes CDATA #IMPLIED>
+<!ATTLIST Enumeration context CDATA #REQUIRED>
+<!ATTLIST Enumeration file CDATA #REQUIRED>
+<!ATTLIST Enumeration id ID #REQUIRED>
+<!ATTLIST Enumeration line CDATA #REQUIRED>
+<!ATTLIST Enumeration location CDATA #REQUIRED>
+<!ATTLIST Enumeration name CDATA #REQUIRED>
+<!ATTLIST Enumeration size CDATA #IMPLIED>
+
+<!ATTLIST Field access (public | private | protected) "public">
+<!ATTLIST Field attributes CDATA #IMPLIED>
+<!ATTLIST Field bits CDATA #IMPLIED>
+<!ATTLIST Field context IDREF #REQUIRED>
+<!ATTLIST Field file CDATA #REQUIRED>
+<!ATTLIST Field id ID #REQUIRED>
+<!ATTLIST Field line CDATA #REQUIRED>
+<!ATTLIST Field location CDATA #REQUIRED>
+<!ATTLIST Field mangled CDATA #IMPLIED>
+<!ATTLIST Field mutable (0 | 1) "0">
+<!ATTLIST Field name CDATA #REQUIRED>
+<!ATTLIST Field offset CDATA #IMPLIED>
+<!ATTLIST Field type CDATA #REQUIRED>
+
+<!ATTLIST File id ID #REQUIRED>
+<!ATTLIST File name CDATA #REQUIRED>
+
+<!ATTLIST Function attributes CDATA #IMPLIED>
+<!ATTLIST Function context IDREF #REQUIRED>
+<!ATTLIST Function endline CDATA #IMPLIED>
+<!ATTLIST Function extern (0 | 1) "0">
+<!ATTLIST Function file CDATA #REQUIRED>
+<!ATTLIST Function id ID #REQUIRED>
+<!ATTLIST Function line CDATA #REQUIRED>
+<!ATTLIST Function location CDATA #REQUIRED>
+<!ATTLIST Function mangled CDATA #IMPLIED>
+<!ATTLIST Function name CDATA #REQUIRED>
+<!ATTLIST Function returns CDATA #REQUIRED>
+<!ATTLIST Function throw CDATA #IMPLIED>
+
+<!ATTLIST FunctionType attributes CDATA #IMPLIED>
+<!ATTLIST FunctionType id ID #REQUIRED>
+<!ATTLIST FunctionType returns IDREF #REQUIRED>
+
+<!ATTLIST FundamentalType align CDATA #IMPLIED>
+<!ATTLIST FundamentalType attributes CDATA #IMPLIED>
+<!ATTLIST FundamentalType id ID #REQUIRED>
+<!ATTLIST FundamentalType name CDATA #REQUIRED>
+<!ATTLIST FundamentalType size CDATA #IMPLIED>
+
+<!ATTLIST Method access (public | private | protected) "public">
+<!ATTLIST Method attributes CDATA #IMPLIED>
+<!ATTLIST Method const (0 | 1) "0">
+<!ATTLIST Method context IDREF #REQUIRED>
+<!ATTLIST Method endline CDATA #IMPLIED>
+<!ATTLIST Method extern (0 | 1) "0">
+<!ATTLIST Method file CDATA #REQUIRED>
+<!ATTLIST Method id ID #REQUIRED>
+<!ATTLIST Method line CDATA #REQUIRED>
+<!ATTLIST Method location CDATA #REQUIRED>
+<!ATTLIST Method mangled CDATA #REQUIRED>
+<!ATTLIST Method name CDATA #REQUIRED>
+<!ATTLIST Method pure_virtual (0 | 1) "0">
+<!ATTLIST Method returns CDATA #REQUIRED>
+<!ATTLIST Method static (0 | 1) "0">
+<!ATTLIST Method throw CDATA #IMPLIED>
+<!ATTLIST Method virtual (0 | 1) "0">
+
+<!ATTLIST MethodType attributes CDATA #IMPLIED>
+<!ATTLIST MethodType basetype IDREF #REQUIRED>
+<!ATTLIST MethodType id ID #REQUIRED>
+<!ATTLIST MethodType returns CDATA #REQUIRED>
+
+<!ATTLIST Namespace attributes CDATA #IMPLIED>
+<!ATTLIST Namespace context IDREF #IMPLIED>
+<!ATTLIST Namespace id ID #REQUIRED>
+<!ATTLIST Namespace mangled CDATA #IMPLIED>
+<!ATTLIST Namespace members CDATA #IMPLIED>
+<!ATTLIST Namespace name CDATA #REQUIRED>
+
+<!ATTLIST NamespaceAlias context IDREF #IMPLIED>
+<!ATTLIST NamespaceAlias id ID #REQUIRED>
+<!ATTLIST NamespaceAlias mangled CDATA #IMPLIED>
+<!ATTLIST NamespaceAlias name CDATA #REQUIRED>
+<!ATTLIST NamespaceAlias namespace CDATA #REQUIRED>
+
+<!ATTLIST OffsetType align CDATA #IMPLIED>
+<!ATTLIST OffsetType attributes CDATA #IMPLIED>
+<!ATTLIST OffsetType id ID #REQUIRED>
+<!ATTLIST OffsetType basetype IDREF #REQUIRED>
+<!ATTLIST OffsetType size CDATA #IMPLIED>
+<!ATTLIST OffsetType type CDATA #REQUIRED>
+
+<!ATTLIST OperatorFunction attributes CDATA #IMPLIED>
+<!ATTLIST OperatorFunction context IDREF #REQUIRED>
+<!ATTLIST OperatorFunction endline CDATA #IMPLIED>
+<!ATTLIST OperatorFunction extern (0 | 1) "0">
+<!ATTLIST OperatorFunction file CDATA #REQUIRED>
+<!ATTLIST OperatorFunction id ID #REQUIRED>
+<!ATTLIST OperatorFunction line CDATA #REQUIRED>
+<!ATTLIST OperatorFunction location CDATA #REQUIRED>
+<!ATTLIST OperatorFunction mangled CDATA #REQUIRED>
+<!ATTLIST OperatorFunction name CDATA #REQUIRED>
+<!ATTLIST OperatorFunction returns IDREF #REQUIRED>
+<!ATTLIST OperatorFunction throw CDATA #IMPLIED>
+
+<!ATTLIST OperatorMethod access (public | private | protected) "public">
+<!ATTLIST OperatorMethod attributes CDATA #IMPLIED>
+<!ATTLIST OperatorMethod const (0 | 1) "0">
+<!ATTLIST OperatorMethod context IDREF #REQUIRED>
+<!ATTLIST OperatorMethod endline CDATA #IMPLIED>
+<!ATTLIST OperatorMethod extern (0 | 1) "0">
+<!ATTLIST OperatorMethod file CDATA #REQUIRED>
+<!ATTLIST OperatorMethod id ID #REQUIRED>
+<!ATTLIST OperatorMethod line CDATA #REQUIRED>
+<!ATTLIST OperatorMethod location CDATA #REQUIRED>
+<!ATTLIST OperatorMethod mangled CDATA #REQUIRED>
+<!ATTLIST OperatorMethod name CDATA #REQUIRED>
+<!ATTLIST OperatorMethod pure_virtual (0 | 1) "0">
+<!ATTLIST OperatorMethod returns IDREF #REQUIRED>
+<!ATTLIST OperatorMethod static (0 | 1) "0">
+<!ATTLIST OperatorMethod throw CDATA #IMPLIED>
+<!ATTLIST OperatorMethod virtual (0 | 1) "0">
+
+<!ATTLIST PointerType align CDATA #IMPLIED>
+<!ATTLIST PointerType attributes CDATA #IMPLIED>
+<!ATTLIST PointerType id ID #REQUIRED>
+<!ATTLIST PointerType size CDATA #IMPLIED>
+<!ATTLIST PointerType type CDATA #REQUIRED>
+
+<!ATTLIST ReferenceType align CDATA #IMPLIED>
+<!ATTLIST ReferenceType attributes CDATA #IMPLIED>
+<!ATTLIST ReferenceType id ID #REQUIRED>
+<!ATTLIST ReferenceType size CDATA #IMPLIED>
+<!ATTLIST ReferenceType type CDATA #REQUIRED>
+
+<!ATTLIST Struct abstract (0 | 1) "0">
+<!ATTLIST Struct access (public | private | protected) "public">
+<!ATTLIST Struct align CDATA #IMPLIED>
+<!ATTLIST Struct artificial (0 | 1) "0">
+<!ATTLIST Struct attributes CDATA #IMPLIED>
+<!ATTLIST Struct bases CDATA #IMPLIED>
+<!ATTLIST Struct context IDREF #REQUIRED>
+<!ATTLIST Struct file CDATA #REQUIRED>
+<!ATTLIST Struct id ID #REQUIRED>
+<!ATTLIST Struct incomplete (0 | 1) "0">
+<!ATTLIST Struct line CDATA #REQUIRED>
+<!ATTLIST Struct location CDATA #REQUIRED>
+<!ATTLIST Struct mangled CDATA #REQUIRED>
+<!ATTLIST Struct members CDATA #IMPLIED>
+<!ATTLIST Struct name CDATA #IMPLIED>
+<!ATTLIST Struct size CDATA #IMPLIED>
+
+<!ATTLIST Typedef attributes CDATA #IMPLIED>
+<!ATTLIST Typedef context IDREF #REQUIRED>
+<!ATTLIST Typedef file CDATA #REQUIRED>
+<!ATTLIST Typedef id ID #REQUIRED>
+<!ATTLIST Typedef line CDATA #REQUIRED>
+<!ATTLIST Typedef location CDATA #REQUIRED>
+<!ATTLIST Typedef name CDATA #REQUIRED>
+<!ATTLIST Typedef type CDATA #REQUIRED>
+
+<!ATTLIST Unimplemented function CDATA #IMPLIED>
+<!ATTLIST Unimplemented id ID #REQUIRED>
+<!ATTLIST Unimplemented node CDATA #REQUIRED>
+<!ATTLIST Unimplemented tree_code (187 | 190 | 193) #REQUIRED>
+<!ATTLIST Unimplemented tree_code_name (template_type_parm |
+ typename_type | using_decl) #REQUIRED>
+
+<!ATTLIST Union abstract (0 | 1) "0">
+<!ATTLIST Union access (public | private | protected) "public">
+<!ATTLIST Union align CDATA #IMPLIED>
+<!ATTLIST Union artificial (0 | 1) "0">
+<!ATTLIST Union attributes CDATA #IMPLIED>
+<!ATTLIST Union bases CDATA #IMPLIED>
+<!ATTLIST Union context IDREF #REQUIRED>
+<!ATTLIST Union file CDATA #REQUIRED>
+<!ATTLIST Union id ID #REQUIRED>
+<!ATTLIST Union incomplete (0 | 1) "0">
+<!ATTLIST Union line CDATA #REQUIRED>
+<!ATTLIST Union location CDATA #REQUIRED>
+<!ATTLIST Union mangled CDATA #REQUIRED>
+<!ATTLIST Union members CDATA #IMPLIED>
+<!ATTLIST Union name CDATA #IMPLIED>
+<!ATTLIST Union size CDATA #IMPLIED>
+
+<!ATTLIST Variable access (public | private | protected) "public">
+<!ATTLIST Variable artificial CDATA #IMPLIED>
+<!ATTLIST Variable attributes CDATA #IMPLIED>
+<!ATTLIST Variable context IDREF #REQUIRED>
+<!ATTLIST Variable extern (0 | 1) "0">
+<!ATTLIST Variable file CDATA #REQUIRED>
+<!ATTLIST Variable id ID #REQUIRED>
+<!ATTLIST Variable init CDATA #IMPLIED>
+<!ATTLIST Variable line CDATA #REQUIRED>
+<!ATTLIST Variable location CDATA #REQUIRED>
+<!ATTLIST Variable mangled CDATA #IMPLIED>
+<!ATTLIST Variable name CDATA #REQUIRED>
+<!ATTLIST Variable type CDATA #REQUIRED>
+
+<!ATTLIST GCC_XML cvs_revision CDATA #IMPLIED>
+
+<!ELEMENT Argument EMPTY>
+<!ELEMENT Ellipsis EMPTY>
+<!ELEMENT ArrayType EMPTY>
+<!ELEMENT Base EMPTY>
+<!ELEMENT Class (Base)*>
+<!ELEMENT Constructor (Argument | Ellipsis)*>
+<!ELEMENT Converter EMPTY>
+<!ELEMENT CvQualifiedType EMPTY>
+<!ELEMENT Destructor (Argument)*> <!-- FIXME -->
+<!ELEMENT EnumValue EMPTY>
+<!ELEMENT Enumeration (EnumValue)+>
+<!ELEMENT Field EMPTY>
+<!ELEMENT File EMPTY>
+<!ELEMENT Function (Argument | Ellipsis)*>
+<!ELEMENT FunctionType (Argument | Ellipsis)*>
+<!ELEMENT FundamentalType EMPTY>
+<!ELEMENT Method (Argument | Ellipsis)*>
+<!ELEMENT MethodType (Argument | Ellipsis)*>
+<!ELEMENT Namespace EMPTY>
+<!ELEMENT NamespaceAlias EMPTY>
+<!ELEMENT OffsetType EMPTY>
+<!ELEMENT OperatorFunction (Argument | Ellipsis)*>
+<!ELEMENT OperatorMethod (Argument | Ellipsis)*>
+<!ELEMENT PointerType EMPTY>
+<!ELEMENT ReferenceType EMPTY>
+<!ELEMENT Struct (Base)*>
+<!ELEMENT Typedef EMPTY>
+<!ELEMENT Unimplemented EMPTY>
+<!ELEMENT Union (Base)*>
+<!ELEMENT Variable EMPTY>
+<!ELEMENT GCC_XML (ArrayType | Class | Constructor | Converter | CvQualifiedType |
+ Destructor | Enumeration | Field | File | Function | FunctionType |
+ FundamentalType | Method | MethodType | Namespace | NamespaceAlias | OperatorFunction
+ | OperatorMethod | OffsetType | PointerType | ReferenceType | Struct | Typedef |
+ Unimplemented | Union | Variable)+>
+
--- /dev/null
+<?xml version="1.0"?>
+
+<!-- This file was taken from http://www.gccxml.org
+ where it was contributed by Ivan Kissiov.
+
+ This is useful to 'see' the structure of the gccXML output.
+ Usage:
+
+ xsltproc gccxml.xsl file_created_by_gccxml.xml
+-->
+
+<xsl:stylesheet
+ xmlns:xsl = "http://www.w3.org/1999/XSL/Transform"
+ version = "1.0">
+ <xsl:output method="html"/>
+
+ <xsl:template match = "GCC_XML">
+
+ <!-- =============================================== -->
+ <html>
+ <table border="0">
+ <tr><td>A</td><td ><a href="#TA">Array Types</a></td></tr>
+ <tr><td>B</td><td ><a href="#TB">Builtins</a></td></tr>
+ <tr><td>Co</td><td ><a href="#TC">Constructors</a></td></tr>
+ <tr><td>Cvt</td><td ><a href="#TCT">Converter</a></td></tr>
+ <tr><td>Q</td><td ><a href="#TQ">Cvq Types</a></td></tr>
+ <tr><td>Z</td><td ><a href="#TZ">Classes</a></td></tr>
+ <tr><td>D</td><td ><a href="#TD">Destructors</a></td></tr>
+ <tr><td>E</td><td ><a href="#TE">Enumerations</a></td></tr>
+ <tr><td>Fd</td><td ><a href="#TFd">Fields</a></td></tr>
+ <tr><td>Fu</td><td ><a href="#TF">Functions</a></td></tr>
+ <tr><td>FT</td><td ><a href="#TFT">Function Types</a></td></tr>
+ <tr><td>M</td><td ><a href="#TM">Methods</a></td></tr>
+ <tr><td>MT</td><td ><a href="#TMT">Method Typess</a></td></tr>
+ <tr><td>N</td><td ><a href="#TN">Namespaces</a></td></tr>
+ <tr><td>OpM</td><td ><a href="#TOM">Operator Methods</a></td></tr>
+ <tr><td>OpF</td><td ><a href="#TOF">Operator Functions</a></td></tr>
+ <tr><td>O</td><td ><a href="#TO">Offset Types</a></td></tr>
+ <tr><td>P</td><td ><a href="#TP">Pointer Types</a></td></tr>
+ <tr><td>R</td><td ><a href="#TR">Reference Types</a></td></tr>
+ <tr><td>S</td><td ><a href="#TS">Structures</a></td></tr>
+ <tr><td>TT</td><td ><a href="#TT">Typedefs</a></td></tr>
+ <tr><td>U</td><td ><a href="#TU">Unions</a></td></tr>
+ <tr><td>V</td><td ><a href="#TV">Variables</a></td></tr>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TB"></a>
+ <thead>
+ <tr align="center" colspan="5">Builtin Types</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="FundamentalType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TN"></a>
+ <thead>
+ <tr align="center" colspan="5">Namespaces</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">members</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Namespace">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TZ"></a>
+ <thead>
+ <tr align="center" colspan="5">Classes</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">bases</td>
+ <td align="center">members</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Class">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TS"></a>
+ <thead>
+ <tr align="center" colspan="5">Structures</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">bases</td>
+ <td align="center">members</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Struct">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TU"></a>
+ <thead>
+ <tr align="center" colspan="5">Unions</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">bases</td>
+ <td align="center">members</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Union">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TFd"></a>
+ <thead>
+ <tr align="center" colspan="5">Fields</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">type</td>
+ <td align="center">bits</td>
+ <td align="center">access</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Field">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TT"></a>
+ <thead>
+ <tr align="center" colspan="5">Typedefs</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">type</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Typedef">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TA"></a>
+ <thead>
+ <tr align="center" colspan="2">Arrays</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">type</td>
+ <td align="center">min</td>
+ <td align="center">max</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="ArrayType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TP"></a>
+ <thead>
+ <tr align="center" colspan="2">Pointers</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">type</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="PointerType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TO"></a>
+ <thead>
+ <tr align="center" colspan="2">Offset Types</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">basetype</td>
+ <td align="center">type</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="OffsetType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TR"></a>
+ <thead>
+ <tr align="center" colspan="2">References</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">type</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="ReferenceType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TQ"></a>
+ <thead>
+ <tr align="center" colspan="2">CVQ Types</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">type</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="CvQualifiedType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TV"></a>
+ <thead>
+ <tr align="center" colspan="5">Variables</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">type</td>
+ <td align="center">access</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Variable">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TM"></a>
+ <thead>
+ <tr align="center" colspan="5">Methods</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">returns</td>
+ <td align="center">throws</td>
+ <td align="center">arguments</td>
+ <td align="center">access</td>
+ <td align="center">static</td>
+ <td align="center">const</td> <!--MINE-->
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Method">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TOM"></a>
+ <thead>
+ <tr align="center" colspan="5">Operator Methods</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">returns</td>
+ <td align="center">throws</td>
+ <td align="center">arguments</td>
+ <td align="center">access</td>
+ <td align="center">static</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="OperatorMethod">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TMT"></a>
+ <thead>
+ <tr align="center" colspan="5">Method Types</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">basetype</td>
+ <td align="center">returns</td>
+ <td align="center">arguments</td>
+ <td align="center">const</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="MethodType">
+ <xsl:sort select="@id"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TCT"></a>
+ <thead>
+ <tr align="center" colspan="5">Converters</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">returns</td>
+ <td align="center">throws</td>
+ <td align="center">access</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Converter">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TF"></a>
+ <thead>
+ <tr align="center" colspan="5">Functions</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">returns</td>
+ <td align="center">throws</td>
+ <td align="center">arguments</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Function">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TOF"></a>
+ <thead>
+ <tr align="center" colspan="5">Operator Functions</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">returns</td>
+ <td align="center">throws</td>
+ <td align="center">arguments</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="OperatorFunction">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TFT"></a>
+ <thead>
+ <tr align="center" colspan="5">Function Types</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">returns</td>
+ <td align="center">arguments</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="FunctionType">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TC"></a>
+ <thead>
+ <tr align="center" colspan="5">Constructors</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">throws</td>
+ <td align="center">arguments</td>
+ <td align="center">access</td>
+ <td align="center">artificial</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Constructor">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TD"></a>
+ <thead>
+ <tr align="center" colspan="5">Destructors</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">throws</td>
+ <td align="center">access</td>
+ <td align="center">virtual</td>
+ <td align="center">artificial</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Destructor">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <a name="TE"></a>
+ <thead>
+ <tr align="center" colspan="5">Enumerations</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ <td align="center">context</td>
+ <td align="center">artificial</td>
+ <td align="center">file</td>
+ <td align="center">line</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="Enumeration">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+
+ <!-- =============================================== -->
+ <table border="1">
+ <thead>
+ <tr align="center" colspan="5">File</tr>
+ <tr>
+ <td align="center">T</td>
+ <td align="center">id</td>
+ <td align="center">name</td>
+ </tr>
+ </thead>
+ <xsl:apply-templates select="File">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table><hr/>
+ </html>
+ </xsl:template>
+
+ <!-- ====================================================================== -->
+ <xsl:template match = "Class">
+ <tr>
+ <td>Z</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@bases" />
+ </xsl:call-template>
+ </td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@members" />
+ </xsl:call-template>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Struct">
+ <tr>
+ <td>S</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@bases" />
+ </xsl:call-template>
+ </td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@members" />
+ </xsl:call-template>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Union">
+ <tr>
+ <td>U</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@bases" />
+ </xsl:call-template>
+ </td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@members" />
+ </xsl:call-template>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Namespace">
+ <tr>
+ <td>N</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@members" />
+ </xsl:call-template>
+ </td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Field">
+ <tr>
+ <td>Fd</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ <td><xsl:value-of select="@access"/></td>
+ <td><xsl:value-of select="@bits"/></td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Typedef">
+ <tr>
+ <td>T</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "ArrayType">
+ <tr>
+ <td>A</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ <td><a name="{@min}"><xsl:value-of select="@min"/></a></td>
+ <td><a name="{@max}"><xsl:value-of select="@max"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "PointerType">
+ <tr>
+ <td>P</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "OffsetType">
+ <tr>
+ <td>O</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@basetype}"><xsl:value-of select="@basetype"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "ReferenceType">
+ <tr>
+ <td>R</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "CvQualifiedType">
+ <tr>
+ <td>Q</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "FundamentalType">
+ <tr>
+ <td>B</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Variable">
+ <tr>
+ <td>V</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
+ <td><xsl:value-of select="@access"/></td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Method">
+ <tr>
+ <td>M</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:value-of select="@demangled"/></td>
+ <td><xsl:value-of select="@access"/></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@static='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@const='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "MethodType">
+ <tr>
+ <td>MT</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@basetype}"><xsl:value-of select="@basetype"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td><xsl:apply-templates select="Argument"/></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@const='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "OperatorMethod">
+ <tr>
+ <td>OpM</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@basetype}"><xsl:value-of select="@basetype"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:apply-templates select="Argument"/></td>
+ <td><xsl:value-of select="@access"/></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@static='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Converter">
+ <tr>
+ <td>Cnv</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:value-of select="@access"/></td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Function">
+ <tr>
+ <td>F</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:apply-templates select="Argument"/></td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "OperatorFunction">
+ <tr>
+ <td>OpF</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:apply-templates select="Argument"/></td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "FunctionType">
+ <tr>
+ <td>FT</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
+ <td><xsl:apply-templates select="Argument"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Destructor">
+ <tr>
+ <td>D</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:value-of select="@access"/></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@virtual='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@artificial='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Constructor">
+ <tr>
+ <td>Co</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:call-template name="tokenize">
+ <xsl:with-param name="string" select="@throw" />
+ </xsl:call-template>
+ </td>
+ <td><xsl:apply-templates select="Argument"/></td>
+ <td><xsl:value-of select="@access"/></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@artificial='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Enumeration">
+ <tr>
+ <td>En</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><xsl:value-of select="@name"/></td>
+ <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@artificial='1'">true</xsl:when>
+ <xsl:otherwise>false</xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
+ <td><xsl:value-of select="@line"/></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "File">
+ <tr>
+ <td>Fd</td>
+ <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
+ <td><a href="{@name}"><xsl:value-of select="@name"/></a></td>
+ </tr>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template match = "Argument">
+ <a href="#{@type}"><xsl:value-of select="@type"/></a>
+ </xsl:template>
+
+ <!--- ========== Tokenizer ================== -->
+ <xsl:template name="tokenize">
+ <xsl:param name="string" select="''" />
+ <xsl:param name="delimiters" select="' 	 '" />
+ <xsl:choose>
+ <xsl:when test="not($string)" />
+ <xsl:when test="not($delimiters)">
+ <xsl:call-template name="_tokenize-characters">
+ <xsl:with-param name="string" select="$string" />
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="_tokenize-delimiters">
+ <xsl:with-param name="string" select="$string" />
+ <xsl:with-param name="delimiters" select="$delimiters" />
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template name="_tokenize-characters">
+ <xsl:param name="string" />
+ <xsl:if test="$string">
+ <a href="#{$string}">
+ <xsl:value-of select="substring($string, 1, 1)" />
+ </a>
+ <xsl:call-template name="_tokenize-characters">
+ <xsl:with-param name="string" select="substring($string, 2)" />
+ </xsl:call-template>
+ </xsl:if>
+ </xsl:template>
+
+ <!-- =============================================== -->
+ <xsl:template name="_tokenize-delimiters">
+ <xsl:param name="string" />
+ <xsl:param name="delimiters" />
+ <xsl:variable name="delimiter" select="substring($delimiters, 1, 1)" />
+ <xsl:choose>
+ <xsl:when test="not($delimiter)">
+ <a href="#{$string}">
+ <xsl:value-of select="$string" />
+ </a>
+ </xsl:when>
+ <xsl:when test="contains($string, $delimiter)">
+ <xsl:if test="not(starts-with($string, $delimiter))">
+ <xsl:call-template name="_tokenize-delimiters">
+ <xsl:with-param name="string" select="substring-before($string, $delimiter)" />
+ <xsl:with-param name="delimiters" select="substring($delimiters, 2)" />
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:call-template name="_tokenize-delimiters">
+ <xsl:with-param name="string" select="substring-after($string, $delimiter)" />
+ <xsl:with-param name="delimiters" select="$delimiters" />
+ </xsl:call-template>
+ </xsl:when>
+
+ <xsl:when test="starts-with($string, 'private:')">
+ <xsl:call-template name="_tokenize-delimiters">
+ <xsl:with-param name="string" select="substring($string, 9)" />
+ </xsl:call-template>
+ </xsl:when>
+
+ <xsl:when test="starts-with($string, 'protected:')">
+ <xsl:call-template name="_tokenize-delimiters">
+ <xsl:with-param name="string" select="substring($string, 11)" />
+ </xsl:call-template>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:call-template name="_tokenize-delimiters">
+ <xsl:with-param name="string" select="$string" />
+ <xsl:with-param name="delimiters" select="substring($delimiters, 2)" />
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+</xsl:stylesheet>
--- /dev/null
+#!/bin/bash
+
+# $Id$
+#
+# Runs gccxml on the wxWidgets include folder, in order to build the XML
+# file to fetch to ifacecheck to check the coherency of the wxWidgets
+# interface headers with the "real" ones.
+
+
+## CONSTANTS
+############
+
+
+gccxmloutput="wxapi.xml" # where do we put the gccXML output:
+allheaders="/tmp/wx-all.h" # headers which includes all wx public headers
+
+# the list of all wxWidgets public headers
+listcmd="ls wx/*.h wx/aui/*.h wx/html/*.h wx/protocol/*.h wx/richtext/*.h wx/stc/*.h wx/xml/*.h wx/xrc/*.h"
+
+
+
+## MAIN
+#######
+
+if [[ ! -z "$1" ]]; then
+ echo "This script does not accept arguments."
+ echo "Usage: $0"
+ echo "Creates a '$gccxmloutput' file which you can pass to ifacecheck."
+ exit 1
+fi
+
+me=$(basename $0)
+path=${0%%/$me}
+current=$(pwd) # current path
+
+gccxmloutput="$current/$gccxmloutput"
+
+cd @top_srcdir@/include # go to wx include folder
+
+# now filter it
+headerlist=`$listcmd | grep -v wxshl | grep -v wx_cw | grep -v setup | grep -v xti | grep -v dde.h | grep -v fmappriv`
+
+cd $current # return to the original path
+
+# create the header file to pass to gccxml
+if [[ -f $allheaders ]]; then rm $allheaders; fi
+for f in $headerlist; do
+ echo "#include <$f>" >> $allheaders
+done
+
+# filter the configure flags to pass to gccxml
+flags="@CXXFLAGS@"
+
+# NOTE: it's important to define __WXDEBUG__ because some functions of wx
+# are declared (and thus parsed by gcc) only if that symbol is defined;
+# so we remove __WXDEBUG__ symbol from $flags, in case it's defined:
+flags=`echo "$flags" | sed -e 's/-pthread//g' | sed -e 's/__WXDEBUG__//g'`
+
+# run gccxml with the same flag used for the real compilation of wx sources:
+echo "Running gccxml on the $allheaders file..."
+if [[ -f "$gccxmloutput" ]]; then rm $gccxmloutput; fi
+gccxml -I . -I @top_srcdir@/include $flags -D__WX@TOOLKIT@__ -DWXBUILDING $allheaders -fxml=$gccxmloutput
+
+# cleanup
+rm $allheaders
+++ /dev/null
-<!-- GCC_XML 0.7-cvs DTD Version 0.3 -->
-<!-- Written by Paul Ross 2003-07-13 -->
-<!-- Updated by Martin Piskernig 2004-11-14
- * Some bugfixes (MP; 2004-11-18):
- - added OffsetType attribute list
- - Base cannot be child element of GCC_XML
- - fixed Field::mutable to be of boolean type
- - added "attributes" to destructor attlist
--->
-
-<!ATTLIST Argument attributes CDATA #IMPLIED>
-<!ATTLIST Argument default CDATA #IMPLIED>
-<!ATTLIST Argument name CDATA #IMPLIED>
-<!-- type can not be an IDREF as it might be "_4c" etc. which will be
-an invalid id -->
-<!ATTLIST Argument type CDATA #REQUIRED>
-
-<!ATTLIST ArrayType align CDATA #IMPLIED>
-<!ATTLIST ArrayType attributes CDATA #IMPLIED>
-<!ATTLIST ArrayType id ID #REQUIRED>
-<!ATTLIST ArrayType max CDATA #REQUIRED>
-<!ATTLIST ArrayType min CDATA #FIXED "0">
-<!ATTLIST ArrayType size CDATA #IMPLIED>
-<!ATTLIST ArrayType type IDREF #REQUIRED>
-
-<!ATTLIST Base access (public | private | protected) "public">
-<!ATTLIST Base type IDREF #REQUIRED>
-<!ATTLIST Base virtual (0 | 1) "0">
-
-<!ATTLIST Class abstract (0 | 1) "0">
-<!ATTLIST Class access (public | private | protected) "public">
-<!ATTLIST Class align CDATA #IMPLIED>
-<!ATTLIST Class artificial CDATA #IMPLIED>
-<!ATTLIST Class attributes CDATA #IMPLIED>
-<!ATTLIST Class bases CDATA #IMPLIED>
-<!ATTLIST Class context IDREF #REQUIRED>
-<!ATTLIST Class file CDATA #REQUIRED>
-<!ATTLIST Class id ID #REQUIRED>
-<!ATTLIST Class incomplete (0 | 1) "0">
-<!ATTLIST Class line CDATA #REQUIRED>
-<!ATTLIST Class location CDATA #REQUIRED>
-<!ATTLIST Class mangled CDATA #REQUIRED>
-<!ATTLIST Class members CDATA #IMPLIED>
-<!ATTLIST Class name CDATA #REQUIRED>
-<!ATTLIST Class size CDATA #IMPLIED>
-
-<!ATTLIST Constructor access (public | private | protected) "public">
-<!ATTLIST Constructor artificial CDATA #IMPLIED>
-<!ATTLIST Constructor attributes CDATA #IMPLIED>
-<!ATTLIST Constructor context CDATA #REQUIRED>
-<!ATTLIST Constructor endline CDATA #IMPLIED>
-<!ATTLIST Constructor extern (0 | 1) "0">
-<!ATTLIST Constructor file CDATA #REQUIRED>
-<!ATTLIST Constructor id ID #REQUIRED>
-<!ATTLIST Constructor line CDATA #REQUIRED>
-<!ATTLIST Constructor location CDATA #REQUIRED>
-<!ATTLIST Constructor mangled CDATA #REQUIRED>
-<!ATTLIST Constructor name CDATA #REQUIRED>
-<!ATTLIST Constructor throw CDATA #IMPLIED>
-
-<!ATTLIST Converter access (public | private | protected) "public">
-<!ATTLIST Converter attributes CDATA #IMPLIED>
-<!ATTLIST Converter const (0 | 1) "0">
-<!ATTLIST Converter context IDREF #REQUIRED>
-<!ATTLIST Converter endline CDATA #IMPLIED>
-<!ATTLIST Converter extern (0 | 1) "0">
-<!ATTLIST Converter file CDATA #REQUIRED>
-<!ATTLIST Converter id ID #REQUIRED>
-<!ATTLIST Converter line CDATA #REQUIRED>
-<!ATTLIST Converter location CDATA #REQUIRED>
-<!ATTLIST Converter mangled CDATA #REQUIRED>
-<!ATTLIST Converter name CDATA #REQUIRED>
-<!ATTLIST Converter returns IDREF #REQUIRED>
-<!ATTLIST Converter throw CDATA #IMPLIED>
-<!ATTLIST Converter virtual (0 | 1) "0">
-
-<!ATTLIST CvQualifiedType align CDATA #IMPLIED>
-<!ATTLIST CvQualifiedType attributes CDATA #IMPLIED>
-<!ATTLIST CvQualifiedType const CDATA #IMPLIED>
-<!ATTLIST CvQualifiedType id ID #REQUIRED>
-<!ATTLIST CvQualifiedType restrict CDATA #IMPLIED>
-<!ATTLIST CvQualifiedType size CDATA #IMPLIED>
-<!ATTLIST CvQualifiedType type IDREF #REQUIRED>
-<!ATTLIST CvQualifiedType volatile CDATA #IMPLIED>
-
-<!ATTLIST Destructor access (public | private | protected) "public">
-<!ATTLIST Destructor artificial CDATA #IMPLIED>
-<!ATTLIST Destructor attributes CDATA #IMPLIED>
-<!ATTLIST Destructor context IDREF #REQUIRED>
-<!ATTLIST Destructor endline CDATA #IMPLIED>
-<!ATTLIST Destructor extern (0 | 1) "0">
-<!ATTLIST Destructor file CDATA #REQUIRED>
-<!ATTLIST Destructor id ID #REQUIRED>
-<!ATTLIST Destructor line CDATA #REQUIRED>
-<!ATTLIST Destructor location CDATA #REQUIRED>
-<!ATTLIST Destructor mangled CDATA #REQUIRED>
-<!ATTLIST Destructor name CDATA #REQUIRED>
-<!ATTLIST Destructor throw CDATA #IMPLIED>
-<!ATTLIST Destructor virtual (0 | 1) "0">
-
-<!ATTLIST EnumValue init CDATA #REQUIRED>
-<!ATTLIST EnumValue name CDATA #REQUIRED>
-
-<!ATTLIST Enumeration access (public | private | protected) "public">
-<!ATTLIST Enumeration align CDATA #IMPLIED>
-<!ATTLIST Enumeration artificial CDATA #IMPLIED>
-<!ATTLIST Enumeration attributes CDATA #IMPLIED>
-<!ATTLIST Enumeration context CDATA #REQUIRED>
-<!ATTLIST Enumeration file CDATA #REQUIRED>
-<!ATTLIST Enumeration id ID #REQUIRED>
-<!ATTLIST Enumeration line CDATA #REQUIRED>
-<!ATTLIST Enumeration location CDATA #REQUIRED>
-<!ATTLIST Enumeration name CDATA #REQUIRED>
-<!ATTLIST Enumeration size CDATA #IMPLIED>
-
-<!ATTLIST Field access (public | private | protected) "public">
-<!ATTLIST Field attributes CDATA #IMPLIED>
-<!ATTLIST Field bits CDATA #IMPLIED>
-<!ATTLIST Field context IDREF #REQUIRED>
-<!ATTLIST Field file CDATA #REQUIRED>
-<!ATTLIST Field id ID #REQUIRED>
-<!ATTLIST Field line CDATA #REQUIRED>
-<!ATTLIST Field location CDATA #REQUIRED>
-<!ATTLIST Field mangled CDATA #IMPLIED>
-<!ATTLIST Field mutable (0 | 1) "0">
-<!ATTLIST Field name CDATA #REQUIRED>
-<!ATTLIST Field offset CDATA #IMPLIED>
-<!ATTLIST Field type CDATA #REQUIRED>
-
-<!ATTLIST File id ID #REQUIRED>
-<!ATTLIST File name CDATA #REQUIRED>
-
-<!ATTLIST Function attributes CDATA #IMPLIED>
-<!ATTLIST Function context IDREF #REQUIRED>
-<!ATTLIST Function endline CDATA #IMPLIED>
-<!ATTLIST Function extern (0 | 1) "0">
-<!ATTLIST Function file CDATA #REQUIRED>
-<!ATTLIST Function id ID #REQUIRED>
-<!ATTLIST Function line CDATA #REQUIRED>
-<!ATTLIST Function location CDATA #REQUIRED>
-<!ATTLIST Function mangled CDATA #IMPLIED>
-<!ATTLIST Function name CDATA #REQUIRED>
-<!ATTLIST Function returns CDATA #REQUIRED>
-<!ATTLIST Function throw CDATA #IMPLIED>
-
-<!ATTLIST FunctionType attributes CDATA #IMPLIED>
-<!ATTLIST FunctionType id ID #REQUIRED>
-<!ATTLIST FunctionType returns IDREF #REQUIRED>
-
-<!ATTLIST FundamentalType align CDATA #IMPLIED>
-<!ATTLIST FundamentalType attributes CDATA #IMPLIED>
-<!ATTLIST FundamentalType id ID #REQUIRED>
-<!ATTLIST FundamentalType name CDATA #REQUIRED>
-<!ATTLIST FundamentalType size CDATA #IMPLIED>
-
-<!ATTLIST Method access (public | private | protected) "public">
-<!ATTLIST Method attributes CDATA #IMPLIED>
-<!ATTLIST Method const (0 | 1) "0">
-<!ATTLIST Method context IDREF #REQUIRED>
-<!ATTLIST Method endline CDATA #IMPLIED>
-<!ATTLIST Method extern (0 | 1) "0">
-<!ATTLIST Method file CDATA #REQUIRED>
-<!ATTLIST Method id ID #REQUIRED>
-<!ATTLIST Method line CDATA #REQUIRED>
-<!ATTLIST Method location CDATA #REQUIRED>
-<!ATTLIST Method mangled CDATA #REQUIRED>
-<!ATTLIST Method name CDATA #REQUIRED>
-<!ATTLIST Method pure_virtual (0 | 1) "0">
-<!ATTLIST Method returns CDATA #REQUIRED>
-<!ATTLIST Method static (0 | 1) "0">
-<!ATTLIST Method throw CDATA #IMPLIED>
-<!ATTLIST Method virtual (0 | 1) "0">
-
-<!ATTLIST MethodType attributes CDATA #IMPLIED>
-<!ATTLIST MethodType basetype IDREF #REQUIRED>
-<!ATTLIST MethodType id ID #REQUIRED>
-<!ATTLIST MethodType returns CDATA #REQUIRED>
-
-<!ATTLIST Namespace attributes CDATA #IMPLIED>
-<!ATTLIST Namespace context IDREF #IMPLIED>
-<!ATTLIST Namespace id ID #REQUIRED>
-<!ATTLIST Namespace mangled CDATA #IMPLIED>
-<!ATTLIST Namespace members CDATA #IMPLIED>
-<!ATTLIST Namespace name CDATA #REQUIRED>
-
-<!ATTLIST NamespaceAlias context IDREF #IMPLIED>
-<!ATTLIST NamespaceAlias id ID #REQUIRED>
-<!ATTLIST NamespaceAlias mangled CDATA #IMPLIED>
-<!ATTLIST NamespaceAlias name CDATA #REQUIRED>
-<!ATTLIST NamespaceAlias namespace CDATA #REQUIRED>
-
-<!ATTLIST OffsetType align CDATA #IMPLIED>
-<!ATTLIST OffsetType attributes CDATA #IMPLIED>
-<!ATTLIST OffsetType id ID #REQUIRED>
-<!ATTLIST OffsetType basetype IDREF #REQUIRED>
-<!ATTLIST OffsetType size CDATA #IMPLIED>
-<!ATTLIST OffsetType type CDATA #REQUIRED>
-
-<!ATTLIST OperatorFunction attributes CDATA #IMPLIED>
-<!ATTLIST OperatorFunction context IDREF #REQUIRED>
-<!ATTLIST OperatorFunction endline CDATA #IMPLIED>
-<!ATTLIST OperatorFunction extern (0 | 1) "0">
-<!ATTLIST OperatorFunction file CDATA #REQUIRED>
-<!ATTLIST OperatorFunction id ID #REQUIRED>
-<!ATTLIST OperatorFunction line CDATA #REQUIRED>
-<!ATTLIST OperatorFunction location CDATA #REQUIRED>
-<!ATTLIST OperatorFunction mangled CDATA #REQUIRED>
-<!ATTLIST OperatorFunction name CDATA #REQUIRED>
-<!ATTLIST OperatorFunction returns IDREF #REQUIRED>
-<!ATTLIST OperatorFunction throw CDATA #IMPLIED>
-
-<!ATTLIST OperatorMethod access (public | private | protected) "public">
-<!ATTLIST OperatorMethod attributes CDATA #IMPLIED>
-<!ATTLIST OperatorMethod const (0 | 1) "0">
-<!ATTLIST OperatorMethod context IDREF #REQUIRED>
-<!ATTLIST OperatorMethod endline CDATA #IMPLIED>
-<!ATTLIST OperatorMethod extern (0 | 1) "0">
-<!ATTLIST OperatorMethod file CDATA #REQUIRED>
-<!ATTLIST OperatorMethod id ID #REQUIRED>
-<!ATTLIST OperatorMethod line CDATA #REQUIRED>
-<!ATTLIST OperatorMethod location CDATA #REQUIRED>
-<!ATTLIST OperatorMethod mangled CDATA #REQUIRED>
-<!ATTLIST OperatorMethod name CDATA #REQUIRED>
-<!ATTLIST OperatorMethod pure_virtual (0 | 1) "0">
-<!ATTLIST OperatorMethod returns IDREF #REQUIRED>
-<!ATTLIST OperatorMethod static (0 | 1) "0">
-<!ATTLIST OperatorMethod throw CDATA #IMPLIED>
-<!ATTLIST OperatorMethod virtual (0 | 1) "0">
-
-<!ATTLIST PointerType align CDATA #IMPLIED>
-<!ATTLIST PointerType attributes CDATA #IMPLIED>
-<!ATTLIST PointerType id ID #REQUIRED>
-<!ATTLIST PointerType size CDATA #IMPLIED>
-<!ATTLIST PointerType type CDATA #REQUIRED>
-
-<!ATTLIST ReferenceType align CDATA #IMPLIED>
-<!ATTLIST ReferenceType attributes CDATA #IMPLIED>
-<!ATTLIST ReferenceType id ID #REQUIRED>
-<!ATTLIST ReferenceType size CDATA #IMPLIED>
-<!ATTLIST ReferenceType type CDATA #REQUIRED>
-
-<!ATTLIST Struct abstract (0 | 1) "0">
-<!ATTLIST Struct access (public | private | protected) "public">
-<!ATTLIST Struct align CDATA #IMPLIED>
-<!ATTLIST Struct artificial (0 | 1) "0">
-<!ATTLIST Struct attributes CDATA #IMPLIED>
-<!ATTLIST Struct bases CDATA #IMPLIED>
-<!ATTLIST Struct context IDREF #REQUIRED>
-<!ATTLIST Struct file CDATA #REQUIRED>
-<!ATTLIST Struct id ID #REQUIRED>
-<!ATTLIST Struct incomplete (0 | 1) "0">
-<!ATTLIST Struct line CDATA #REQUIRED>
-<!ATTLIST Struct location CDATA #REQUIRED>
-<!ATTLIST Struct mangled CDATA #REQUIRED>
-<!ATTLIST Struct members CDATA #IMPLIED>
-<!ATTLIST Struct name CDATA #IMPLIED>
-<!ATTLIST Struct size CDATA #IMPLIED>
-
-<!ATTLIST Typedef attributes CDATA #IMPLIED>
-<!ATTLIST Typedef context IDREF #REQUIRED>
-<!ATTLIST Typedef file CDATA #REQUIRED>
-<!ATTLIST Typedef id ID #REQUIRED>
-<!ATTLIST Typedef line CDATA #REQUIRED>
-<!ATTLIST Typedef location CDATA #REQUIRED>
-<!ATTLIST Typedef name CDATA #REQUIRED>
-<!ATTLIST Typedef type CDATA #REQUIRED>
-
-<!ATTLIST Unimplemented function CDATA #IMPLIED>
-<!ATTLIST Unimplemented id ID #REQUIRED>
-<!ATTLIST Unimplemented node CDATA #REQUIRED>
-<!ATTLIST Unimplemented tree_code (187 | 190 | 193) #REQUIRED>
-<!ATTLIST Unimplemented tree_code_name (template_type_parm |
- typename_type | using_decl) #REQUIRED>
-
-<!ATTLIST Union abstract (0 | 1) "0">
-<!ATTLIST Union access (public | private | protected) "public">
-<!ATTLIST Union align CDATA #IMPLIED>
-<!ATTLIST Union artificial (0 | 1) "0">
-<!ATTLIST Union attributes CDATA #IMPLIED>
-<!ATTLIST Union bases CDATA #IMPLIED>
-<!ATTLIST Union context IDREF #REQUIRED>
-<!ATTLIST Union file CDATA #REQUIRED>
-<!ATTLIST Union id ID #REQUIRED>
-<!ATTLIST Union incomplete (0 | 1) "0">
-<!ATTLIST Union line CDATA #REQUIRED>
-<!ATTLIST Union location CDATA #REQUIRED>
-<!ATTLIST Union mangled CDATA #REQUIRED>
-<!ATTLIST Union members CDATA #IMPLIED>
-<!ATTLIST Union name CDATA #IMPLIED>
-<!ATTLIST Union size CDATA #IMPLIED>
-
-<!ATTLIST Variable access (public | private | protected) "public">
-<!ATTLIST Variable artificial CDATA #IMPLIED>
-<!ATTLIST Variable attributes CDATA #IMPLIED>
-<!ATTLIST Variable context IDREF #REQUIRED>
-<!ATTLIST Variable extern (0 | 1) "0">
-<!ATTLIST Variable file CDATA #REQUIRED>
-<!ATTLIST Variable id ID #REQUIRED>
-<!ATTLIST Variable init CDATA #IMPLIED>
-<!ATTLIST Variable line CDATA #REQUIRED>
-<!ATTLIST Variable location CDATA #REQUIRED>
-<!ATTLIST Variable mangled CDATA #IMPLIED>
-<!ATTLIST Variable name CDATA #REQUIRED>
-<!ATTLIST Variable type CDATA #REQUIRED>
-
-<!ATTLIST GCC_XML cvs_revision CDATA #IMPLIED>
-
-<!ELEMENT Argument EMPTY>
-<!ELEMENT Ellipsis EMPTY>
-<!ELEMENT ArrayType EMPTY>
-<!ELEMENT Base EMPTY>
-<!ELEMENT Class (Base)*>
-<!ELEMENT Constructor (Argument | Ellipsis)*>
-<!ELEMENT Converter EMPTY>
-<!ELEMENT CvQualifiedType EMPTY>
-<!ELEMENT Destructor (Argument)*> <!-- FIXME -->
-<!ELEMENT EnumValue EMPTY>
-<!ELEMENT Enumeration (EnumValue)+>
-<!ELEMENT Field EMPTY>
-<!ELEMENT File EMPTY>
-<!ELEMENT Function (Argument | Ellipsis)*>
-<!ELEMENT FunctionType (Argument | Ellipsis)*>
-<!ELEMENT FundamentalType EMPTY>
-<!ELEMENT Method (Argument | Ellipsis)*>
-<!ELEMENT MethodType (Argument | Ellipsis)*>
-<!ELEMENT Namespace EMPTY>
-<!ELEMENT NamespaceAlias EMPTY>
-<!ELEMENT OffsetType EMPTY>
-<!ELEMENT OperatorFunction (Argument | Ellipsis)*>
-<!ELEMENT OperatorMethod (Argument | Ellipsis)*>
-<!ELEMENT PointerType EMPTY>
-<!ELEMENT ReferenceType EMPTY>
-<!ELEMENT Struct (Base)*>
-<!ELEMENT Typedef EMPTY>
-<!ELEMENT Unimplemented EMPTY>
-<!ELEMENT Union (Base)*>
-<!ELEMENT Variable EMPTY>
-<!ELEMENT GCC_XML (ArrayType | Class | Constructor | Converter | CvQualifiedType |
- Destructor | Enumeration | Field | File | Function | FunctionType |
- FundamentalType | Method | MethodType | Namespace | NamespaceAlias | OperatorFunction
- | OperatorMethod | OffsetType | PointerType | ReferenceType | Struct | Typedef |
- Unimplemented | Union | Variable)+>
-
+++ /dev/null
-<?xml version="1.0"?>
-
-<!-- This file was taken from http://www.gccxml.org
- where it was contributed by Ivan Kissiov.
-
- This is useful to 'see' the structure of the gccXML output.
- Usage:
-
- xsltproc gccxml.xsl file_created_by_gccxml.xml
--->
-
-<xsl:stylesheet
- xmlns:xsl = "http://www.w3.org/1999/XSL/Transform"
- version = "1.0">
- <xsl:output method="html"/>
-
- <xsl:template match = "GCC_XML">
-
- <!-- =============================================== -->
- <html>
- <table border="0">
- <tr><td>A</td><td ><a href="#TA">Array Types</a></td></tr>
- <tr><td>B</td><td ><a href="#TB">Builtins</a></td></tr>
- <tr><td>Co</td><td ><a href="#TC">Constructors</a></td></tr>
- <tr><td>Cvt</td><td ><a href="#TCT">Converter</a></td></tr>
- <tr><td>Q</td><td ><a href="#TQ">Cvq Types</a></td></tr>
- <tr><td>Z</td><td ><a href="#TZ">Classes</a></td></tr>
- <tr><td>D</td><td ><a href="#TD">Destructors</a></td></tr>
- <tr><td>E</td><td ><a href="#TE">Enumerations</a></td></tr>
- <tr><td>Fd</td><td ><a href="#TFd">Fields</a></td></tr>
- <tr><td>Fu</td><td ><a href="#TF">Functions</a></td></tr>
- <tr><td>FT</td><td ><a href="#TFT">Function Types</a></td></tr>
- <tr><td>M</td><td ><a href="#TM">Methods</a></td></tr>
- <tr><td>MT</td><td ><a href="#TMT">Method Typess</a></td></tr>
- <tr><td>N</td><td ><a href="#TN">Namespaces</a></td></tr>
- <tr><td>OpM</td><td ><a href="#TOM">Operator Methods</a></td></tr>
- <tr><td>OpF</td><td ><a href="#TOF">Operator Functions</a></td></tr>
- <tr><td>O</td><td ><a href="#TO">Offset Types</a></td></tr>
- <tr><td>P</td><td ><a href="#TP">Pointer Types</a></td></tr>
- <tr><td>R</td><td ><a href="#TR">Reference Types</a></td></tr>
- <tr><td>S</td><td ><a href="#TS">Structures</a></td></tr>
- <tr><td>TT</td><td ><a href="#TT">Typedefs</a></td></tr>
- <tr><td>U</td><td ><a href="#TU">Unions</a></td></tr>
- <tr><td>V</td><td ><a href="#TV">Variables</a></td></tr>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TB"></a>
- <thead>
- <tr align="center" colspan="5">Builtin Types</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- </tr>
- </thead>
- <xsl:apply-templates select="FundamentalType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TN"></a>
- <thead>
- <tr align="center" colspan="5">Namespaces</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">members</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Namespace">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TZ"></a>
- <thead>
- <tr align="center" colspan="5">Classes</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">bases</td>
- <td align="center">members</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Class">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TS"></a>
- <thead>
- <tr align="center" colspan="5">Structures</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">bases</td>
- <td align="center">members</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Struct">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TU"></a>
- <thead>
- <tr align="center" colspan="5">Unions</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">bases</td>
- <td align="center">members</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Union">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TFd"></a>
- <thead>
- <tr align="center" colspan="5">Fields</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">type</td>
- <td align="center">bits</td>
- <td align="center">access</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Field">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TT"></a>
- <thead>
- <tr align="center" colspan="5">Typedefs</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">type</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Typedef">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TA"></a>
- <thead>
- <tr align="center" colspan="2">Arrays</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">type</td>
- <td align="center">min</td>
- <td align="center">max</td>
- </tr>
- </thead>
- <xsl:apply-templates select="ArrayType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TP"></a>
- <thead>
- <tr align="center" colspan="2">Pointers</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">type</td>
- </tr>
- </thead>
- <xsl:apply-templates select="PointerType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TO"></a>
- <thead>
- <tr align="center" colspan="2">Offset Types</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">basetype</td>
- <td align="center">type</td>
- </tr>
- </thead>
- <xsl:apply-templates select="OffsetType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TR"></a>
- <thead>
- <tr align="center" colspan="2">References</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">type</td>
- </tr>
- </thead>
- <xsl:apply-templates select="ReferenceType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TQ"></a>
- <thead>
- <tr align="center" colspan="2">CVQ Types</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">type</td>
- </tr>
- </thead>
- <xsl:apply-templates select="CvQualifiedType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TV"></a>
- <thead>
- <tr align="center" colspan="5">Variables</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">type</td>
- <td align="center">access</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Variable">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TM"></a>
- <thead>
- <tr align="center" colspan="5">Methods</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">returns</td>
- <td align="center">throws</td>
- <td align="center">arguments</td>
- <td align="center">access</td>
- <td align="center">static</td>
- <td align="center">const</td> <!--MINE-->
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Method">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TOM"></a>
- <thead>
- <tr align="center" colspan="5">Operator Methods</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">returns</td>
- <td align="center">throws</td>
- <td align="center">arguments</td>
- <td align="center">access</td>
- <td align="center">static</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="OperatorMethod">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TMT"></a>
- <thead>
- <tr align="center" colspan="5">Method Types</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">basetype</td>
- <td align="center">returns</td>
- <td align="center">arguments</td>
- <td align="center">const</td>
- </tr>
- </thead>
- <xsl:apply-templates select="MethodType">
- <xsl:sort select="@id"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TCT"></a>
- <thead>
- <tr align="center" colspan="5">Converters</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">returns</td>
- <td align="center">throws</td>
- <td align="center">access</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Converter">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TF"></a>
- <thead>
- <tr align="center" colspan="5">Functions</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">returns</td>
- <td align="center">throws</td>
- <td align="center">arguments</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Function">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TOF"></a>
- <thead>
- <tr align="center" colspan="5">Operator Functions</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">returns</td>
- <td align="center">throws</td>
- <td align="center">arguments</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="OperatorFunction">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TFT"></a>
- <thead>
- <tr align="center" colspan="5">Function Types</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">returns</td>
- <td align="center">arguments</td>
- </tr>
- </thead>
- <xsl:apply-templates select="FunctionType">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TC"></a>
- <thead>
- <tr align="center" colspan="5">Constructors</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">throws</td>
- <td align="center">arguments</td>
- <td align="center">access</td>
- <td align="center">artificial</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Constructor">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TD"></a>
- <thead>
- <tr align="center" colspan="5">Destructors</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">throws</td>
- <td align="center">access</td>
- <td align="center">virtual</td>
- <td align="center">artificial</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Destructor">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <a name="TE"></a>
- <thead>
- <tr align="center" colspan="5">Enumerations</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- <td align="center">context</td>
- <td align="center">artificial</td>
- <td align="center">file</td>
- <td align="center">line</td>
- </tr>
- </thead>
- <xsl:apply-templates select="Enumeration">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
-
- <!-- =============================================== -->
- <table border="1">
- <thead>
- <tr align="center" colspan="5">File</tr>
- <tr>
- <td align="center">T</td>
- <td align="center">id</td>
- <td align="center">name</td>
- </tr>
- </thead>
- <xsl:apply-templates select="File">
- <xsl:sort select="@name"/>
- </xsl:apply-templates>
- </table><hr/>
- </html>
- </xsl:template>
-
- <!-- ====================================================================== -->
- <xsl:template match = "Class">
- <tr>
- <td>Z</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@bases" />
- </xsl:call-template>
- </td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@members" />
- </xsl:call-template>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Struct">
- <tr>
- <td>S</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@bases" />
- </xsl:call-template>
- </td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@members" />
- </xsl:call-template>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Union">
- <tr>
- <td>U</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@bases" />
- </xsl:call-template>
- </td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@members" />
- </xsl:call-template>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Namespace">
- <tr>
- <td>N</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@members" />
- </xsl:call-template>
- </td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Field">
- <tr>
- <td>Fd</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- <td><xsl:value-of select="@access"/></td>
- <td><xsl:value-of select="@bits"/></td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Typedef">
- <tr>
- <td>T</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "ArrayType">
- <tr>
- <td>A</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- <td><a name="{@min}"><xsl:value-of select="@min"/></a></td>
- <td><a name="{@max}"><xsl:value-of select="@max"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "PointerType">
- <tr>
- <td>P</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "OffsetType">
- <tr>
- <td>O</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@basetype}"><xsl:value-of select="@basetype"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "ReferenceType">
- <tr>
- <td>R</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "CvQualifiedType">
- <tr>
- <td>Q</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "FundamentalType">
- <tr>
- <td>B</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Variable">
- <tr>
- <td>V</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@type}"><xsl:value-of select="@type"/></a></td>
- <td><xsl:value-of select="@access"/></td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Method">
- <tr>
- <td>M</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:value-of select="@demangled"/></td>
- <td><xsl:value-of select="@access"/></td>
- <td>
- <xsl:choose>
- <xsl:when test="@static='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td>
- <xsl:choose>
- <xsl:when test="@const='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "MethodType">
- <tr>
- <td>MT</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@basetype}"><xsl:value-of select="@basetype"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td><xsl:apply-templates select="Argument"/></td>
- <td>
- <xsl:choose>
- <xsl:when test="@const='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "OperatorMethod">
- <tr>
- <td>OpM</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@basetype}"><xsl:value-of select="@basetype"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:apply-templates select="Argument"/></td>
- <td><xsl:value-of select="@access"/></td>
- <td>
- <xsl:choose>
- <xsl:when test="@static='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Converter">
- <tr>
- <td>Cnv</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:value-of select="@access"/></td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Function">
- <tr>
- <td>F</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:apply-templates select="Argument"/></td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "OperatorFunction">
- <tr>
- <td>OpF</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:apply-templates select="Argument"/></td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "FunctionType">
- <tr>
- <td>FT</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="#{@returns}"><xsl:value-of select="@returns"/></a></td>
- <td><xsl:apply-templates select="Argument"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Destructor">
- <tr>
- <td>D</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:value-of select="@access"/></td>
- <td>
- <xsl:choose>
- <xsl:when test="@virtual='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td>
- <xsl:choose>
- <xsl:when test="@artificial='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Constructor">
- <tr>
- <td>Co</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:call-template name="tokenize">
- <xsl:with-param name="string" select="@throw" />
- </xsl:call-template>
- </td>
- <td><xsl:apply-templates select="Argument"/></td>
- <td><xsl:value-of select="@access"/></td>
- <td>
- <xsl:choose>
- <xsl:when test="@artificial='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Enumeration">
- <tr>
- <td>En</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><xsl:value-of select="@name"/></td>
- <td><a href="#{@context}"><xsl:value-of select="@context"/></a></td>
- <td>
- <xsl:choose>
- <xsl:when test="@artificial='1'">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </td>
- <td><a href="#{@file}"><xsl:value-of select="@file"/></a></td>
- <td><xsl:value-of select="@line"/></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "File">
- <tr>
- <td>Fd</td>
- <td><a name="{@id}"><xsl:value-of select="@id"/></a></td>
- <td><a href="{@name}"><xsl:value-of select="@name"/></a></td>
- </tr>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template match = "Argument">
- <a href="#{@type}"><xsl:value-of select="@type"/></a>
- </xsl:template>
-
- <!--- ========== Tokenizer ================== -->
- <xsl:template name="tokenize">
- <xsl:param name="string" select="''" />
- <xsl:param name="delimiters" select="' 	 '" />
- <xsl:choose>
- <xsl:when test="not($string)" />
- <xsl:when test="not($delimiters)">
- <xsl:call-template name="_tokenize-characters">
- <xsl:with-param name="string" select="$string" />
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="_tokenize-delimiters">
- <xsl:with-param name="string" select="$string" />
- <xsl:with-param name="delimiters" select="$delimiters" />
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template name="_tokenize-characters">
- <xsl:param name="string" />
- <xsl:if test="$string">
- <a href="#{$string}">
- <xsl:value-of select="substring($string, 1, 1)" />
- </a>
- <xsl:call-template name="_tokenize-characters">
- <xsl:with-param name="string" select="substring($string, 2)" />
- </xsl:call-template>
- </xsl:if>
- </xsl:template>
-
- <!-- =============================================== -->
- <xsl:template name="_tokenize-delimiters">
- <xsl:param name="string" />
- <xsl:param name="delimiters" />
- <xsl:variable name="delimiter" select="substring($delimiters, 1, 1)" />
- <xsl:choose>
- <xsl:when test="not($delimiter)">
- <a href="#{$string}">
- <xsl:value-of select="$string" />
- </a>
- </xsl:when>
- <xsl:when test="contains($string, $delimiter)">
- <xsl:if test="not(starts-with($string, $delimiter))">
- <xsl:call-template name="_tokenize-delimiters">
- <xsl:with-param name="string" select="substring-before($string, $delimiter)" />
- <xsl:with-param name="delimiters" select="substring($delimiters, 2)" />
- </xsl:call-template>
- </xsl:if>
- <xsl:call-template name="_tokenize-delimiters">
- <xsl:with-param name="string" select="substring-after($string, $delimiter)" />
- <xsl:with-param name="delimiters" select="$delimiters" />
- </xsl:call-template>
- </xsl:when>
-
- <xsl:when test="starts-with($string, 'private:')">
- <xsl:call-template name="_tokenize-delimiters">
- <xsl:with-param name="string" select="substring($string, 9)" />
- </xsl:call-template>
- </xsl:when>
-
- <xsl:when test="starts-with($string, 'protected:')">
- <xsl:call-template name="_tokenize-delimiters">
- <xsl:with-param name="string" select="substring($string, 11)" />
- </xsl:call-template>
- </xsl:when>
-
- <xsl:otherwise>
- <xsl:call-template name="_tokenize-delimiters">
- <xsl:with-param name="string" select="$string" />
- <xsl:with-param name="delimiters" select="substring($delimiters, 2)" />
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
-</xsl:stylesheet>