|
Boost-Commit : |
From: chochlik_at_[hidden]
Date: 2008-07-24 06:08:03
Author: matus.chochlik
Date: 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
New Revision: 47748
URL: http://svn.boost.org/trac/boost/changeset/47748
Log:
[mirror 0.2.x]
- Minor updates in the char_type_switch facility
- Documentation update
Added:
sandbox/mirror/boost/char_type_switch/char.hpp (contents, props changed)
sandbox/mirror/boost/char_type_switch/cstring.hpp (contents, props changed)
sandbox/mirror/doc/html/BOOST_CTS_LIT_LENGTH.html (contents, props changed)
sandbox/mirror/doc/html/boost/cts/bchar_traits.html (contents, props changed)
sandbox/mirror/doc/html/boost/cts/biostream.html (contents, props changed)
sandbox/mirror/doc/html/boost/cts/bistream.html (contents, props changed)
sandbox/mirror/doc/html/boost/cts/bostream.html (contents, props changed)
sandbox/mirror/doc/html/boost/cts/bstring.html (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/char.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/cstring.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/function_bcin.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/function_bcout.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrcmp.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrcpy.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrlen.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrncpy.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/macro_LIT_LENGTH.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bchar_traits.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/typedef_biostream.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bistream.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bostream.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bstring.xml (contents, props changed)
sandbox/mirror/libs/char_type_switch/doc/samples/
sandbox/mirror/libs/char_type_switch/doc/samples/iostream_samples.xml (contents, props changed)
Text files modified:
sandbox/mirror/boost/char_type_switch/iostream.hpp | 15 +-
sandbox/mirror/boost/char_type_switch/string.hpp | 106 ------------------
sandbox/mirror/doc/html/BOOST_CTS_LIT.html | 16 +-
sandbox/mirror/doc/html/BOOST_CTS_STRINGIZE.html | 17 +-
sandbox/mirror/doc/html/BOOST_CTS_USE_WIDE_CHARS.html | 10
sandbox/mirror/doc/html/BOOST_MIRRORED_GLOBAL_SCOPE.html | 4
sandbox/mirror/doc/html/BOOST_MIRRORED_NAMESPACE.html | 12 +-
sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE.html | 8
sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEDEF.html | 12 +-
sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEOF.html | 4
sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE_NS.html | 4
sandbox/mirror/doc/html/BOOST_MIRROR_REG_NAMESPACE.html | 20 +-
sandbox/mirror/doc/html/boost/cts/bchar.html | 12 +-
sandbox/mirror/doc/html/boost/mirror/meta_attribute.html | 42 +++---
sandbox/mirror/doc/html/boost/mirror/meta_class.html | 14 +-
sandbox/mirror/doc/html/boost/mirror/meta_namespace.html | 86 +++++++-------
sandbox/mirror/doc/html/boost/mirror/meta_type.html | 78 +++++++-------
sandbox/mirror/doc/html/boost/mirror/reflects_class.html | 6
sandbox/mirror/doc/html/boost/mirror/reflects_global_scope.html | 8
sandbox/mirror/doc/html/boost/mirror/reflects_inheritance.html | 2
sandbox/mirror/doc/html/boost/mirror/reflects_namespace.html | 8
sandbox/mirror/doc/html/boost/mirror/reflects_type.html | 8
sandbox/mirror/doc/html/boost/mirror/reflects_virtual_inheritance.html | 2
sandbox/mirror/doc/html/char_type_switch.html | 6
sandbox/mirror/doc/html/char_type_switch/reference.html | 217 ++++++++++++++++++++++++++++++++++++++-
sandbox/mirror/doc/html/doc_HTML.manifest | 6 +
sandbox/mirror/doc/html/index.html | 2
sandbox/mirror/doc/html/mirror.html | 14 +-
sandbox/mirror/doc/html/mirror/reference.html | 12 +-
sandbox/mirror/libs/char_type_switch/doc/reference.xml | 3
sandbox/mirror/libs/char_type_switch/doc/reference/iostream.xml | 9 +
sandbox/mirror/libs/char_type_switch/doc/reference/string.xml | 9
32 files changed, 449 insertions(+), 323 deletions(-)
Added: sandbox/mirror/boost/char_type_switch/char.hpp
==============================================================================
--- (empty file)
+++ sandbox/mirror/boost/char_type_switch/char.hpp 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,57 @@
+/**
+ * \file boost/char_type_switch/char.hpp
+ * Narrow/Wide character type switching.
+ *
+ * Copyright 2008 Matus Chochlik. Distributed under the Boost
+ * Software License, Version 1.0. (See accompanying file
+ * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ */
+
+#ifndef BOOST_CHAR_TYPE_SWITCH_CHAR_HPP
+#define BOOST_CHAR_TYPE_SWITCH_CHAR_HPP
+
+
+#include <boost/char_type_switch/choice.hpp>
+#include <boost/config.hpp>
+
+namespace boost {
+namespace cts {
+
+
+#ifdef BOOST_CTS_USE_WIDE_CHARS
+
+#include <boost/preprocessor/wstringize.hpp>
+
+ // If wide characters were picked
+ //
+ // define character type
+ typedef wchar_t bchar;
+ // define macro for string literal type selection
+# define BOOST_CTS_LIT(STR) L##STR
+ // stringization
+# define BOOST_CTS_STRINGIZE(TO_TEXT) BOOST_PP_WSTRINGIZE(TO_TEXT)
+#else // NOT BOOST_CTS_USE_WIDE_CHARS
+
+#include <boost/preprocessor/stringize.hpp>
+
+ // if narrow characters were chosen
+ //
+ // define character type
+ typedef char bchar;
+ // define macro for string literal type selection
+# define BOOST_CTS_LIT(STR) STR
+ // stringization
+# define BOOST_CTS_STRINGIZE(TO_TEXT) BOOST_PP_STRINGIZE(TO_TEXT)
+#endif // NOT BOOST_CTS_USE_WIDE_CHARS
+
+// define macro expanding into a compile time const length
+// of the given string literal
+#define BOOST_CTS_LIT_LENGTH(STR) ((sizeof(BOOST_CTS_LIT(STR))/sizeof(::boost::cts::bchar))-1)
+
+
+} // namespace cts
+} // namespace boost
+
+#endif //include guard
+
+
Added: sandbox/mirror/boost/char_type_switch/cstring.hpp
==============================================================================
--- (empty file)
+++ sandbox/mirror/boost/char_type_switch/cstring.hpp 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,89 @@
+/**
+ * \file boost/char_type_switch/string.hpp
+ * Narrow/Wide character type switching - cstring functions
+ *
+ * Copyright 2008 Matus Chochlik. Distributed under the Boost
+ * Software License, Version 1.0. (See accompanying file
+ * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ */
+
+#ifndef BOOST_CHAR_TYPE_SWITCH_CSTRING_HPP
+#define BOOST_CHAR_TYPE_SWITCH_CSTRING_HPP
+
+
+#include <boost/char_type_switch/char.hpp>
+//
+// c string functions
+#include <cstring>
+
+namespace boost {
+namespace cts {
+
+/** Wrappers around cstring functions
+ */
+
+// disable the deprecated function warning on msvc
+// this warning is issued when not using the "safe"
+// versions of string functions like strcpy_s (vs. strcpy)
+#ifdef BOOST_MSVC
+#pragma warning(push)
+#pragma warning(disable : 4996)
+#endif
+
+
+/** string compare
+ */
+
+inline size_t bstrlen(const bchar* str)
+{
+#ifdef BOOST_CTS_USE_WIDE_CHARS
+ return ::std::wcslen(str);
+#else
+ return ::std::strlen(str);
+#endif
+}
+
+
+
+inline int bstrcmp(const bchar* a, const bchar* b)
+{
+#ifdef BOOST_CTS_USE_WIDE_CHARS
+ return ::std::wcscmp(a, b);
+#else
+ return ::std::strcmp(a, b);
+#endif
+}
+
+/** string copy
+ */
+inline bchar* bstrcpy(bchar* dst, const bchar* src)
+{
+#ifdef BOOST_CTS_USE_WIDE_CHARS
+ return ::std::wcscpy(dst, src);
+#else
+ return ::std::strcpy(dst, src);
+#endif
+}
+
+/** string copy
+ */
+inline bchar* bstrncpy(bchar* dst, const bchar* src, size_t count)
+{
+#ifdef BOOST_CTS_USE_WIDE_CHARS
+ return ::std::wcsncpy(dst, src, count);
+#else
+ return ::std::strncpy(dst, src, count);
+#endif
+}
+
+// enable the deprecated function warnings on msvc
+#ifdef BOOST_MSVC
+#pragma warning(pop)
+#endif
+
+} // namespace cts
+} // namespace boost
+
+#endif //include guard
+
+
Modified: sandbox/mirror/boost/char_type_switch/iostream.hpp
==============================================================================
--- sandbox/mirror/boost/char_type_switch/iostream.hpp (original)
+++ sandbox/mirror/boost/char_type_switch/iostream.hpp 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -10,17 +10,19 @@
#ifndef BOOST_CHAR_TYPE_SWITCH_IOSTREAM
#define BOOST_CHAR_TYPE_SWITCH_IOSTREAM
-#include <boost/char_type_switch/choice.hpp>
+#include <boost/char_type_switch/string.hpp>
// Needed for ::std cout, cin, cerr, wcin, wcout, wcerr
#include <iostream>
namespace boost {
namespace cts {
+typedef ::std::basic_istream<bchar, bchar_traits > bistream;
+typedef ::std::basic_ostream<bchar, bchar_traits> bostream;
+typedef ::std::basic_iostream<bchar, bchar_traits> biostream;
+
+
#ifdef BOOST_CTS_USE_WIDE_CHARS
- // If wide characters were picked
- typedef ::std::wistream bistream;
- typedef ::std::wostream bostream;
//
// define input stream
inline ::std::wistream& bcin(void){return ::std::wcin;}
@@ -30,10 +32,7 @@
inline ::std::wostream& bcerr(void){return ::std::wcerr;}
#else // NOT BOOST_CTS_USE_WIDE_CHARS
// if narrow characters were picked
- //
- typedef ::std::istream bistream;
- typedef ::std::ostream bostream;
- //
+//
// define input stream
inline ::std::istream& bcin(void){return ::std::cin;}
// define output stream
Modified: sandbox/mirror/boost/char_type_switch/string.hpp
==============================================================================
--- sandbox/mirror/boost/char_type_switch/string.hpp (original)
+++ sandbox/mirror/boost/char_type_switch/string.hpp 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -11,115 +11,19 @@
#define BOOST_CHAR_TYPE_SWITCH_STRING
-#include <boost/char_type_switch/choice.hpp>
-#include <boost/config.hpp>
-// Needed for ::std::string / ::std::wstring
-#include <string>
+#include <boost/char_type_switch/char.hpp>
//
-// c string functions
-#include <cstring>
+// Needed for ::std::char_traits / ::std::basic_string
+#include <string>
namespace boost {
namespace cts {
-
-#ifdef BOOST_CTS_USE_WIDE_CHARS
-
-#include <boost/preprocessor/wstringize.hpp>
-
- // If wide characters were picked
- //
- // define character type
- typedef wchar_t bchar;
- // define macro for string literal type selection
-# define BOOST_CTS_LIT(STR) L##STR
- // stringization
-# define BOOST_CTS_STRINGIZE(TO_TEXT) BOOST_PP_WSTRINGIZE(TO_TEXT)
-#else // NOT BOOST_CTS_USE_WIDE_CHARS
-
-#include <boost/preprocessor/stringize.hpp>
-
- // if narrow characters were chosen
- //
- // define character type
- typedef char bchar;
- // define macro for string literal type selection
-# define BOOST_CTS_LIT(STR) STR
- // stringization
-# define BOOST_CTS_STRINGIZE(TO_TEXT) BOOST_PP_STRINGIZE(TO_TEXT)
-#endif // NOT BOOST_CTS_USE_WIDE_CHARS
-
-// define string class type
-typedef ::std::basic_string<bchar> bstring;
// define char traits
typedef ::std::char_traits<bchar> bchar_traits;
+// define string class type
+typedef ::std::basic_string<bchar> bstring;
-// define macro expanding into a compile time const length
-// of the given string literal
-#define BOOST_CTS_LIT_LENGTH(STR) ((sizeof(STR)/sizeof(::boost::bchar))-1)
-
-
-/** Wrappers of cstring functions
- */
-
-// disable the deprecated function warning on msvc
-// this warning is issued when not using the "safe"
-// versions of string functions like strcpy_s (vs. strcpy)
-#ifdef BOOST_MSVC
-#pragma warning(push)
-#pragma warning(disable : 4996)
-#endif
-
-
-/** string compare
- */
-
-inline size_t bstrlen(const bchar* str)
-{
-#ifdef BOOST_CTS_USE_WIDE_CHARS
- return ::std::wcslen(str);
-#else
- return ::std::strlen(str);
-#endif
-}
-
-
-
-inline int bstrcmp(const bchar* a, const bchar* b)
-{
-#ifdef BOOST_CTS_USE_WIDE_CHARS
- return ::std::wcscmp(a, b);
-#else
- return ::std::strcmp(a, b);
-#endif
-}
-
-/** string copy
- */
-inline bchar* bstrcpy(bchar* dst, const bchar* src)
-{
-#ifdef BOOST_CTS_USE_WIDE_CHARS
- return ::std::wcscpy(dst, src);
-#else
- return ::std::strcpy(dst, src);
-#endif
-}
-
-/** string copy
- */
-inline bchar* bstrncpy(bchar* dst, const bchar* src, size_t count)
-{
-#ifdef BOOST_CTS_USE_WIDE_CHARS
- return ::std::wcsncpy(dst, src, count);
-#else
- return ::std::strncpy(dst, src, count);
-#endif
-}
-
-// enable the deprecated function warnings on msvc
-#ifdef BOOST_MSVC
-#pragma warning(pop)
-#endif
} // namespace cts
} // namespace boost
Modified: sandbox/mirror/doc/html/BOOST_CTS_LIT.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_CTS_LIT.html (original)
+++ sandbox/mirror/doc/html/BOOST_CTS_LIT.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -5,9 +5,9 @@
<link rel="stylesheet" href="boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="index.html" title="The Mirror library documentation">
-<link rel="up" href="char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp" title="Header <boost/char_type_switch/switch.hpp>">
+<link rel="up" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp" title="Header <boost/char_type_switch/char.hpp>">
<link rel="prev" href="boost/cts/bchar.html" title="Type definition bchar">
-<link rel="next" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">
+<link rel="next" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="boost/cts/bchar.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="BOOST_CTS_STRINGIZE.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="boost/cts/bchar.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="BOOST_CTS_LIT_LENGTH.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="refentry" lang="en">
<a name="BOOST_CTS_LIT"></a><div class="titlepage"></div>
@@ -34,7 +34,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_CTS_LIT(STRING_LITERAL)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2640347"></a><h2>Description</h2>
+<a name="id696955"></a><h2>Description</h2>
<p>This macro is defined as follows:
</p>
<pre class="programlisting">
@@ -77,9 +77,9 @@
int main(void)
{
#ifdef <a class="link" href="BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a>
- assert(::boost::cts::bstrcmp(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"), L"foo") == 0);
+ assert(::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"), L"foo") == 0);
#else
- assert(::boost::cts::bstrcmp(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"), "foo") == 0);
+ assert(::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"), "foo") == 0);
#endif
return 0;
}
@@ -90,7 +90,7 @@
int main(void)
{
- assert(::boost::cts::bstrcmp(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"), <a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo)) == 0);
+ assert(::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"), <a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo)) == 0);
return 0;
}
</pre>
@@ -107,7 +107,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="boost/cts/bchar.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="BOOST_CTS_STRINGIZE.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="boost/cts/bchar.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="BOOST_CTS_LIT_LENGTH.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>
Added: sandbox/mirror/doc/html/BOOST_CTS_LIT_LENGTH.html
==============================================================================
--- (empty file)
+++ sandbox/mirror/doc/html/BOOST_CTS_LIT_LENGTH.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,100 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Macro BOOST_CTS_LIT_LENGTH</title>
+<link rel="stylesheet" href="boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<link rel="start" href="index.html" title="The Mirror library documentation">
+<link rel="up" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp" title="Header <boost/char_type_switch/char.hpp>">
+<link rel="prev" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">
+<link rel="next" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="BOOST_CTS_LIT.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="BOOST_CTS_STRINGIZE.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="refentry" lang="en">
+<a name="BOOST_CTS_LIT_LENGTH"></a><div class="titlepage"></div>
+<div class="refnamediv">
+<h2><span class="refentrytitle">Macro BOOST_CTS_LIT_LENGTH</span></h2>
+<p>BOOST_CTS_LIT_LENGTH — This macro expands into the length of the given string literal without
+ the terminating null character. The "returned" length is a compile-time constant.
+ </p>
+</div>
+<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
+<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_CTS_LIT_LENGTH(STRING_LITERAL)</pre></div>
+<div class="refsect1" lang="en">
+<a name="id697079"></a><h2>Description</h2>
+<p>This macro is defined as follows:
+</p>
+<pre class="programlisting">
+#define <a class="link" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a>(STRING_LITERAL) \
+ ((sizeof(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(STRING_LITERAL))/sizeof(::boost::cts::bchar))-1)
+</pre>
+<p>
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="char_type_switch.LIT_LENGTH.reference.samples"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ assert(<a class="link" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a>("foo") == 3);
+ return 0;
+}
+</pre>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ assert(
+ <a class="link" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a>("foo") ==
+ ::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrlen_id553444">bstrlen</a>(<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"))
+ );
+ return 0;
+}
+</pre>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ bchar foo[<a class="link" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a>("foo")+1];
+ <a class="link" href="char_type_switch/reference.html#boost.cts.bstrcpy_id552013">bstrcpy</a>(foo, <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo"));
+ assert(<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(foo, <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo")) == 0);
+ return 0;
+}
+</pre>
+</div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright © 2008 Matúš Chochlík<p>Use, modification and distribution is subject to the Boost
+ Software License, Version 1.0. (See accompanying file
+ <code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="BOOST_CTS_LIT.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="BOOST_CTS_STRINGIZE.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
Modified: sandbox/mirror/doc/html/BOOST_CTS_STRINGIZE.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_CTS_STRINGIZE.html (original)
+++ sandbox/mirror/doc/html/BOOST_CTS_STRINGIZE.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -5,8 +5,9 @@
<link rel="stylesheet" href="boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="index.html" title="The Mirror library documentation">
-<link rel="up" href="char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp" title="Header <boost/char_type_switch/switch.hpp>">
-<link rel="prev" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">
+<link rel="up" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp" title="Header <boost/char_type_switch/char.hpp>">
+<link rel="prev" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">
+<link rel="next" href="boost/cts/bchar_traits.html" title="Type definition bchar_traits">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -19,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="BOOST_CTS_LIT.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a>
+<a accesskey="p" href="BOOST_CTS_LIT_LENGTH.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost/cts/bchar_traits.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="refentry" lang="en">
<a name="BOOST_CTS_STRINGIZE"></a><div class="titlepage"></div>
@@ -33,7 +34,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_CTS_STRINGIZE(ARG)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2640532"></a><h2>Description</h2>
+<a name="id697200"></a><h2>Description</h2>
<p>This macro is defined as follows:
</p>
<pre class="programlisting">
@@ -76,9 +77,9 @@
int main(void)
{
#ifdef <a class="link" href="BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a>
- assert(::boost::cts::bstrcmp(<a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo), L"foo") == 0);
+ assert(::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo), L"foo") == 0);
#else
- assert(::boost::cts::bstrcmp(<a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo), "foo") == 0);
+ assert(::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo), "foo") == 0);
#endif
return 0;
}
@@ -89,7 +90,7 @@
int main(void)
{
- assert(::boost::cts::bstrcmp(<a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo), <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo")) == 0);
+ assert(::boost::cts::<a class="link" href="char_type_switch/reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<a class="link" href="BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(foo), <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("foo")) == 0);
return 0;
}
</pre>
@@ -106,7 +107,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="BOOST_CTS_LIT.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a>
+<a accesskey="p" href="BOOST_CTS_LIT_LENGTH.html"><img src="../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost/cts/bchar_traits.html"><img src="../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>
Modified: sandbox/mirror/doc/html/BOOST_CTS_USE_WIDE_CHARS.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_CTS_USE_WIDE_CHARS.html (original)
+++ sandbox/mirror/doc/html/BOOST_CTS_USE_WIDE_CHARS.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -26,25 +26,25 @@
<a name="BOOST_CTS_USE_WIDE_CHARS"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Macro BOOST_CTS_USE_WIDE_CHARS</span></h2>
-<p>BOOST_CTS_USE_WIDE_CHARS — This preprocessor symbol is used to switch the definition of <code class="computeroutput"><a class="link" href="boost/cts/bchar.html" title="Type definition bchar">bchar</a></code>
+<p>BOOST_CTS_USE_WIDE_CHARS — This preprocessor symbol is used to switch the definition of <code class="computeroutput">bchar</code>
and everything derived from this type.
</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_CTS_USE_WIDE_CHARS</pre></div>
<div class="refsect1" lang="en">
-<a name="id2640042"></a><h2>Description</h2>
+<a name="id696748"></a><h2>Description</h2>
<p>If the <code class="computeroutput"><a class="link" href="BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol is defined
- then the type <code class="computeroutput"><a class="link" href="boost/cts/bchar.html" title="Type definition bchar">bchar</a></code> is defined as <code class="computeroutput">wchar_t</code>,
+ then the type <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>,
otherwise it's defined as <code class="computeroutput">char</code>:
</p>
<pre class="programlisting">
#include <boost/char_type_switch/string.hpp>
#ifdef <a class="link" href="BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a>
-BOOST_MPL_ASSERT((::boost::is_same< ::boost::cts::<a class="link" href="boost/cts/bchar.html" title="Type definition bchar">bchar</a>, wchar_t >));
+BOOST_MPL_ASSERT((::boost::is_same< ::boost::cts::bchar, wchar_t >));
#else
-BOOST_MPL_ASSERT((::boost::is_same< ::boost::cts::<a class="link" href="boost/cts/bchar.html" title="Type definition bchar">bchar</a>, char >));
+BOOST_MPL_ASSERT((::boost::is_same< ::boost::cts::bchar, char >));
#endif
</pre>
<p>
Modified: sandbox/mirror/doc/html/BOOST_MIRRORED_GLOBAL_SCOPE.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRRORED_GLOBAL_SCOPE.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRRORED_GLOBAL_SCOPE.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Macro BOOST_MIRRORED_GLOBAL_SCOPE</span></h2>
<p>BOOST_MIRRORED_GLOBAL_SCOPE — This macro is used to reflect the global scope and expands into a specialization
- of the <code class="computeroutput"><a class="link" href="boost/mirror/meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code> template, which provides
+ of the <code class="computeroutput">meta_namespace</code> template, which provides
meta-data about the global scope.
To reflect a registered named namespace use the <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>.
</p>
@@ -35,7 +35,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRRORED_GLOBAL_SCOPE()</pre></div>
<div class="refsect1" lang="en">
-<a name="id2634669"></a><h2>Description</h2>
+<a name="id690530"></a><h2>Description</h2>
<p>The <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_GLOBAL_SCOPE.html" title="Macro BOOST_MIRRORED_GLOBAL_SCOPE">BOOST_MIRRORED_GLOBAL_SCOPE</a>()</code> macro can be used to get
the meta-data about the global scope, which is registered with the <a class="link" href="mirror.html" title="Chapter 1. Mirror">Mirror</a> library by default.
</p>
Modified: sandbox/mirror/doc/html/BOOST_MIRRORED_NAMESPACE.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRRORED_NAMESPACE.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRRORED_NAMESPACE.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Macro BOOST_MIRRORED_NAMESPACE</span></h2>
<p>BOOST_MIRRORED_NAMESPACE — This macro is used to reflect a namespace and expands into a specialization
- of the <code class="computeroutput"><a class="link" href="boost/mirror/meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code> template, which provides
+ of the <code class="computeroutput">meta_namespace</code> template, which provides
meta-data about the namespace. To reflect the global scope use the
<code class="computeroutput"><a class="link" href="BOOST_MIRRORED_GLOBAL_SCOPE.html" title="Macro BOOST_MIRRORED_GLOBAL_SCOPE">BOOST_MIRRORED_GLOBAL_SCOPE</a></code> macro.
</p>
@@ -35,7 +35,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRRORED_NAMESPACE(FULL_NAMESPACE_NAME)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2634248"></a><h2>Description</h2>
+<a name="id690321"></a><h2>Description</h2>
<p>The <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code> macro reflects a namespace
previously registered with the <a class="link" href="mirror.html" title="Chapter 1. Mirror">Mirror</a> library by the means of
the <code class="computeroutput"><a class="link" href="BOOST_MIRROR_REG_NAMESPACE.html" title="Macro BOOST_MIRROR_REG_NAMESPACE">BOOST_MIRROR_REG_NAMESPACE</a></code>.
@@ -58,7 +58,7 @@
<div class="titlepage"><div><div><h6 class="title">
<a name="mirror.RFL_NAMESPACE.reference.samples"></a>Examples</h6></div></div></div>
<p>This example shows the registering and reflection of namespaces
- and basic usage of the <code class="computeroutput"><a class="link" href="boost/mirror/meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ and basic usage of the <code class="computeroutput">meta_namespace</code>
template class and its members.
</p>
<pre class="programlisting">
@@ -126,7 +126,7 @@
endl <<
<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" - it's defined ");
- if(<a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><typename MetaNamespace::scope>::value)
+ if(reflects_global_scope<typename MetaNamespace::scope>::value)
bcout << <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" - on the global scope ");
else
bcout << <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" - in the '") <<
@@ -146,13 +146,13 @@
using namespace ::boost::mirror;
// check the template argument
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_namespace.html" title="Class template reflects_namespace">reflects_namespace</a>< MetaNamespace >
+ reflects_namespace< MetaNamespace >
));
// call the specialized printer based on whether
// the passed meta-namespace reflects the global
// scope or not
- typename <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><MetaNamespace>::type
+ typename reflects_global_scope<MetaNamespace>::type
selector;
do_print_meta_data<MetaNamespace>(selector);
Modified: sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Macro BOOST_MIRRORED_TYPE</span></h2>
<p>BOOST_MIRRORED_TYPE — This macro is used to reflect a type and expands into a specialization
- of the <code class="computeroutput"><a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a></code> template, which provides
+ of the <code class="computeroutput">meta_type</code> template, which provides
meta-data about the reflected type.
To reflect a <code class="computeroutput">typedef</code>-ined type use the
<code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a></code> macro.
@@ -38,7 +38,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRRORED_TYPE(TYPE)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2636407"></a><h2>Description</h2>
+<a name="id693729"></a><h2>Description</h2>
<p>The <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code> macro reflects a type
previously registered with the <a class="link" href="mirror.html" title="Chapter 1. Mirror">Mirror</a> library or a type derived
from a registered type. The argument of this macro is a type.
@@ -54,14 +54,14 @@
</pre>
<pre class="programlisting">
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><
+ reflects_global_scope<
<a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a>(int)::scope
>
));
</pre>
<pre class="programlisting">
BOOST_MPL_ASSERT_NOT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><
+ reflects_global_scope<
<a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a>(::std::string)::scope
>
));
Modified: sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEDEF.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEDEF.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEDEF.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Macro BOOST_MIRRORED_TYPEDEF</span></h2>
<p>BOOST_MIRRORED_TYPEDEF — This macro is used to reflect a <code class="computeroutput">typedef</code>-ined type and expands into a specialization
- of the <code class="computeroutput"><a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a></code> template, which provides
+ of the <code class="computeroutput">meta_type</code> template, which provides
meta-data about the reflected type.
To reflect a base type (not a <code class="computeroutput">typedef</code>-ined) use the
<code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code> macro.
@@ -38,12 +38,12 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRRORED_TYPEDEF(FULL_NAMESPACE_NAME, TYPEDEF)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2636761"></a><h2>Description</h2>
+<a name="id693964"></a><h2>Description</h2>
<p>The <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a></code> macro reflects a type
that is registered with the <a class="link" href="mirror.html" title="Chapter 1. Mirror">Mirror</a> library as a <code class="computeroutput">typedef</code>-ined
type.
The difference between this macro and the <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code> macro
- is, that <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a></code> returns a <code class="computeroutput"><a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a></code>
+ is, that <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a></code> returns a <code class="computeroutput">meta_type</code>
specialization which is aware of the <code class="computeroutput">typedef</code>-ined name and the scope in which the type is
<code class="computeroutput">typedef</code>'d. For example the <code class="computeroutput">size_t</code> is a <code class="computeroutput">typedef</code> from the <code class="computeroutput">::std</code> namespace
and is usually defined as
@@ -62,7 +62,7 @@
} // namespace std
</pre>
<p>
- the <code class="computeroutput">full_name</code> function called on <a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a>
+ the <code class="computeroutput">full_name</code> function called on meta_type
expanded from <a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a>
</p>
<pre class="programlisting">
@@ -94,14 +94,14 @@
</pre>
<pre class="programlisting">
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><
+ reflects_global_scope<
<a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a>(::std, size_t)::scope::scope
>
));
</pre>
<pre class="programlisting">
BOOST_MPL_ASSERT_NOT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><
+ reflects_global_scope<
<a class="link" href="BOOST_MIRRORED_TYPEDEF.html" title="Macro BOOST_MIRRORED_TYPEDEF">BOOST_MIRRORED_TYPEDEF</a>(::boost::cts, bstring)::scope
>
));
Modified: sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEOF.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEOF.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRRORED_TYPEOF.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -32,7 +32,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRRORED_TYPEOF(EXPRESSION)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2637121"></a><h2>Description</h2>
+<a name="id694202"></a><h2>Description</h2>
This macro is basically just a shorter form of
<pre class="programlisting">
<a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a>(BOOST_TYPEOF(EXPRESSION))
@@ -45,7 +45,7 @@
</pre>
<pre class="programlisting">
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><
+ reflects_global_scope<
<a class="link" href="BOOST_MIRRORED_TYPEOF.html" title="Macro BOOST_MIRRORED_TYPEOF">BOOST_MIRRORED_TYPEOF</a>(1.0+1.0)::scope
>
));
Modified: sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE_NS.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE_NS.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRRORED_TYPE_NS.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -35,7 +35,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRRORED_TYPE_NS(FULL_NAMESPACE_NAME, TYPE)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2636566"></a><h2>Description</h2>
+<a name="id693834"></a><h2>Description</h2>
<p><code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPE_NS.html" title="Macro BOOST_MIRRORED_TYPE_NS">BOOST_MIRRORED_TYPE_NS</a>(NAMESPACE, TYPE)</code>
is equivalent to <code class="computeroutput"><a class="link" href="BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a>(NAMESPACE :: TYPE)</code>.
</p>
@@ -47,7 +47,7 @@
</pre>
<pre class="programlisting">
BOOST_MPL_ASSERT_NOT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><
+ reflects_global_scope<
<a class="link" href="BOOST_MIRRORED_TYPE_NS.html" title="Macro BOOST_MIRRORED_TYPE_NS">BOOST_MIRRORED_TYPE_NS</a>(::std, string)::scope
>
));
Modified: sandbox/mirror/doc/html/BOOST_MIRROR_REG_NAMESPACE.html
==============================================================================
--- sandbox/mirror/doc/html/BOOST_MIRROR_REG_NAMESPACE.html (original)
+++ sandbox/mirror/doc/html/BOOST_MIRROR_REG_NAMESPACE.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -34,7 +34,7 @@
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">BOOST_MIRROR_REG_NAMESPACE(PP_SEQ)</pre></div>
<div class="refsect1" lang="en">
-<a name="id2633662"></a><h2>Description</h2>
+<a name="id690042"></a><h2>Description</h2>
<p>The <code class="computeroutput"><a class="link" href="BOOST_MIRROR_REG_NAMESPACE.html" title="Macro BOOST_MIRROR_REG_NAMESPACE">BOOST_MIRROR_REG_NAMESPACE</a></code> macro registers a namespace with
the <a class="link" href="mirror.html" title="Chapter 1. Mirror">Mirror</a> library.
</p>
@@ -90,19 +90,19 @@
</p>
<pre class="programlisting">
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_namespace.html" title="Class template reflects_namespace">reflects_namespace</a>< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1) >
+ reflects_namespace< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1) >
));
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_namespace.html" title="Class template reflects_namespace">reflects_namespace</a>< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1::ns_2::ns_3) >
+ reflects_namespace< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1::ns_2::ns_3) >
));
BOOST_MPL_ASSERT_NOT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a>< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1) >
+ reflects_global_scope< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1) >
));
BOOST_MPL_ASSERT_NOT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a>< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1::ns_2::ns_3) >
+ reflects_global_scope< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1::ns_2::ns_3) >
));
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a>< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1::ns_2)::scope::scope >
+ reflects_global_scope< <a class="link" href="BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::ns_1::ns_2)::scope::scope >
));
</pre>
<p>
@@ -125,7 +125,7 @@
<div class="titlepage"><div><div><h6 class="title">
<a name="mirror.REG_NAMESPACE.reference.samples"></a>Examples</h6></div></div></div>
<p>This example shows the registering and reflection of namespaces
- and basic usage of the <code class="computeroutput"><a class="link" href="boost/mirror/meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ and basic usage of the <code class="computeroutput">meta_namespace</code>
template class and its members.
</p>
<pre class="programlisting">
@@ -193,7 +193,7 @@
endl <<
<a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" - it's defined ");
- if(<a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><typename MetaNamespace::scope>::value)
+ if(reflects_global_scope<typename MetaNamespace::scope>::value)
bcout << <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" - on the global scope ");
else
bcout << <a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" - in the '") <<
@@ -213,13 +213,13 @@
using namespace ::boost::mirror;
// check the template argument
BOOST_MPL_ASSERT((
- <a class="link" href="boost/mirror/reflects_namespace.html" title="Class template reflects_namespace">reflects_namespace</a>< MetaNamespace >
+ reflects_namespace< MetaNamespace >
));
// call the specialized printer based on whether
// the passed meta-namespace reflects the global
// scope or not
- typename <a class="link" href="boost/mirror/reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><MetaNamespace>::type
+ typename reflects_global_scope<MetaNamespace>::type
selector;
do_print_meta_data<MetaNamespace>(selector);
Modified: sandbox/mirror/doc/html/boost/cts/bchar.html
==============================================================================
--- sandbox/mirror/doc/html/boost/cts/bchar.html (original)
+++ sandbox/mirror/doc/html/boost/cts/bchar.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -5,7 +5,7 @@
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="../../index.html" title="The Mirror library documentation">
-<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp" title="Header <boost/char_type_switch/switch.hpp>">
+<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.char.hpp" title="Header <boost/char_type_switch/char.hpp>">
<link rel="prev" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">
<link rel="next" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">
</head>
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="../../BOOST_CTS_USE_WIDE_CHARS.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../BOOST_CTS_LIT.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../../BOOST_CTS_USE_WIDE_CHARS.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../BOOST_CTS_LIT.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="refentry" lang="en">
<a name="boost.cts.bchar"></a><div class="titlepage"></div>
@@ -35,16 +35,16 @@
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
<span class="bold"><strong>typedef</strong></span> <span class="bold"><strong>char</strong></span>-or-<span class="bold"><strong>wchar_t</strong></span> bchar;</pre></div>
<div class="refsect1" lang="en">
-<a name="id2640260"></a><h2>Description</h2>
+<a name="id696900"></a><h2>Description</h2>
<p>The <code class="computeroutput">bchar</code> type is defined as follows:
</p>
<pre class="programlisting">
namespace boost {
namespace cts {
#ifdef <a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a>
- typedef wchar_t <a class="link" href="bchar.html" title="Type definition bchar">bchar</a>;
+ typedef wchar_t bchar;
#else
- typedef char <a class="link" href="bchar.html" title="Type definition bchar">bchar</a>;
+ typedef char bchar;
#endif
} // namespace cts
} // namespace boost
@@ -63,7 +63,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="../../BOOST_CTS_USE_WIDE_CHARS.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.switch.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../BOOST_CTS_LIT.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../../BOOST_CTS_USE_WIDE_CHARS.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.char.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../BOOST_CTS_LIT.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>
Added: sandbox/mirror/doc/html/boost/cts/bchar_traits.html
==============================================================================
--- (empty file)
+++ sandbox/mirror/doc/html/boost/cts/bchar_traits.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,55 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Type definition bchar_traits</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<link rel="start" href="../../index.html" title="The Mirror library documentation">
+<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.string.hpp" title="Header <boost/char_type_switch/string.hpp>">
+<link rel="prev" href="../../BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">
+<link rel="next" href="bstring.html" title="Type definition bstring">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../BOOST_CTS_STRINGIZE.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.string.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bstring.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="refentry" lang="en">
+<a name="boost.cts.bchar_traits"></a><div class="titlepage"></div>
+<div class="refnamediv">
+<h2><span class="refentrytitle">Type definition bchar_traits</span></h2>
+<p>bchar_traits — The <code class="computeroutput">::std::char_traits</code> for the <code class="computeroutput">bchar</code> character type.
+ </p>
+</div>
+<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
+<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
+<span class="bold"><strong>typedef</strong></span> ::std::char_traits<bchar> bchar_traits;</pre></div>
+<div class="refsect1" lang="en">
+<a name="id697381"></a><h2>Description</h2>
+<p>The <code class="computeroutput">bchar_traits</code> type is defined as abbreviation for
+ <code class="computeroutput">::std::char_traits<bchar></code>.
+ </p>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright © 2008 Matúš Chochlík<p>Use, modification and distribution is subject to the Boost
+ Software License, Version 1.0. (See accompanying file
+ <code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../BOOST_CTS_STRINGIZE.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.string.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bstring.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
Added: sandbox/mirror/doc/html/boost/cts/biostream.html
==============================================================================
--- (empty file)
+++ sandbox/mirror/doc/html/boost/cts/biostream.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Type definition biostream</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<link rel="start" href="../../index.html" title="The Mirror library documentation">
+<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp" title="Header <boost/char_type_switch/iostream.hpp>">
+<link rel="prev" href="bostream.html" title="Type definition bostream">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bostream.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a>
+</div>
+<div class="refentry" lang="en">
+<a name="boost.cts.biostream"></a><div class="titlepage"></div>
+<div class="refnamediv">
+<h2><span class="refentrytitle">Type definition biostream</span></h2>
+<p>biostream — This type is defined as <code class="computeroutput">::std::iostream</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">char</code>
+ and is defined as <code class="computeroutput">::std::wiostream</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">wchar_t</code>.
+ </p>
+</div>
+<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
+<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
+<span class="bold"><strong>typedef</strong></span> ::std::basic_iostream<bchar, bchar_traits> biostream;</pre></div>
+<div class="refsect1" lang="en">
+<a name="id697950"></a><h2>Description</h2>
+<p>The <code class="computeroutput">biostream</code> type is defined as an abbreviation for
+ <code class="computeroutput">::std::basic_iostream<bchar, bchar_traits></code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="id697968"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+#include <boost/char_type_switch/iostream.hpp>
+
+int main(void)
+{
+ using namespace ::std;
+ using namespace ::boost::cts;
+ bistream& in = <a class="link" href="../../char_type_switch/reference.html#boost.cts.bcin_id553299">bcin</a>();
+ bostream& out = <a class="link" href="../../char_type_switch/reference.html#boost.cts.bcout_id553355">bcout</a>();
+
+ bstring str;
+ out << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("Enter a string: ") << flush;
+ in >> str;
+ out << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("The string is ") <<
+ str.length() <<
+ <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" characters long") <<
+ endl;
+ return 0;
+}
+</pre>
+</div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright © 2008 Matúš Chochlík<p>Use, modification and distribution is subject to the Boost
+ Software License, Version 1.0. (See accompanying file
+ <code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bostream.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a>
+</div>
+</body>
+</html>
Added: sandbox/mirror/doc/html/boost/cts/bistream.html
==============================================================================
--- (empty file)
+++ sandbox/mirror/doc/html/boost/cts/bistream.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,82 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Type definition bistream</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<link rel="start" href="../../index.html" title="The Mirror library documentation">
+<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp" title="Header <boost/char_type_switch/iostream.hpp>">
+<link rel="prev" href="bstring.html" title="Type definition bstring">
+<link rel="next" href="bostream.html" title="Type definition bostream">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bstring.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bostream.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="refentry" lang="en">
+<a name="boost.cts.bistream"></a><div class="titlepage"></div>
+<div class="refnamediv">
+<h2><span class="refentrytitle">Type definition bistream</span></h2>
+<p>bistream — This type is defined as <code class="computeroutput">::std::istream</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">char</code>
+ and is defined as <code class="computeroutput">::std::wistream</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">wchar_t</code>.
+ </p>
+</div>
+<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
+<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
+<span class="bold"><strong>typedef</strong></span> ::std::basic_istream<bchar, bchar_traits> bistream;</pre></div>
+<div class="refsect1" lang="en">
+<a name="id697734"></a><h2>Description</h2>
+<p>The <code class="computeroutput">bistream</code> type is defined as an abbreviation for
+ <code class="computeroutput">::std::basic_istream<bchar, bchar_traits></code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="id697752"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+#include <boost/char_type_switch/iostream.hpp>
+
+int main(void)
+{
+ using namespace ::std;
+ using namespace ::boost::cts;
+ bistream& in = <a class="link" href="../../char_type_switch/reference.html#boost.cts.bcin_id553299">bcin</a>();
+ bostream& out = <a class="link" href="../../char_type_switch/reference.html#boost.cts.bcout_id553355">bcout</a>();
+
+ bstring str;
+ out << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("Enter a string: ") << flush;
+ in >> str;
+ out << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("The string is ") <<
+ str.length() <<
+ <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" characters long") <<
+ endl;
+ return 0;
+}
+</pre>
+</div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright © 2008 Matúš Chochlík<p>Use, modification and distribution is subject to the Boost
+ Software License, Version 1.0. (See accompanying file
+ <code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bstring.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bostream.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
Added: sandbox/mirror/doc/html/boost/cts/bostream.html
==============================================================================
--- (empty file)
+++ sandbox/mirror/doc/html/boost/cts/bostream.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,82 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Type definition bostream</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<link rel="start" href="../../index.html" title="The Mirror library documentation">
+<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp" title="Header <boost/char_type_switch/iostream.hpp>">
+<link rel="prev" href="bistream.html" title="Type definition bistream">
+<link rel="next" href="biostream.html" title="Type definition biostream">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bistream.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="biostream.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="refentry" lang="en">
+<a name="boost.cts.bostream"></a><div class="titlepage"></div>
+<div class="refnamediv">
+<h2><span class="refentrytitle">Type definition bostream</span></h2>
+<p>bostream — This type is defined as <code class="computeroutput">::std::ostream</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">char</code>
+ and is defined as <code class="computeroutput">::std::wostream</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">wchar_t</code>.
+ </p>
+</div>
+<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
+<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
+<span class="bold"><strong>typedef</strong></span> ::std::basic_ostream<bchar, bchar_traits> bostream;</pre></div>
+<div class="refsect1" lang="en">
+<a name="id697842"></a><h2>Description</h2>
+<p>The <code class="computeroutput">bostream</code> type is defined as an abbreviation for
+ <code class="computeroutput">::std::basic_ostream<bchar, bchar_traits></code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="id697860"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+#include <boost/char_type_switch/iostream.hpp>
+
+int main(void)
+{
+ using namespace ::std;
+ using namespace ::boost::cts;
+ bistream& in = <a class="link" href="../../char_type_switch/reference.html#boost.cts.bcin_id553299">bcin</a>();
+ bostream& out = <a class="link" href="../../char_type_switch/reference.html#boost.cts.bcout_id553355">bcout</a>();
+
+ bstring str;
+ out << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("Enter a string: ") << flush;
+ in >> str;
+ out << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("The string is ") <<
+ str.length() <<
+ <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(" characters long") <<
+ endl;
+ return 0;
+}
+</pre>
+</div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright © 2008 Matúš Chochlík<p>Use, modification and distribution is subject to the Boost
+ Software License, Version 1.0. (See accompanying file
+ <code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bistream.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.iostream.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="biostream.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
Added: sandbox/mirror/doc/html/boost/cts/bstring.html
==============================================================================
--- (empty file)
+++ sandbox/mirror/doc/html/boost/cts/bstring.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,73 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Type definition bstring</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
+<link rel="start" href="../../index.html" title="The Mirror library documentation">
+<link rel="up" href="../../char_type_switch/reference.html#header.boost.char_type_switch.string.hpp" title="Header <boost/char_type_switch/string.hpp>">
+<link rel="prev" href="bchar_traits.html" title="Type definition bchar_traits">
+<link rel="next" href="bistream.html" title="Type definition bistream">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bchar_traits.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.string.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bistream.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="refentry" lang="en">
+<a name="boost.cts.bstring"></a><div class="titlepage"></div>
+<div class="refnamediv">
+<h2><span class="refentrytitle">Type definition bstring</span></h2>
+<p>bstring — This type is basically defined as <code class="computeroutput">::std::string</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">char</code>
+ and is defined as <code class="computeroutput">::std::wstring</code> if <code class="computeroutput">bchar</code> is <code class="computeroutput">wchar_t</code>.
+ </p>
+</div>
+<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
+<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
+<span class="bold"><strong>typedef</strong></span> ::std::basic_string<bchar> bstring;</pre></div>
+<div class="refsect1" lang="en">
+<a name="id697452"></a><h2>Description</h2>
+<p>The <code class="computeroutput">bstring</code> type is defined as an abbreviation for
+ <code class="computeroutput">::std::basic_string<bchar></code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="char_type_switch.bstring.reference.samples"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ bstring foobar(BOOST_STR_LIT("foo"));
+ foo.append(bstring(BOOST_STR_LIT("bar")));
+ assert(foobar == bstring(BOOST_STR_LIT("foobar")));
+ return 0;
+}
+</pre>
+</div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright © 2008 Matúš Chochlík<p>Use, modification and distribution is subject to the Boost
+ Software License, Version 1.0. (See accompanying file
+ <code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bchar_traits.html"><img src="../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../char_type_switch/reference.html#header.boost.char_type_switch.string.hpp"><img src="../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bistream.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
Modified: sandbox/mirror/doc/html/boost/mirror/meta_attribute.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/meta_attribute.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/meta_attribute.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Class template meta_attribute</span></h2>
<p>boost::mirror::meta_attribute — This class template reflects individual attributes of a class. The
- <code class="computeroutput"><a class="link" href="meta_attribute.html" title="Class template meta_attribute">meta_attribute</a></code> template should not be instantiated
+ <code class="computeroutput">meta_attribute</code> template should not be instantiated
directly, but are obtained only as results of introspection operations on
<code class="computeroutput">meta_class_attributes</code> and
<code class="computeroutput">meta_class_all_attributes</code>.
@@ -37,16 +37,16 @@
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>typename</strong></span> unspecified>
<span class="bold"><strong>class</strong></span> <a class="link" href="meta_attribute.html" title="Class template meta_attribute">meta_attribute</a> {
<span class="bold"><strong>public</strong></span>:
- <span class="emphasis"><em>// <a class="link" href="meta_attribute.html#id2565571-bbtypes">types</a></em></span>
- <span class="bold"><strong>typedef</strong></span> <a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a><<span class="emphasis"><em>unspecified</em></span>> <a class="link" href="meta_attribute.html#boost.mirror.meta_attribute.scope">scope</a>;
- <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_attribute.html#id2436307-bb">base_name</a>();
- <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_attribute.html#id2496639-bb">full_name</a>();
+ <span class="emphasis"><em>// <a class="link" href="meta_attribute.html#id469938-bbtypes">types</a></em></span>
+ <span class="bold"><strong>typedef</strong></span> meta_class<<span class="emphasis"><em>unspecified</em></span>> <a class="link" href="meta_attribute.html#boost.mirror.meta_attribute.scope">scope</a>;
+ <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_attribute.html#id471144-bb">base_name</a>();
+ <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_attribute.html#id471108-bb">full_name</a>();
<span class="bold"><strong>template</strong></span><<span class="bold"><strong>bool</strong></span> FullName, <span class="bold"><strong>typename</strong></span> CharT>
<span class="type"><span class="bold"><strong>const</strong></span> ::std::basic_string<CharT>&</span>
- <a class="link" href="meta_attribute.html#id2533170-bb">get_name</a>(::boost::mpl::bool_<FullName>, ::std::char_traits<CharT>);
+ <a class="link" href="meta_attribute.html#id470961-bb">get_name</a>(::boost::mpl::bool_<FullName>, ::std::char_traits<CharT>);
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2637751"></a><h2>Description</h2>
+<a name="id694651"></a><h2>Description</h2>
<p>
</p>
<div class="section" lang="en">
@@ -59,25 +59,25 @@
</div>
</div>
<div class="refsect2" lang="en">
-<a name="id2637781"></a><h3>
-<a name="id2565571-bbtypes"></a><code class="computeroutput">meta_attribute</code> public types</h3>
+<a name="id694676"></a><h3>
+<a name="id469938-bbtypes"></a><code class="computeroutput">meta_attribute</code> public types</h3>
<div class="orderedlist"><ol type="1"><li>
<p>
-<span class="bold"><strong>typedef</strong></span> <a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a><<span class="emphasis"><em>unspecified</em></span>> <a name="boost.mirror.meta_attribute.scope"></a>scope;</p>
+<span class="bold"><strong>typedef</strong></span> meta_class<<span class="emphasis"><em>unspecified</em></span>> <a name="boost.mirror.meta_attribute.scope"></a>scope;</p>
<p>A meta-object describing the class to which the reflected attribute belongs.
</p>
</li></ol></div>
</div>
-<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id2436307-bb"></a>base_name();</pre>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id471144-bb"></a>base_name();</pre>
<p>This static member function returns the base name of the
- attribute reflected by the <code class="computeroutput"><a class="link" href="meta_attribute.html" title="Class template meta_attribute">meta_attribute</a></code>.
+ attribute reflected by the <code class="computeroutput">meta_attribute</code>.
When a full attribute name
<span class="bold"><strong>with</strong></span> the nested name specifier
- is needed use the <code class="computeroutput"><a class="link" href="meta_attribute.html#id2496639-bb">full_name</a></code> member function
+ is needed use the <code class="computeroutput">full_name</code> member function
instead.</p>
-<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id2496639-bb"></a>full_name();</pre>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id471108-bb"></a>full_name();</pre>
<p>This static member function returns the full name of the
- namespace reflected by a <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ namespace reflected by a <code class="computeroutput">meta_namespace</code>
with the nested name specifier. For example:
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: full_name()
@@ -85,7 +85,7 @@
<p>
returns <code class="computeroutput">"::boost::mirror"</code>. When the base namespace name
<span class="bold"><strong>without</strong></span> the nested name specifier
- is needed use the <code class="computeroutput"><a class="link" href="meta_attribute.html#id2436307-bb">base_name</a></code> member function
+ is needed use the <code class="computeroutput">base_name</code> member function
instead.</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -95,19 +95,19 @@
for deeply nested namespaces, because the name needs to be properly composed from
the base namespace names, which may
lead to multiple string concatenations. Subsequent calls to this member function
- for a concrete specialization of <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a>
+ for a concrete specialization of meta_namespace
are usually much faster.
</p></td>
</tr></tbody>
</table></div>
<pre class="literallayout"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>bool</strong></span> FullName, <span class="bold"><strong>typename</strong></span> CharT>
<span class="type"><span class="bold"><strong>const</strong></span> ::std::basic_string<CharT>&</span>
- <a name="id2533170-bb"></a>get_name(::boost::mpl::bool_<FullName> full, ::std::char_traits<CharT> cht);</pre>
+ <a name="id470961-bb"></a>get_name(::boost::mpl::bool_<FullName> full, ::std::char_traits<CharT> cht);</pre>
<p>This static member template function returns either the base name
<span class="bold"><strong>without</strong></span> the nested name specifier
or the full name <span class="bold"><strong>with</strong></span> the
nested name specifier of the attribute reflected by this
- <code class="computeroutput"><a class="link" href="meta_attribute.html" title="Class template meta_attribute">meta_attribute</a></code>,
+ <code class="computeroutput">meta_attribute</code>,
depending on the value of the template argument <code class="computeroutput">FullName</code>.
Furthermore it allows to choose whether the return value type is
<code class="computeroutput">::std::string</code> or <code class="computeroutput">::std::wstring</code> based
@@ -117,14 +117,14 @@
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: get_name(::boost::mpl::false_(), ::std::char_traits<char>())
</pre>
<p> is equivalent to calling the
- <code class="computeroutput"><a class="link" href="meta_attribute.html#id2436307-bb">base_name</a></code> member function with the
+ <code class="computeroutput">base_name</code> member function with the
<code class="computeroutput"><a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol undefined,
which returns a <code class="computeroutput">::std::string</code> holding the string <code class="computeroutput">"mirror"</code> and calling
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: get_name(::boost::mpl::true_(), ::std::char_traits<wchar_t>())
</pre>
<p> is equivalent to calling the
- <code class="computeroutput"><a class="link" href="meta_attribute.html#id2496639-bb">full_name</a></code> method with the
+ <code class="computeroutput">full_name</code> method with the
<code class="computeroutput"><a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol defined,
which returns a <code class="computeroutput">::std::wstring</code> holding this string <code class="computeroutput">L"::boost::mirror"</code>.
</p>
Modified: sandbox/mirror/doc/html/boost/mirror/meta_class.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/meta_class.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/meta_class.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -30,30 +30,30 @@
This class template is to provides meta-data
about the reflected class.
- Although the specializations of <code class="computeroutput"><a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a></code>
+ Although the specializations of <code class="computeroutput">meta_class</code>
template can be used directly to get the meta data about a particular class (or type),
it is recomended to use the reflection macro
<code class="computeroutput">BOOST_MIRRORED_CLASS(CLASS)</code>
instead, to get the proper specializations of
- <code class="computeroutput"><a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a></code>.
+ <code class="computeroutput">meta_class</code>.
</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>typename</strong></span> Class>
-<span class="bold"><strong>class</strong></span> <a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a> : <span class="bold"><strong>public</strong></span> <a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a><Class> <span class="emphasis"><em>// The basic type meta-information about the reflected class.
+<span class="bold"><strong>class</strong></span> <a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a> : <span class="bold"><strong>public</strong></span> meta_type<Class> <span class="emphasis"><em>// The basic type meta-information about the reflected class.
</em></span>
{
<span class="bold"><strong>public</strong></span>:
- <span class="emphasis"><em>// <a class="link" href="meta_class.html#id2540285-bbtypes">types</a></em></span>
+ <span class="emphasis"><em>// <a class="link" href="meta_class.html#id637362-bbtypes">types</a></em></span>
<span class="bold"><strong>typedef</strong></span> <span class="emphasis"><em>unspecified</em></span> <a class="link" href="meta_class.html#boost.mirror.meta_class.base_classes">base_classes</a>;
<span class="bold"><strong>typedef</strong></span> <span class="emphasis"><em>unspecified</em></span> <a class="link" href="meta_class.html#boost.mirror.meta_class.attributes">attributes</a>;
<span class="bold"><strong>typedef</strong></span> <span class="emphasis"><em>unspecified</em></span> <a class="link" href="meta_class.html#boost.mirror.meta_class.all_attributes">all_attributes</a>;
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2637415"></a><h2>Description</h2>
+<a name="id694401"></a><h2>Description</h2>
<div class="refsect2" lang="en">
-<a name="id2637418"></a><h3>
-<a name="id2540285-bbtypes"></a><code class="computeroutput">meta_class</code> public types</h3>
+<a name="id694405"></a><h3>
+<a name="id637362-bbtypes"></a><code class="computeroutput">meta_class</code> public types</h3>
<div class="orderedlist"><ol type="1">
<li>
<p>
Modified: sandbox/mirror/doc/html/boost/mirror/meta_namespace.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/meta_namespace.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/meta_namespace.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -33,10 +33,10 @@
get information about the scope inside of which this namespace
has been defined.
- To obtain a <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code> for a particular
+ To obtain a <code class="computeroutput">meta_namespace</code> for a particular
namespace (with the exception of the global scope) use the reflection
macro <code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(FULL_NAMESPACE_NAME)</code>. To
- get the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code> specialization for
+ get the <code class="computeroutput">meta_namespace</code> specialization for
the global scope use the <code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_GLOBAL_SCOPE.html" title="Macro BOOST_MIRRORED_GLOBAL_SCOPE">BOOST_MIRRORED_GLOBAL_SCOPE</a>()</code>
macro.
</p>
@@ -45,21 +45,21 @@
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>typename</strong></span> NamespacePlaceholder>
<span class="bold"><strong>class</strong></span> <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a> {
<span class="bold"><strong>public</strong></span>:
- <span class="emphasis"><em>// <a class="link" href="meta_namespace.html#id2441788-bbtypes">types</a></em></span>
- <span class="bold"><strong>typedef</strong></span> <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a><<span class="emphasis"><em>unspecified</em></span>> <a class="link" href="meta_namespace.html#boost.mirror.meta_namespace.scope">scope</a>;
+ <span class="emphasis"><em>// <a class="link" href="meta_namespace.html#id453258-bbtypes">types</a></em></span>
+ <span class="bold"><strong>typedef</strong></span> meta_namespace<<span class="emphasis"><em>unspecified</em></span>> <a class="link" href="meta_namespace.html#boost.mirror.meta_namespace.scope">scope</a>;
<span class="bold"><strong>typedef</strong></span> <span class="emphasis"><em>unspecified</em></span> <a class="link" href="meta_namespace.html#boost.mirror.meta_namespace.ancestors">ancestors</a>;
- <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_namespace.html#id2440256-bb">base_name</a>();
- <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_namespace.html#id2458884-bb">full_name</a>();
+ <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_namespace.html#id453084-bb">base_name</a>();
+ <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_namespace.html#id453042-bb">full_name</a>();
<span class="bold"><strong>template</strong></span><<span class="bold"><strong>bool</strong></span> FullName, <span class="bold"><strong>typename</strong></span> CharT>
<span class="type"><span class="bold"><strong>const</strong></span> ::std::basic_string<CharT>&</span>
- <a class="link" href="meta_namespace.html#id2393234-bb">get_name</a>(::boost::mpl::bool_<FullName>, ::std::char_traits<CharT>);
+ <a class="link" href="meta_namespace.html#id452989-bb">get_name</a>(::boost::mpl::bool_<FullName>, ::std::char_traits<CharT>);
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2632478"></a><h2>Description</h2>
-<p>The specializations of <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> can
+<a name="id689382"></a><h2>Description</h2>
+<p>The specializations of <code class="computeroutput">meta_type</code> can
be used to get meta-information about the reflected types, some at compile-time and some at run-time.
The following examples show type reflection and basic
- <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> usage. Mirror works with the native C++ types
+ <code class="computeroutput">meta_type</code> usage. Mirror works with the native C++ types
and some of the very common types like <code class="computeroutput">::std::string</code>, etc. out of the box.
Meta-types for many other types from the standard library and Boost
are also provided and can be <code class="computeroutput">#include</code>d when necessary.
@@ -102,9 +102,9 @@
<div class="titlepage"><div><div><h6 class="title">
<a name="mirror.meta_namespace.reference.sample02"></a>Example - Scope and ancestors</h6></div></div></div>
<p>The following example shows what can be done with the
- <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>s <code class="computeroutput">scope</code> and
+ <code class="computeroutput">meta_namespace</code>s <code class="computeroutput">scope</code> and
<code class="computeroutput">ancestors</code> <code class="computeroutput">typedef</code>s. It also shows the usage
- of the <code class="computeroutput"><a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a></code> trait
+ of the <code class="computeroutput">reflects_global_scope</code> trait
template.
</p>
<a name="mirror.reference.sample.meta_namespace.usage02"></a><pre class="programlisting">
@@ -149,7 +149,7 @@
bcout << meta_boost_mirror::scope::full_name() << endl;
//
// check whether the grandparent namespace is the global scope
- if(<a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><meta_boost_mirror::scope::scope> :: value)
+ if(reflects_global_scope<meta_boost_mirror::scope::scope> :: value)
bcout << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("OK") << endl;
else
bcout << <a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("Error") << endl;
@@ -165,9 +165,9 @@
<div class="section" lang="en">
<div class="titlepage"><div><div><h6 class="title">
<a name="mirror.meta_namespace.reference.sample03"></a>Example - Generic namespace name getter</h6></div></div></div>
-<p>The <code class="computeroutput"><a class="link" href="meta_namespace.html#id2440256-bb">base_name</a></code> and the
- <code class="computeroutput"><a class="link" href="meta_namespace.html#id2458884-bb">full_name</a></code> methods
- are convenient but not very generic. The <code class="computeroutput"><a class="link" href="meta_namespace.html#id2393234-bb">get_name</a></code>
+<p>The <code class="computeroutput">base_name</code> and the
+ <code class="computeroutput">full_name</code> methods
+ are convenient but not very generic. The <code class="computeroutput">get_name</code>
member function allows to specify the character type of the returned string and
to specify whether a full or just the base namespace name should be returned, based
on compile time arguments.
@@ -187,7 +187,7 @@
::std::basic_ostream< CharT, ::std::char_traits< CharT > >&
operator << (
::std::basic_ostream< CharT, ::std::char_traits< CharT > >& _s,
- ::boost::mirror::<a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a>< NsPlaceholder > _mn
+ ::boost::mirror::meta_namespace< NsPlaceholder > _mn
)
{
return _s <<_mn.get_name(
@@ -213,33 +213,33 @@
</div>
</div>
<div class="refsect2" lang="en">
-<a name="id2632936"></a><h3>
-<a name="id2441788-bbtypes"></a><code class="computeroutput">meta_namespace</code> public types</h3>
+<a name="id689620"></a><h3>
+<a name="id453258-bbtypes"></a><code class="computeroutput">meta_namespace</code> public types</h3>
<div class="orderedlist"><ol type="1">
<li>
<p>
-<span class="bold"><strong>typedef</strong></span> <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a><<span class="emphasis"><em>unspecified</em></span>> <a name="boost.mirror.meta_namespace.scope"></a>scope;</p>
+<span class="bold"><strong>typedef</strong></span> meta_namespace<<span class="emphasis"><em>unspecified</em></span>> <a name="boost.mirror.meta_namespace.scope"></a>scope;</p>
<p>A meta-object describing the scope in which the reflected namespace
- is defined. It is a specialization of <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ is defined. It is a specialization of <code class="computeroutput">meta_namespace</code>
with the exception of the meta-namespace reflecting the global scope where
- this type refers back to the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ this type refers back to the <code class="computeroutput">meta_namespace</code>
describing the global scope.
</p>
<p>To find out whether a meta-namespace reflects the global scope
- use the <code class="computeroutput"><a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a></code> template meta-function.
+ use the <code class="computeroutput">reflects_global_scope</code> template meta-function.
</p>
</li>
<li>
<p>
<span class="bold"><strong>typedef</strong></span> <span class="emphasis"><em>unspecified</em></span> <a name="boost.mirror.meta_namespace.ancestors"></a>ancestors;</p>
-<p>An <code class="computeroutput">mpl::vector</code> containing the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+<p>An <code class="computeroutput">mpl::vector</code> containing the <code class="computeroutput">meta_namespace</code>
specializations for all the namespaces in which the reflected namespace is
- directly or indirectly nested (not-containing the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ directly or indirectly nested (not-containing the <code class="computeroutput">meta_namespace</code>
for the reflected namespace). The elements of this <code class="computeroutput">mpl::vector</code> are
- ordered from the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code> reflecting
- the global scope to the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ ordered from the <code class="computeroutput">meta_namespace</code> reflecting
+ the global scope to the <code class="computeroutput">meta_namespace</code>
reflecting the parent namespace. The following holds
- for <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>s
+ for <code class="computeroutput">meta_namespace</code>s
reflecting any namespace with the exception of the global scope:
</p>
<a name="mirror.reference.sample.meta_namespace.ancestors01"></a><pre class="programlisting">
@@ -247,7 +247,7 @@
using namespace ::boost::mirror;
BOOST_MPL_ASSERT((
- <a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a> <
+ reflects_global_scope <
mpl::front <
<a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::std)::ancestors
>
@@ -255,7 +255,7 @@
));
BOOST_MPL_ASSERT((
- <a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a> <
+ reflects_global_scope <
mpl::front <
<a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a>(::boost::mirror)::ancestors
>
@@ -271,7 +271,7 @@
>
));
</pre>
-<p>For the <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+<p>For the <code class="computeroutput">meta_namespace</code>
reflecting the global scope the following holds true.
</p>
<a name="mirror.reference.sample.meta_namespace.ancestors02"></a><pre class="programlisting">
@@ -283,14 +283,14 @@
</pre>
<p>To find out whether a meta-namespace reflects the global scope
- use the <code class="computeroutput"><a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a></code> template meta-function.
+ use the <code class="computeroutput">reflects_global_scope</code> template meta-function.
</p>
</li>
</ol></div>
</div>
-<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id2440256-bb"></a>base_name();</pre>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id453084-bb"></a>base_name();</pre>
<p>This static member function returns the base name of the
- namespace reflected by a <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>.
+ namespace reflected by a <code class="computeroutput">meta_namespace</code>.
For example the base namespace name "returned" by the invocation of
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: base_name()
@@ -298,11 +298,11 @@
<p>
is <code class="computeroutput">"mirror"</code>. When a full namespace name
<span class="bold"><strong>with</strong></span> the nested name specifier
- is needed use the <code class="computeroutput"><a class="link" href="meta_namespace.html#id2458884-bb">full_name</a></code> member function
+ is needed use the <code class="computeroutput">full_name</code> member function
instead.</p>
-<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id2458884-bb"></a>full_name();</pre>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id453042-bb"></a>full_name();</pre>
<p>This static member function returns the full name of the
- namespace reflected by a <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
+ namespace reflected by a <code class="computeroutput">meta_namespace</code>
with the nested name specifier. For example:
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: full_name()
@@ -310,7 +310,7 @@
<p>
returns <code class="computeroutput">"::boost::mirror"</code>. When the base namespace name
<span class="bold"><strong>without</strong></span> the nested name specifier
- is needed use the <code class="computeroutput"><a class="link" href="meta_namespace.html#id2440256-bb">base_name</a></code> member function
+ is needed use the <code class="computeroutput">base_name</code> member function
instead.</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -320,19 +320,19 @@
for deeply nested namespaces, because the name needs to be properly composed from
the base namespace names, which may
lead to multiple string concatenations. Subsequent calls to this member function
- for a concrete specialization of <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a>
+ for a concrete specialization of meta_namespace
are usually much faster.
</p></td>
</tr></tbody>
</table></div>
<pre class="literallayout"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>bool</strong></span> FullName, <span class="bold"><strong>typename</strong></span> CharT>
<span class="type"><span class="bold"><strong>const</strong></span> ::std::basic_string<CharT>&</span>
- <a name="id2393234-bb"></a>get_name(::boost::mpl::bool_<FullName> full, ::std::char_traits<CharT> cht);</pre>
+ <a name="id452989-bb"></a>get_name(::boost::mpl::bool_<FullName> full, ::std::char_traits<CharT> cht);</pre>
<p>This static member template function returns either the base name
<span class="bold"><strong>without</strong></span> the nested name specifier
or the full name <span class="bold"><strong>with</strong></span> the
nested name specifier of the namespace reflected by this
- <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>,
+ <code class="computeroutput">meta_namespace</code>,
depending on the value of the template argument <code class="computeroutput">FullName</code>.
Furthermore it allows to choose whether the return value type is
<code class="computeroutput">::std::string</code> or <code class="computeroutput">::std::wstring</code> based
@@ -342,14 +342,14 @@
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: get_name(::boost::mpl::false_(), ::std::char_traits<char>())
</pre>
<p> is equivalent to calling the
- <code class="computeroutput"><a class="link" href="meta_namespace.html#id2440256-bb">base_name</a></code> member function with the
+ <code class="computeroutput">base_name</code> member function with the
<code class="computeroutput"><a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol undefined,
which returns a <code class="computeroutput">::std::string</code> holding the string <code class="computeroutput">"mirror"</code> and calling
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_NAMESPACE.html" title="Macro BOOST_MIRRORED_NAMESPACE">BOOST_MIRRORED_NAMESPACE</a></code>(::boost::mirror) :: get_name(::boost::mpl::true_(), ::std::char_traits<wchar_t>())
</pre>
<p> is equivalent to calling the
- <code class="computeroutput"><a class="link" href="meta_namespace.html#id2458884-bb">full_name</a></code> method with the
+ <code class="computeroutput">full_name</code> method with the
<code class="computeroutput"><a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol defined,
which returns a <code class="computeroutput">::std::wstring</code> holding this string <code class="computeroutput">L"::boost::mirror"</code>.
</p>
Modified: sandbox/mirror/doc/html/boost/mirror/meta_type.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/meta_type.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/meta_type.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -31,34 +31,34 @@
base and full type name of the reflected type and to
get information about the scope inside of which this type
has been declared.
- Although the specializations of <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>
+ Although the specializations of <code class="computeroutput">meta_type</code>
template can be used directly to get the meta data about a particular type,
it is recomended to use the reflection macros like
<code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a>(TYPE)</code> or
<code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_TYPEOF.html" title="Macro BOOST_MIRRORED_TYPEOF">BOOST_MIRRORED_TYPEOF</a>(EXPR)</code>
instead, to get the proper specializations of
- <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>.
+ <code class="computeroutput">meta_type</code>.
</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>typename</strong></span> Type>
<span class="bold"><strong>class</strong></span> <a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a> {
<span class="bold"><strong>public</strong></span>:
- <span class="emphasis"><em>// <a class="link" href="meta_type.html#id2462742-bbtypes">types</a></em></span>
+ <span class="emphasis"><em>// <a class="link" href="meta_type.html#id517994-bbtypes">types</a></em></span>
<span class="bold"><strong>typedef</strong></span> Type <a class="link" href="meta_type.html#boost.mirror.meta_type.reflected_type">reflected_type</a>;
- <span class="bold"><strong>typedef</strong></span> <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a><<span class="emphasis"><em>unspecified</em></span>>-or-<a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a><<span class="emphasis"><em>unspecified</em></span>> <a class="link" href="meta_type.html#boost.mirror.meta_type.scope">scope</a>;
- <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_type.html#id2439662-bb">base_name</a>();
- <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_type.html#id2432852-bb">full_name</a>();
+ <span class="bold"><strong>typedef</strong></span> meta_namespace<<span class="emphasis"><em>unspecified</em></span>>-or-meta_class<<span class="emphasis"><em>unspecified</em></span>> <a class="link" href="meta_type.html#boost.mirror.meta_type.scope">scope</a>;
+ <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_type.html#id638181-bb">base_name</a>();
+ <span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a class="link" href="meta_type.html#id638116-bb">full_name</a>();
<span class="bold"><strong>template</strong></span><<span class="bold"><strong>bool</strong></span> FullName, <span class="bold"><strong>typename</strong></span> CharT>
<span class="type"><span class="bold"><strong>const</strong></span> ::std::basic_string<CharT>&</span>
- <a class="link" href="meta_type.html#id2433906-bb">get_name</a>(::boost::mpl::bool_<FullName>, ::std::char_traits<CharT>);
+ <a class="link" href="meta_type.html#id637355-bb">get_name</a>(::boost::mpl::bool_<FullName>, ::std::char_traits<CharT>);
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2635146"></a><h2>Description</h2>
-<p>The specializations of <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> can
+<a name="id690842"></a><h2>Description</h2>
+<p>The specializations of <code class="computeroutput">meta_type</code> can
be used to get meta-information about the reflected types, some at compile-time and some at run-time.
The following examples show type reflection and basic
- <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> usage. Mirror works with the native C++ types
+ <code class="computeroutput">meta_type</code> usage. Mirror works with the native C++ types
and some of the very common types like <code class="computeroutput">::std::string</code>, etc. out of the box.
Meta-types for many other types from the standard library and Boost
are also provided and can be <code class="computeroutput">#include</code>d when necessary.
@@ -70,7 +70,7 @@
<a name="mirror.meta_type.reference.sample01"></a>Example - Basic usage</h6></div></div></div>
<p>This sample code shows how to reflect a type and how to get its full type name.
Since various instances of <code class="computeroutput">::std::pair</code> are reflected,
- the <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>s for this template need to be
+ the <code class="computeroutput">meta_type</code>s for this template need to be
included.
</p>
<a name="mirror.reference.sample.meta_type.usage01"></a><pre class="programlisting">
@@ -131,7 +131,7 @@
MetaType::base_name() <<
endl;
//
- if(<a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a><typename MetaType::scope>::value)
+ if(reflects_global_scope<typename MetaType::scope>::value)
{
bcout <<
<a class="link" href="../../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>("It's defined on the global scope") <<
@@ -182,7 +182,7 @@
types. This is useful when the info about the name and the scope of the <code class="computeroutput">typedef</code>
is required instead of the meta-information about the "source" type.
However, the usage shown in this example is not very common. The full utility becomes obvious
- only when the <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> is part of
+ only when the <code class="computeroutput">meta_type</code> is part of
some other meta-structure like for example with <code class="computeroutput">typedef</code>'d class member attributes.
</p>
<p>Mirror comes with several pre-registered <code class="computeroutput">typedef</code>s. If user-defined
@@ -231,9 +231,9 @@
<div class="section" lang="en">
<div class="titlepage"><div><div><h6 class="title">
<a name="mirror.meta_type.reference.sample04"></a>Example - Generic typename getter</h6></div></div></div>
-<p>The <code class="computeroutput"><a class="link" href="meta_type.html#id2439662-bb">base_name</a></code> and the
- <code class="computeroutput"><a class="link" href="meta_type.html#id2432852-bb">full_name</a></code> member functions
- are convenient but not very generic. The <code class="computeroutput"><a class="link" href="meta_type.html#id2433906-bb">get_name</a></code>
+<p>The <code class="computeroutput">base_name</code> and the
+ <code class="computeroutput">full_name</code> member functions
+ are convenient but not very generic. The <code class="computeroutput">get_name</code>
method allows to specify the character type of the returned string and
to specify whether a full or just the base name should be returned, based
on compile time arguments.
@@ -253,7 +253,7 @@
::std::basic_ostream< CharT, ::std::char_traits< CharT > >&
operator << (
::std::basic_ostream< CharT, ::std::char_traits< CharT > >& _s,
- ::boost::mirror::<a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a>< Type > _mt
+ ::boost::mirror::meta_type< Type > _mt
)
{
return _s <<_mt.get_name(
@@ -279,41 +279,41 @@
</div>
</div>
<div class="refsect2" lang="en">
-<a name="id2635747"></a><h3>
-<a name="id2462742-bbtypes"></a><code class="computeroutput">meta_type</code> public types</h3>
+<a name="id693333"></a><h3>
+<a name="id517994-bbtypes"></a><code class="computeroutput">meta_type</code> public types</h3>
<div class="orderedlist"><ol type="1">
<li>
<p>
<span class="bold"><strong>typedef</strong></span> Type <a name="boost.mirror.meta_type.reflected_type"></a>reflected_type;</p>
-<p>The type reflected by this specialization of <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>.
+<p>The type reflected by this specialization of <code class="computeroutput">meta_type</code>.
</p>
</li>
<li>
<p>
-<span class="bold"><strong>typedef</strong></span> <a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a><<span class="emphasis"><em>unspecified</em></span>>-or-<a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a><<span class="emphasis"><em>unspecified</em></span>> <a name="boost.mirror.meta_type.scope"></a>scope;</p>
+<span class="bold"><strong>typedef</strong></span> meta_namespace<<span class="emphasis"><em>unspecified</em></span>>-or-meta_class<<span class="emphasis"><em>unspecified</em></span>> <a name="boost.mirror.meta_type.scope"></a>scope;</p>
<p>A meta-object describing the scope in which the reflected type
is defined. Depending on where the type has been defined <code class="computeroutput">scope</code>
- can be either a specialization of <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>
- or a specialization of <code class="computeroutput"><a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a></code>.
+ can be either a specialization of <code class="computeroutput">meta_namespace</code>
+ or a specialization of <code class="computeroutput">meta_class</code>.
</p>
</li>
</ol></div>
</div>
-<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id2439662-bb"></a>base_name();</pre>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id638181-bb"></a>base_name();</pre>
<p>This static member function returns the base name of the
- type reflected by <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>
+ type reflected by <code class="computeroutput">meta_type</code>
without the nested name specifier. For example:
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code>(::std::string) :: base_name()
</pre>
<p> or
</p>
-<pre class="programlisting"><code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> < ::std::string > :: base_name()
+<pre class="programlisting"><code class="computeroutput">meta_type</code> < ::std::string > :: base_name()
</pre>
<p>
returns simply <code class="computeroutput">"string"</code>. When a full type name
<span class="bold"><strong>with</strong></span> the nested name specifier
- is needed use the <code class="computeroutput"><a class="link" href="meta_type.html#id2432852-bb">full_name</a></code> member function
+ is needed use the <code class="computeroutput">full_name</code> member function
instead.</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -324,26 +324,26 @@
types, arrays etc. because the type name needs to be properly composed from
the base type name, which may depending on the complexity of the type
lead to multiple string concatenations. Subsequent calls to this member function
- for a concrete specialization of <a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a>
+ for a concrete specialization of meta_type
are usually much faster.
</p></td>
</tr></tbody>
</table></div>
-<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id2432852-bb"></a>full_name();</pre>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>const</strong></span> cts::bstring&</span> <a name="id638116-bb"></a>full_name();</pre>
<p>This static member function returns the full name of the
- type reflected by <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>
+ type reflected by <code class="computeroutput">meta_type</code>
with the nested name specifier. For example:
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code>(::std::string) :: full_name()
</pre>
<p> or
</p>
-<pre class="programlisting"><code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> < ::std::string > :: full_name()
+<pre class="programlisting"><code class="computeroutput">meta_type</code> < ::std::string > :: full_name()
</pre>
<p>
returns <code class="computeroutput">"::std::string"</code>. When the base type name
<span class="bold"><strong>without</strong></span> the nested name specifier
- is needed use the <code class="computeroutput"><a class="link" href="meta_type.html#id2439662-bb">base_name</a></code> member function
+ is needed use the <code class="computeroutput">base_name</code> member function
instead.</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -354,19 +354,19 @@
types, arrays etc. because the type name needs to be properly composed from
the base type name, which may depending on the complexity of the type
lead to multiple string concatenations. Subsequent calls to this member function
- for a concrete specialization of <a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a>
+ for a concrete specialization of meta_type
are usually much faster.
</p></td>
</tr></tbody>
</table></div>
<pre class="literallayout"><span class="bold"><strong>template</strong></span><<span class="bold"><strong>bool</strong></span> FullName, <span class="bold"><strong>typename</strong></span> CharT>
<span class="type"><span class="bold"><strong>const</strong></span> ::std::basic_string<CharT>&</span>
- <a name="id2433906-bb"></a>get_name(::boost::mpl::bool_<FullName> full, ::std::char_traits<CharT> cht);</pre>
+ <a name="id637355-bb"></a>get_name(::boost::mpl::bool_<FullName> full, ::std::char_traits<CharT> cht);</pre>
<p>This static member template function returns either the base name
<span class="bold"><strong>without</strong></span> the nested name specifier
or the full name <span class="bold"><strong>with</strong></span> the
nested name specifier of the type reflected by this
- <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>,
+ <code class="computeroutput">meta_type</code>,
depending on the value of the template argument <code class="computeroutput">FullName</code>.
Furthermore it allows to choose whether the return value type is
<code class="computeroutput">::std::string</code> or <code class="computeroutput">::std::wstring</code> based
@@ -376,19 +376,19 @@
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code>(::std::string) :: get_name(::boost::mpl::false_(), ::std::char_traits<char>())</pre>
<p> or
</p>
-<pre class="programlisting"><code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> < ::std::string > :: get_name(::boost::mpl::false_(), ::std::char_traits<char>())</pre>
+<pre class="programlisting"><code class="computeroutput">meta_type</code> < ::std::string > :: get_name(::boost::mpl::false_(), ::std::char_traits<char>())</pre>
<p>
is equivalent to calling the
- <code class="computeroutput"><a class="link" href="meta_type.html#id2439662-bb">base_name</a></code> member function with the
+ <code class="computeroutput">base_name</code> member function with the
<code class="computeroutput"><a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol undefined,
which returns a <code class="computeroutput">::std::string</code> containing <code class="computeroutput">"string"</code> and calling
</p>
<pre class="programlisting"><code class="computeroutput"><a class="link" href="../../BOOST_MIRRORED_TYPE.html" title="Macro BOOST_MIRRORED_TYPE">BOOST_MIRRORED_TYPE</a></code>(::std::string) :: get_name(::boost::mpl::true_(), ::std::char_traits<wchar_t>())</pre>
<p> or
</p>
-<pre class="programlisting"><code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code> < ::std::string > :: get_name( ::boost::mpl::true_(), ::std::char_traits<wchar_t>())</pre>
+<pre class="programlisting"><code class="computeroutput">meta_type</code> < ::std::string > :: get_name( ::boost::mpl::true_(), ::std::char_traits<wchar_t>())</pre>
<p> is equivalent to calling the
- <code class="computeroutput"><a class="link" href="meta_type.html#id2432852-bb">full_name</a></code> method with the
+ <code class="computeroutput">full_name</code> method with the
<code class="computeroutput"><a class="link" href="../../BOOST_CTS_USE_WIDE_CHARS.html" title="Macro BOOST_CTS_USE_WIDE_CHARS">BOOST_CTS_USE_WIDE_CHARS</a></code> symbol defined,
which returns a <code class="computeroutput">::std::wstring</code> containing <code class="computeroutput">L"::std::string"</code>.
</p>
Modified: sandbox/mirror/doc/html/boost/mirror/reflects_class.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/reflects_class.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/reflects_class.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Class template reflects_class</span></h2>
<p>boost::mirror::reflects_class — If <code class="computeroutput">MetaObject</code> is an instantiation of
- <code class="computeroutput"><a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a></code>, then <code class="computeroutput"><a class="link" href="reflects_class.html" title="Class template reflects_class">reflects_class</a></code>
+ <code class="computeroutput">meta_class</code>, then <code class="computeroutput">reflects_class</code>
inherits from <code class="computeroutput">::boost::true_type</code>. Otherwise it inherits from
<code class="computeroutput">::boost::false_type</code>.
</p>
@@ -37,9 +37,9 @@
<span class="bold"><strong>class</strong></span> <a class="link" href="reflects_class.html" title="Class template reflects_class">reflects_class</a> : <span class="bold"><strong>public</strong></span> <span class="type">false_type-or-true_type</span> {
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2639110"></a><h2>Description</h2>
+<a name="id696173"></a><h2>Description</h2>
<p>This template can be used to distinguish whether the opaque <code class="computeroutput">MetaObject</code> type reflects a class
- and thus is an instantiation of <code class="computeroutput"><a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a></code>.
+ and thus is an instantiation of <code class="computeroutput">meta_class</code>.
</p>
<div class="section" lang="en">
<div class="titlepage"><div><div><h6 class="title">
Modified: sandbox/mirror/doc/html/boost/mirror/reflects_global_scope.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/reflects_global_scope.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/reflects_global_scope.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -26,9 +26,9 @@
<a name="boost.mirror.reflects_global_scope"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template reflects_global_scope</span></h2>
-<p>boost::mirror::reflects_global_scope — If <code class="computeroutput">MetaObject</code> is the specialization of <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>,
+<p>boost::mirror::reflects_global_scope — If <code class="computeroutput">MetaObject</code> is the specialization of <code class="computeroutput">meta_namespace</code>,
reflecting the global scope,
- then <code class="computeroutput"><a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a></code>
+ then <code class="computeroutput">reflects_global_scope</code>
inherits from <code class="computeroutput">::boost::true_type</code>. Otherwise it inherits from
<code class="computeroutput">::boost::false_type</code>.
</p>
@@ -38,9 +38,9 @@
<span class="bold"><strong>class</strong></span> <a class="link" href="reflects_global_scope.html" title="Class template reflects_global_scope">reflects_global_scope</a> : <span class="bold"><strong>public</strong></span> <span class="type">false_type-or-true_type</span> {
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2638598"></a><h2>Description</h2>
+<a name="id695212"></a><h2>Description</h2>
<p>This template can be used to distinguish whether the opaque <code class="computeroutput">MetaObject</code> type reflects the global scope
- and thus is an instantiation of <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code> for the global scope.
+ and thus is an instantiation of <code class="computeroutput">meta_namespace</code> for the global scope.
</p>
<div class="section" lang="en">
<div class="titlepage"><div><div><h6 class="title">
Modified: sandbox/mirror/doc/html/boost/mirror/reflects_inheritance.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/reflects_inheritance.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/reflects_inheritance.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -27,7 +27,7 @@
<div class="refnamediv">
<h2><span class="refentrytitle">Class template reflects_inheritance</span></h2>
<p>boost::mirror::reflects_inheritance — If <code class="computeroutput">MetaObject</code> is an instantiation of <code class="computeroutput">meta_inheritance</code>,
- then <code class="computeroutput"><a class="link" href="reflects_inheritance.html" title="Class template reflects_inheritance">reflects_inheritance</a></code>
+ then <code class="computeroutput">reflects_inheritance</code>
inherits from <code class="computeroutput">::boost::true_type</code>. Otherwise it inherits from
<code class="computeroutput">::boost::false_type</code>.
</p>
Modified: sandbox/mirror/doc/html/boost/mirror/reflects_namespace.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/reflects_namespace.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/reflects_namespace.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -26,8 +26,8 @@
<a name="boost.mirror.reflects_namespace"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template reflects_namespace</span></h2>
-<p>boost::mirror::reflects_namespace — If <code class="computeroutput">MetaObject</code> is an instantiation of <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>,
- then <code class="computeroutput"><a class="link" href="reflects_namespace.html" title="Class template reflects_namespace">reflects_namespace</a></code>
+<p>boost::mirror::reflects_namespace — If <code class="computeroutput">MetaObject</code> is an instantiation of <code class="computeroutput">meta_namespace</code>,
+ then <code class="computeroutput">reflects_namespace</code>
inherits from <code class="computeroutput">::boost::true_type</code>. Otherwise it inherits from
<code class="computeroutput">::boost::false_type</code>.
</p>
@@ -37,9 +37,9 @@
<span class="bold"><strong>class</strong></span> <a class="link" href="reflects_namespace.html" title="Class template reflects_namespace">reflects_namespace</a> : <span class="bold"><strong>public</strong></span> <span class="type">false_type-or-true_type</span> {
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2638345"></a><h2>Description</h2>
+<a name="id695041"></a><h2>Description</h2>
<p>This template can be used to distinguish whether the opaque <code class="computeroutput">MetaObject</code> type reflects a namespace
- and thus is an instantiation of <code class="computeroutput"><a class="link" href="meta_namespace.html" title="Class template meta_namespace">meta_namespace</a></code>.
+ and thus is an instantiation of <code class="computeroutput">meta_namespace</code>.
</p>
<div class="section" lang="en">
<div class="titlepage"><div><div><h6 class="title">
Modified: sandbox/mirror/doc/html/boost/mirror/reflects_type.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/reflects_type.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/reflects_type.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -26,8 +26,8 @@
<a name="boost.mirror.reflects_type"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template reflects_type</span></h2>
-<p>boost::mirror::reflects_type — If <code class="computeroutput">MetaObject</code> is either an instantiation of <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>
- or <code class="computeroutput"><a class="link" href="meta_class.html" title="Class template meta_class">meta_class</a></code>, then <code class="computeroutput"><a class="link" href="reflects_type.html" title="Class template reflects_type">reflects_type</a></code>
+<p>boost::mirror::reflects_type — If <code class="computeroutput">MetaObject</code> is either an instantiation of <code class="computeroutput">meta_type</code>
+ or <code class="computeroutput">meta_class</code>, then <code class="computeroutput">reflects_type</code>
inherits from <code class="computeroutput">::boost::true_type</code>. Otherwise it inherits from
<code class="computeroutput">::boost::false_type</code>.
</p>
@@ -37,9 +37,9 @@
<span class="bold"><strong>class</strong></span> <a class="link" href="reflects_type.html" title="Class template reflects_type">reflects_type</a> : <span class="bold"><strong>public</strong></span> <span class="type">false_type-or-true_type</span> {
};</pre></div>
<div class="refsect1" lang="en">
-<a name="id2638857"></a><h2>Description</h2>
+<a name="id696002"></a><h2>Description</h2>
<p>This template can be used to distinguish whether the opaque <code class="computeroutput">MetaObject</code> type reflects a type or a class
- and thus is an instantiation of <code class="computeroutput"><a class="link" href="meta_type.html" title="Class template meta_type">meta_type</a></code>.
+ and thus is an instantiation of <code class="computeroutput">meta_type</code>.
</p>
<div class="section" lang="en">
<div class="titlepage"><div><div><h6 class="title">
Modified: sandbox/mirror/doc/html/boost/mirror/reflects_virtual_inheritance.html
==============================================================================
--- sandbox/mirror/doc/html/boost/mirror/reflects_virtual_inheritance.html (original)
+++ sandbox/mirror/doc/html/boost/mirror/reflects_virtual_inheritance.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -28,7 +28,7 @@
<h2><span class="refentrytitle">Class template reflects_virtual_inheritance</span></h2>
<p>boost::mirror::reflects_virtual_inheritance — If <code class="computeroutput">MetaInheritance</code> is a specialization of <code class="computeroutput">meta_inheritance</code>
reflecting virtual inheritance,
- then <code class="computeroutput"><a class="link" href="reflects_virtual_inheritance.html" title="Class template reflects_virtual_inheritance">reflects_virtual_inheritance</a></code>
+ then <code class="computeroutput">reflects_virtual_inheritance</code>
inherits from <code class="computeroutput">::boost::true_type</code>. Otherwise it inherits from
<code class="computeroutput">::boost::false_type</code>.
</p>
Modified: sandbox/mirror/doc/html/char_type_switch.html
==============================================================================
--- sandbox/mirror/doc/html/char_type_switch.html (original)
+++ sandbox/mirror/doc/html/char_type_switch.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -34,7 +34,7 @@
</div></div>
<div><p class="copyright">Copyright © 2008 Matúš Chochlík</p></div>
<div><div class="legalnotice">
-<a name="id2639532"></a><p>Use, modification and distribution is subject to the Boost
+<a name="id696486"></a><p>Use, modification and distribution is subject to the Boost
Software License, Version 1.0. (See accompanying file
<code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
</p>
@@ -49,7 +49,7 @@
<dt><span class="section">Motivation</span></dt>
</dl></dd>
<dt><span class="section">Char Type Switch Reference</span></dt>
-<dd><dl><dt><span class="section">Header files</span></dt></dl></dd>
+<dd><dl><dt><span class="section">Header files</span></dt></dl></dd>
</dl>
</div>
<div class="section" lang="en">
@@ -82,7 +82,7 @@
<code class="computeroutput">::boost::cts::bstrcpy</code>, etc.
and macros like
<code class="computeroutput"><a class="link" href="BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(STRING_LITERAL)</code> OR
- <code class="computeroutput">BOOST_CTS_LIT_LENGTH(STRING_LITERAL)</code>
+ <code class="computeroutput"><a class="link" href="BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a>(STRING_LITERAL)</code>
are defined.
</p>
<p>
Modified: sandbox/mirror/doc/html/char_type_switch/reference.html
==============================================================================
--- sandbox/mirror/doc/html/char_type_switch/reference.html (original)
+++ sandbox/mirror/doc/html/char_type_switch/reference.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -25,16 +25,18 @@
<div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="char_type_switch.reference"></a>Char Type Switch Reference</h2></div></div></div>
-<div class="toc"><dl><dt><span class="section">Header files</span></dt></dl></div>
+<div class="toc"><dl><dt><span class="section">Header files</span></dt></dl></div>
<p>
</p>
<div class="section" lang="en">
<div class="titlepage"><div><div><h3 class="title">
-<a name="id2585051"></a>Header files</h3></div></div></div>
+<a name="id696698"></a>Header files</h3></div></div></div>
<div class="toc"><dl>
<dt><span class="section">Header <boost/char_type_switch/choice.hpp></span></dt>
-<dt><span class="section">Header <boost/char_type_switch/switch.hpp></span></dt>
+<dt><span class="section">Header <boost/char_type_switch/char.hpp></span></dt>
+<dt><span class="section">Header <boost/char_type_switch/string.hpp></span></dt>
<dt><span class="section">Header <boost/char_type_switch/iostream.hpp></span></dt>
+<dt><span class="section">Header <boost/char_type_switch/cstring.hpp></span></dt>
</dl></div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
@@ -45,10 +47,11 @@
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
-<a name="header.boost.char_type_switch.switch.hpp"></a>Header <boost/char_type_switch/switch.hpp></h4></div></div></div>
+<a name="header.boost.char_type_switch.char.hpp"></a>Header <boost/char_type_switch/char.hpp></h4></div></div></div>
<pre class="synopsis">
<a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a>(STRING_LITERAL)
+<a class="link" href="../BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a>(STRING_LITERAL)
<a class="link" href="../BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a>(ARG)</pre>
<pre class="synopsis"><span class="bold"><strong>namespace</strong></span> boost {
<span class="bold"><strong>namespace</strong></span> cts {
@@ -56,8 +59,210 @@
}
}</pre>
</div>
-<div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title">
-<a name="header.boost.char_type_switch.iostream.hpp"></a>Header <boost/char_type_switch/iostream.hpp></h4></div></div></div></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="header.boost.char_type_switch.string.hpp"></a>Header <boost/char_type_switch/string.hpp></h4></div></div></div>
+<pre class="synopsis"><span class="bold"><strong>namespace</strong></span> boost {
+ <span class="bold"><strong>namespace</strong></span> cts {
+ <span class="bold"><strong>typedef</strong></span> ::std::char_traits<bchar> <a class="link" href="../boost/cts/bchar_traits.html" title="Type definition bchar_traits">bchar_traits</a>;
+ <span class="bold"><strong>typedef</strong></span> ::std::basic_string<bchar> <a class="link" href="../boost/cts/bstring.html" title="Type definition bstring">bstring</a>;
+ }
+}</pre>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="header.boost.char_type_switch.iostream.hpp"></a>Header <boost/char_type_switch/iostream.hpp></h4></div></div></div>
+<pre class="synopsis"><span class="bold"><strong>namespace</strong></span> boost {
+ <span class="bold"><strong>namespace</strong></span> cts {
+ <span class="bold"><strong>typedef</strong></span> ::std::basic_istream<bchar, bchar_traits> <a class="link" href="../boost/cts/bistream.html" title="Type definition bistream">bistream</a>;
+ <span class="bold"><strong>typedef</strong></span> ::std::basic_ostream<bchar, bchar_traits> <a class="link" href="../boost/cts/bostream.html" title="Type definition bostream">bostream</a>;
+ <span class="bold"><strong>typedef</strong></span> ::std::basic_iostream<bchar, bchar_traits> <a class="link" href="../boost/cts/biostream.html" title="Type definition biostream">biostream</a>;
+
+ <span class="emphasis"><em>// <a class="link" href="reference.html#id553294-bb">free-functions</a></em></span>
+ <span class="type">bistream&</span> <a class="link" href="reference.html#boost.cts.bcin_id553299">bcin</a>();
+ <span class="type">bostream&</span> <a class="link" href="reference.html#boost.cts.bcout_id553355">bcout</a>();
+ }
+}</pre>
+<div class="refsect2" lang="en">
+<a name="id697561"></a><h3>
+<a name="id553294-bb"></a><code class="computeroutput"></code> free-functions</h3>
+<div class="orderedlist"><ol type="1">
+<li>
+<pre class="literallayout"><span class="type">bistream&</span> <a name="boost.cts.bcin_id553299"></a>bcin();</pre>
+<p>Returns a reference to the standard input stream.
+ </p>
+<p>If <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">char</code> then this function returns a reference
+ to <code class="computeroutput">::std::cin</code>, otherwise if <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>,
+ then <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bcin_id553299">bcin</a></code> returns a reference to <code class="computeroutput">::std::wcin</code>.
+ </p>
+</li>
+<li>
+<pre class="literallayout"><span class="type">bostream&</span> <a name="boost.cts.bcout_id553355"></a>bcout();</pre>
+<p>Returns a reference to the standard output stream.
+ </p>
+<p>If <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">char</code> then this function returns a reference
+ to <code class="computeroutput">::std::cout</code>, otherwise if <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>,
+ then <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bcout_id553355">bcout</a></code> returns a reference to <code class="computeroutput">::std::wcout</code>.
+ </p>
+</li>
+</ol></div>
+</div>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="header.boost.char_type_switch.cstring.hpp"></a>Header <boost/char_type_switch/cstring.hpp></h4></div></div></div>
+<pre class="synopsis"><span class="bold"><strong>namespace</strong></span> boost {
+ <span class="bold"><strong>namespace</strong></span> cts {
+
+ <span class="emphasis"><em>// <a class="link" href="reference.html#id553439-bb">free-functions</a></em></span>
+ <span class="type">size_t</span> <a class="link" href="reference.html#boost.cts.bstrlen_id553444">bstrlen</a>(<span class="bold"><strong>const</strong></span> bchar*);
+ <span class="type"><span class="bold"><strong>int</strong></span></span> <a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a>(<span class="bold"><strong>const</strong></span> bchar*, <span class="bold"><strong>const</strong></span> bchar*);
+ <span class="type">bchar*</span> <a class="link" href="reference.html#boost.cts.bstrcpy_id552013">bstrcpy</a>(bchar*, <span class="bold"><strong>const</strong></span> bchar*);
+ <span class="type">bchar*</span> <a class="link" href="reference.html#boost.cts.bstrncpy_id677822">bstrncpy</a>(bchar*, <span class="bold"><strong>const</strong></span> bchar*, size_t);
+ }
+}</pre>
+<div class="refsect2" lang="en">
+<a name="id698933"></a><h3>
+<a name="id553439-bb"></a><code class="computeroutput"></code> free-functions</h3>
+<div class="orderedlist"><ol type="1">
+<li>
+<pre class="literallayout"><span class="type">size_t</span> <a name="boost.cts.bstrlen_id553444"></a>bstrlen(<span class="bold"><strong>const</strong></span> bchar* str);</pre>
+<p>Returns the length (the count of characters) of the given string without the terminating null character.
+ </p>
+<p>Calling this function is equivalent to calling <code class="computeroutput">strlen</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">char</code> or to calling <code class="computeroutput">wcslen</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="char_type_switch.bstrlen.reference.samples"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrlen_id553444">bstrlen</a></code>(<code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("foo")) == 3);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrlen_id553444">bstrlen</a></code>(<code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("foo")) == <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT_LENGTH.html" title="Macro BOOST_CTS_LIT_LENGTH">BOOST_CTS_LIT_LENGTH</a></code>("foo"));
+ //
+ const <code class="computeroutput">bchar</code> bar[] = <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("bar");
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrlen_id553444">bstrlen</a></code>(bar) == 3);
+ return 0;
+}
+</pre>
+</div>
+</li>
+<li>
+<pre class="literallayout"><span class="type"><span class="bold"><strong>int</strong></span></span> <a name="boost.cts.bstrcmp_id553545"></a>bstrcmp(<span class="bold"><strong>const</strong></span> bchar* str1, <span class="bold"><strong>const</strong></span> bchar* str2);</pre>
+<p>This function compares the given two strings and returns an integral value that indicates the relationship between them.
+ </p>
+<p>Calling this function is equivalent to calling <code class="computeroutput">strcmp</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">char</code> or to calling <code class="computeroutput">wcscmp</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>.
+ If the first string is lexicographically less than the second the return value is negative,
+ if the first string is lexicographically greater than the second the return value is positive,
+ if the strings are equal then the return value is zero.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="char_type_switch.bstrcmp.reference.samples"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ const <code class="computeroutput">bchar</code> foo[] = <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("foo");
+ const <code class="computeroutput">bchar</code> bar[] = <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("bar");
+
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(foo, bar) > 0);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(foo, foo) == 0);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(bar, foo) < 0);
+
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(foo, <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("baz")) > 0);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(foo, <code class="computeroutput"><a class="link" href="../BOOST_CTS_STRINGIZE.html" title="Macro BOOST_CTS_STRINGIZE">BOOST_CTS_STRINGIZE</a></code>(foobar)) <= 0);
+ return 0;
+}
+</pre>
+</div>
+</li>
+<li>
+<pre class="literallayout"><span class="type">bchar*</span> <a name="boost.cts.bstrcpy_id552013"></a>bstrcpy(bchar* dst, <span class="bold"><strong>const</strong></span> bchar* src);</pre>
+<p>This function copies <code class="computeroutput">src</code> into <code class="computeroutput">dst</code> including the terminating null character and returns <code class="computeroutput">dst</code>.
+ <code class="computeroutput">dst</code> should not overlap <code class="computeroutput">src</code> in memory.
+ </p>
+<p>Calling this function is equivalent to calling <code class="computeroutput">strcpy</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">char</code> or to calling <code class="computeroutput">wcscpy</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="char_type_switch.bstrcpy.reference.samples"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ <code class="computeroutput">bchar</code> aaa[4];
+ <code class="computeroutput">bchar</code> bbb[4];
+
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcpy_id552013">bstrcpy</a></code>(aaa, <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("foo"));
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcpy_id552013">bstrcpy</a></code>(bbb, <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("bar"));
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(aaa, bbb) != 0);
+
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcpy_id552013">bstrcpy</a></code>(bbb, aaa);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(aaa, bbb) == 0);
+ return 0;
+}
+</pre>
+</div>
+</li>
+<li>
+<pre class="literallayout"><span class="type">bchar*</span> <a name="boost.cts.bstrncpy_id677822"></a>bstrncpy(bchar* dst, <span class="bold"><strong>const</strong></span> bchar* src, size_t num);</pre>
+<p>This function copies the first <code class="computeroutput">num</code> characters from <code class="computeroutput">src</code> into <code class="computeroutput">dst</code> and returns <code class="computeroutput">dst</code>.
+ If the end of <code class="computeroutput">src</code> is found before <code class="computeroutput">num</code> characters are copied, <code class="computeroutput">dst</code> is padded with null characters
+ until the count of modified characters reaches <code class="computeroutput">num</code>. If <code class="computeroutput">num</code> is less or equal to the length of <code class="computeroutput">src</code>,
+ then the null character is not implicitly appended to <code class="computeroutput">dst</code>.
+ </p>
+<p>Calling this function is equivalent to calling <code class="computeroutput">strncpy</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">char</code> or to calling <code class="computeroutput">wcsncpy</code> if
+ <code class="computeroutput">bchar</code> is defined as <code class="computeroutput">wchar_t</code>.
+ </p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="char_type_switch.bstrncpy.reference.samples"></a>Examples</h6></div></div></div>
+<pre class="programlisting">
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ const size_t size = 4;
+ <code class="computeroutput">bchar</code> aaa[size];
+ <code class="computeroutput">bchar</code> bbb[size];
+
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrncpy_id677822">bstrncpy</a></code>(aaa, <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("foo"), size);
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrncpy_id677822">bstrncpy</a></code>(bbb, <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("bar"), size);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(aaa, bbb) != 0);
+
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrncpy_id677822">bstrncpy</a></code>(bbb, aaa, size);
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(aaa, bbb) == 0);
+
+ <code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrncpy_id677822">bstrncpy</a></code>(bbb, <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>("foobar"), size);
+ bbb[size-1] = <code class="computeroutput"><a class="link" href="../BOOST_CTS_LIT.html" title="Macro BOOST_CTS_LIT">BOOST_CTS_LIT</a></code>('\0');
+ assert(<code class="computeroutput"><a class="link" href="reference.html#boost.cts.bstrcmp_id553545">bstrcmp</a></code>(aaa, bbb) == 0); return 0;
+}
+</pre>
+</div>
+</li>
+</ol></div>
+</div>
+</div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
Modified: sandbox/mirror/doc/html/doc_HTML.manifest
==============================================================================
--- sandbox/mirror/doc/html/doc_HTML.manifest (original)
+++ sandbox/mirror/doc/html/doc_HTML.manifest 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -26,4 +26,10 @@
BOOST_CTS_USE_WIDE_CHARS.html
boost/cts/bchar.html
BOOST_CTS_LIT.html
+BOOST_CTS_LIT_LENGTH.html
BOOST_CTS_STRINGIZE.html
+boost/cts/bchar_traits.html
+boost/cts/bstring.html
+boost/cts/bistream.html
+boost/cts/bostream.html
+boost/cts/biostream.html
Modified: sandbox/mirror/doc/html/index.html
==============================================================================
--- sandbox/mirror/doc/html/index.html (original)
+++ sandbox/mirror/doc/html/index.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -21,7 +21,7 @@
<div class="book" lang="en">
<div class="titlepage">
<div><div><h1 class="title">
-<a name="id2448166"></a>The Mirror library documentation</h1></div></div>
+<a name="id587278"></a>The Mirror library documentation</h1></div></div>
<hr>
</div>
<div class="toc">
Modified: sandbox/mirror/doc/html/mirror.html
==============================================================================
--- sandbox/mirror/doc/html/mirror.html (original)
+++ sandbox/mirror/doc/html/mirror.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -34,7 +34,7 @@
</div></div>
<div><p class="copyright">Copyright © 2008 Matúš Chochlík</p></div>
<div><div class="legalnotice">
-<a name="id2622985"></a><p>Use, modification and distribution is subject to the Boost
+<a name="id688761"></a><p>Use, modification and distribution is subject to the Boost
Software License, Version 1.0. (See accompanying file
<code class="filename">LICENSE_1_0.txt</code> or copy at http://www.boost.org/LICENSE_1_0.txt)
</p>
@@ -51,9 +51,9 @@
<dt><span class="section">Tutorial</span></dt>
<dt><span class="section">Mirror Reference</span></dt>
<dd><dl>
-<dt><span class="section">Meta Objects</span></dt>
-<dt><span class="section">Traits</span></dt>
-<dt><span class="section">Header files</span></dt>
+<dt><span class="section">Meta Objects</span></dt>
+<dt><span class="section">Traits</span></dt>
+<dt><span class="section">Header files</span></dt>
</dl></dd>
</dl>
</div>
@@ -292,7 +292,7 @@
</p>
<p>
This is when <a class="link" href="mirror.html" title="Chapter 1. Mirror">Mirror</a> comes in handy. One of the basic
- facilities is the <code class="computeroutput">boost::mirror::<a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a></code> class template.
+ facilities is the <code class="computeroutput">boost::mirror::meta_type</code> class template.
Among other things this template has two member functions - <code class="computeroutput">base_name</code>
and <code class="computeroutput">full_name</code> that return the base type name without the nested
name specifier and the full type name with the nested name specifier respectively.
@@ -301,7 +301,7 @@
and portable.
</p>
<p>
- Using <code class="computeroutput"><a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a></code> the <code class="computeroutput">get_typename<T>()</code>
+ Using <code class="computeroutput">meta_type</code> the <code class="computeroutput">get_typename<T>()</code>
function could look like this:
</p>
<pre class="programlisting">
@@ -319,7 +319,7 @@
</pre>
<p>
With native C++ types and some common types from the STL
- and from Boost the <code class="computeroutput"><a class="link" href="boost/mirror/meta_type.html" title="Class template meta_type">meta_type</a></code>
+ and from Boost the <code class="computeroutput">meta_type</code>
works out of the box.
</p>
</div>
Modified: sandbox/mirror/doc/html/mirror/reference.html
==============================================================================
--- sandbox/mirror/doc/html/mirror/reference.html (original)
+++ sandbox/mirror/doc/html/mirror/reference.html 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -26,19 +26,19 @@
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="mirror.reference"></a>Mirror Reference</h2></div></div></div>
<div class="toc"><dl>
-<dt><span class="section">Meta Objects</span></dt>
-<dt><span class="section">Traits</span></dt>
-<dt><span class="section">Header files</span></dt>
+<dt><span class="section">Meta Objects</span></dt>
+<dt><span class="section">Traits</span></dt>
+<dt><span class="section">Header files</span></dt>
</dl></div>
<p>
</p>
<div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title">
-<a name="id2585480"></a>Meta Objects</h3></div></div></div></div>
+<a name="id689149"></a>Meta Objects</h3></div></div></div></div>
<div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title">
-<a name="id2585487"></a>Traits</h3></div></div></div></div>
+<a name="id689156"></a>Traits</h3></div></div></div></div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h3 class="title">
-<a name="id2585494"></a>Header files</h3></div></div></div>
+<a name="id689163"></a>Header files</h3></div></div></div>
<div class="toc"><dl>
<dt><span class="section">Header <boost/mirror/meta_namespace.hpp></span></dt>
<dt><span class="section">Header <boost/mirror/meta_type.hpp></span></dt>
Modified: sandbox/mirror/libs/char_type_switch/doc/reference.xml
==============================================================================
--- sandbox/mirror/libs/char_type_switch/doc/reference.xml (original)
+++ sandbox/mirror/libs/char_type_switch/doc/reference.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -8,8 +8,11 @@
<section>
<title>Header files</title>
<xi:include href="reference/choice.xml"/>
+ <xi:include href="reference/char.xml"/>
<xi:include href="reference/string.xml"/>
<xi:include href="reference/iostream.xml"/>
+
+ <xi:include href="reference/cstring.xml"/>
</section>
</library-reference>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/char.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/char.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<header name="boost/char_type_switch/char.hpp"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <using-namespace name="boost"/>
+ <using-namespace name="boost::cts"/>
+
+ <namespace name="boost">
+ <namespace name="cts">
+
+ <xi:include href="typedef_bchar.xml"/>
+
+ </namespace><!-- cts -->
+ </namespace><!-- boost -->
+
+ <xi:include href="macro_LITERAL.xml"/>
+ <xi:include href="macro_LIT_LENGTH.xml"/>
+ <xi:include href="macro_STRINGIZE.xml"/>
+
+</header>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/cstring.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/cstring.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<header name="boost/char_type_switch/cstring.hpp"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <using-namespace name="boost"/>
+ <using-namespace name="boost::cts"/>
+
+ <namespace name="boost">
+ <namespace name="cts">
+
+ <free-function-group name="free-functions">
+ <xi:include href="function_bstrlen.xml"/>
+ <xi:include href="function_bstrcmp.xml"/>
+ <xi:include href="function_bstrcpy.xml"/>
+ <xi:include href="function_bstrncpy.xml"/>
+ </free-function-group>
+
+ </namespace><!-- cts -->
+ </namespace><!-- boost -->
+
+
+</header>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/function_bcin.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/function_bcin.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<function name="bcin"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type><classname>bistream</classname>&</type>
+ <purpose>
+ <para>Returns a reference to the standard input stream.
+ </para>
+ </purpose>
+ <description>
+ <para>If <code><classname>bchar</classname></code> is defined as <code>char</code> then this function returns a reference
+ to <code>::std::cin</code>, otherwise if <code><classname>bchar</classname></code> is defined as <code>wchar_t</code>,
+ then <code><functionname>bcin</functionname></code> returns a reference to <code>::std::wcin</code>.
+ </para>
+ </description>
+</function>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/function_bcout.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/function_bcout.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<function name="bcout"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type><classname>bostream</classname>&</type>
+ <purpose>
+ <para>Returns a reference to the standard output stream.
+ </para>
+ </purpose>
+ <description>
+ <para>If <code><classname>bchar</classname></code> is defined as <code>char</code> then this function returns a reference
+ to <code>::std::cout</code>, otherwise if <code><classname>bchar</classname></code> is defined as <code>wchar_t</code>,
+ then <code><functionname>bcout</functionname></code> returns a reference to <code>::std::wcout</code>.
+ </para>
+ </description>
+</function>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrcmp.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrcmp.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<function name="bstrcmp"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+ id="char_type_switch.bstrcmp"
+>
+ <type>int</type>
+ <parameter name="str1">
+ <paramtype>const <classname>bchar</classname>*</paramtype>
+ </parameter>
+ <parameter name="str2">
+ <paramtype>const <classname>bchar</classname>*</paramtype>
+ </parameter>
+ <purpose>
+ <para>This function compares the given two strings and returns an integral value that indicates the relationship between them.
+ </para>
+ </purpose>
+ <description>
+ <para>Calling this function is equivalent to calling <code>strcmp</code> if
+ <code><classname>bchar</classname></code> is defined as <code>char</code> or to calling <code>wcscmp</code> if
+ <code><classname>bchar</classname></code> is defined as <code>wchar_t</code>.
+ If the first string is lexicographically less than the second the return value is negative,
+ if the first string is lexicographically greater than the second the return value is positive,
+ if the strings are equal then the return value is zero.
+ </para>
+ <section id="char_type_switch.bstrcmp.reference.samples">
+ <title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ const <classname>bchar</classname> foo[] = <macroname>BOOST_CTS_LIT</macroname>("foo");
+ const <classname>bchar</classname> bar[] = <macroname>BOOST_CTS_LIT</macroname>("bar");
+
+ assert(<functionname>bstrcmp</functionname>(foo, bar) > 0);
+ assert(<functionname>bstrcmp</functionname>(foo, foo) == 0);
+ assert(<functionname>bstrcmp</functionname>(bar, foo) < 0);
+
+ assert(<functionname>bstrcmp</functionname>(foo, <macroname>BOOST_CTS_LIT</macroname>("baz")) > 0);
+ assert(<functionname>bstrcmp</functionname>(foo, <macroname>BOOST_CTS_STRINGIZE</macroname>(foobar)) <= 0);
+ return 0;
+}
+</programlisting>
+ </section>
+ </description>
+</function>
+
Added: sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrcpy.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrcpy.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<function name="bstrcpy"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type><classname>bchar</classname>*</type>
+ <parameter name="dst">
+ <paramtype><classname>bchar</classname>*</paramtype>
+ </parameter>
+ <parameter name="src">
+ <paramtype>const <classname>bchar</classname>*</paramtype>
+ </parameter>
+ <purpose>
+ <para>This function copies <code>src</code> into <code>dst</code> including the terminating null character and returns <code>dst</code>.
+ <code>dst</code> should not overlap <code>src</code> in memory.
+ </para>
+ </purpose>
+ <description>
+ <para>Calling this function is equivalent to calling <code>strcpy</code> if
+ <code><classname>bchar</classname></code> is defined as <code>char</code> or to calling <code>wcscpy</code> if
+ <code><classname>bchar</classname></code> is defined as <code>wchar_t</code>.
+ </para>
+ <section id="char_type_switch.bstrcpy.reference.samples">
+ <title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ <classname>bchar</classname> aaa[4];
+ <classname>bchar</classname> bbb[4];
+
+ <functionname>bstrcpy</functionname>(aaa, <macroname>BOOST_CTS_LIT</macroname>("foo"));
+ <functionname>bstrcpy</functionname>(bbb, <macroname>BOOST_CTS_LIT</macroname>("bar"));
+ assert(<functionname>bstrcmp</functionname>(aaa, bbb) != 0);
+
+ <functionname>bstrcpy</functionname>(bbb, aaa);
+ assert(<functionname>bstrcmp</functionname>(aaa, bbb) == 0);
+ return 0;
+}
+</programlisting>
+ </section>
+ </description>
+</function>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrlen.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrlen.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<function name="bstrlen"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type>size_t</type>
+ <parameter name="str">
+ <paramtype>const <classname>bchar</classname>*</paramtype>
+ </parameter>
+ <purpose>
+ <para>Returns the length (the count of characters) of the given string without the terminating null character.
+ </para>
+ </purpose>
+ <description>
+ <para>Calling this function is equivalent to calling <code>strlen</code> if
+ <code><classname>bchar</classname></code> is defined as <code>char</code> or to calling <code>wcslen</code> if
+ <code><classname>bchar</classname></code> is defined as <code>wchar_t</code>.
+ </para>
+ <section id="char_type_switch.bstrlen.reference.samples">
+ <title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ assert(<functionname>bstrlen</functionname>(<macroname>BOOST_CTS_LIT</macroname>("foo")) == 3);
+ assert(<functionname>bstrlen</functionname>(<macroname>BOOST_CTS_LIT</macroname>("foo")) == <macroname>BOOST_CTS_LIT_LENGTH</macroname>("foo"));
+ //
+ const <classname>bchar</classname> bar[] = <macroname>BOOST_CTS_LIT</macroname>("bar");
+ assert(<functionname>bstrlen</functionname>(bar) == 3);
+ return 0;
+}
+</programlisting>
+ </section>
+ </description>
+</function>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrncpy.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/function_bstrncpy.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<function name="bstrncpy"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type><classname>bchar</classname>*</type>
+ <parameter name="dst">
+ <paramtype><classname>bchar</classname>*</paramtype>
+ </parameter>
+ <parameter name="src">
+ <paramtype>const <classname>bchar</classname>*</paramtype>
+ </parameter>
+ <parameter name="num">
+ <paramtype>size_t</paramtype>
+ </parameter>
+ <purpose>
+ <para>This function copies the first <code>num</code> characters from <code>src</code> into <code>dst</code> and returns <code>dst</code>.
+ If the end of <code>src</code> is found before <code>num</code> characters are copied, <code>dst</code> is padded with null characters
+ until the count of modified characters reaches <code>num</code>. If <code>num</code> is less or equal to the length of <code>src</code>,
+ then the null character is not implicitly appended to <code>dst</code>.
+ </para>
+ </purpose>
+ <description>
+ <para>Calling this function is equivalent to calling <code>strncpy</code> if
+ <code><classname>bchar</classname></code> is defined as <code>char</code> or to calling <code>wcsncpy</code> if
+ <code><classname>bchar</classname></code> is defined as <code>wchar_t</code>.
+ </para>
+ <section id="char_type_switch.bstrncpy.reference.samples">
+ <title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/cstring.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ const size_t size = 4;
+ <classname>bchar</classname> aaa[size];
+ <classname>bchar</classname> bbb[size];
+
+ <functionname>bstrncpy</functionname>(aaa, <macroname>BOOST_CTS_LIT</macroname>("foo"), size);
+ <functionname>bstrncpy</functionname>(bbb, <macroname>BOOST_CTS_LIT</macroname>("bar"), size);
+ assert(<functionname>bstrcmp</functionname>(aaa, bbb) != 0);
+
+ <functionname>bstrncpy</functionname>(bbb, aaa, size);
+ assert(<functionname>bstrcmp</functionname>(aaa, bbb) == 0);
+
+ <functionname>bstrncpy</functionname>(bbb, <macroname>BOOST_CTS_LIT</macroname>("foobar"), size);
+ bbb[size-1] = <macroname>BOOST_CTS_LIT</macroname>('\0');
+ assert(<functionname>bstrcmp</functionname>(aaa, bbb) == 0); return 0;
+}
+</programlisting>
+ </section>
+ </description>
+</function>
Modified: sandbox/mirror/libs/char_type_switch/doc/reference/iostream.xml
==============================================================================
--- sandbox/mirror/libs/char_type_switch/doc/reference/iostream.xml (original)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/iostream.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -10,6 +10,15 @@
<namespace name="boost">
<namespace name="cts">
+ <xi:include href="typedef_bistream.xml"/>
+ <xi:include href="typedef_bostream.xml"/>
+ <xi:include href="typedef_biostream.xml"/>
+
+ <free-function-group name="free-functions">
+ <xi:include href="function_bcin.xml"/>
+ <xi:include href="function_bcout.xml"/>
+ </free-function-group>
+
</namespace><!-- cts -->
</namespace><!-- boost -->
</header>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/macro_LIT_LENGTH.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/macro_LIT_LENGTH.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<macro name="BOOST_CTS_LIT_LENGTH"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+ kind="functionlike"
+>
+ <using-namespace name="boost"/>
+ <using-namespace name="boost::cts"/>
+
+ <macro-parameter name="STRING_LITERAL">
+ </macro-parameter>
+ <purpose>
+ <para>This macro expands into the length of the given string literal without
+ the terminating null character. The "returned" length is a compile-time constant.
+ </para>
+ </purpose>
+ <description>
+ <para>This macro is defined as follows:
+<programlisting>
+#define <macroname>BOOST_CTS_LIT_LENGTH</macroname>(STRING_LITERAL) \
+ ((sizeof(<macroname>BOOST_CTS_LIT</macroname>(STRING_LITERAL))/sizeof(::boost::cts::<classname>bchar</classname>))-1)
+</programlisting>
+ </para>
+ <section id="char_type_switch.LIT_LENGTH.reference.samples">
+ <title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ assert(<macroname>BOOST_CTS_LIT_LENGTH</macroname>("foo") == 3);
+ return 0;
+}
+</programlisting>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ assert(
+ <macroname>BOOST_CTS_LIT_LENGTH</macroname>("foo") ==
+ ::boost::cts::<functionname>bstrlen</functionname>(<macroname>BOOST_CTS_LIT</macroname>("foo"))
+ );
+ return 0;
+}
+</programlisting>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ <classname>bchar</classname> foo[<macroname>BOOST_CTS_LIT_LENGTH</macroname>("foo")+1];
+ <functionname>bstrcpy</functionname>(foo, <macroname>BOOST_CTS_LIT</macroname>("foo"));
+ assert(<functionname>bstrcmp</functionname>(foo, <macroname>BOOST_CTS_LIT</macroname>("foo")) == 0);
+ return 0;
+}
+</programlisting>
+ </section>
+ </description>
+</macro>
Modified: sandbox/mirror/libs/char_type_switch/doc/reference/string.xml
==============================================================================
--- sandbox/mirror/libs/char_type_switch/doc/reference/string.xml (original)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/string.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<header name="boost/char_type_switch/switch.hpp"
+<header name="boost/char_type_switch/string.hpp"
xmlns:xi="http://www.w3.org/2001/XInclude"
>
<using-namespace name="boost"/>
@@ -10,12 +10,11 @@
<namespace name="boost">
<namespace name="cts">
- <xi:include href="typedef_bchar.xml"/>
-
+ <xi:include href="typedef_bchar_traits.xml"/>
+ <xi:include href="typedef_bstring.xml"/>
+
</namespace><!-- cts -->
</namespace><!-- boost -->
- <xi:include href="macro_LITERAL.xml"/>
- <xi:include href="macro_STRINGIZE.xml"/>
</header>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bchar_traits.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bchar_traits.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<typedef name="bchar_traits"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type>::std::char_traits<<classname>bchar</classname>></type>
+ <purpose>
+ <para>The <code>::std::char_traits</code> for the <code><classname>bchar</classname></code> character type.
+ </para>
+ </purpose>
+ <description>
+ <para>The <code><classname>bchar_traits</classname></code> type is defined as abbreviation for
+ <code>::std::char_traits<<classname>bchar</classname>></code>.
+ </para>
+ </description>
+</typedef>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/typedef_biostream.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/typedef_biostream.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<typedef name="biostream"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type>::std::basic_iostream<<classname>bchar</classname>, <classname>bchar_traits</classname>></type>
+ <purpose>
+ <para>This type is defined as <code>::std::iostream</code> if <code><classname>bchar</classname></code> is <code>char</code>
+ and is defined as <code>::std::wiostream</code> if <code><classname>bchar</classname></code> is <code>wchar_t</code>.
+ </para>
+ </purpose>
+ <description>
+ <para>The <code><classname>biostream</classname></code> type is defined as an abbreviation for
+ <code>::std::basic_iostream<<classname>bchar</classname>, <classname>bchar_traits</classname>></code>.
+ </para>
+ <xi:include href="../samples/iostream_samples.xml"/>
+ </description>
+</typedef>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bistream.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bistream.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<typedef name="bistream"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type>::std::basic_istream<<classname>bchar</classname>, <classname>bchar_traits</classname>></type>
+ <purpose>
+ <para>This type is defined as <code>::std::istream</code> if <code><classname>bchar</classname></code> is <code>char</code>
+ and is defined as <code>::std::wistream</code> if <code><classname>bchar</classname></code> is <code>wchar_t</code>.
+ </para>
+ </purpose>
+ <description>
+ <para>The <code><classname>bistream</classname></code> type is defined as an abbreviation for
+ <code>::std::basic_istream<<classname>bchar</classname>, <classname>bchar_traits</classname>></code>.
+ </para>
+ <xi:include href="../samples/iostream_samples.xml"/>
+ </description>
+</typedef>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bostream.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bostream.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<typedef name="bostream"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type>::std::basic_ostream<<classname>bchar</classname>, <classname>bchar_traits</classname>></type>
+ <purpose>
+ <para>This type is defined as <code>::std::ostream</code> if <code><classname>bchar</classname></code> is <code>char</code>
+ and is defined as <code>::std::wostream</code> if <code><classname>bchar</classname></code> is <code>wchar_t</code>.
+ </para>
+ </purpose>
+ <description>
+ <para>The <code><classname>bostream</classname></code> type is defined as an abbreviation for
+ <code>::std::basic_ostream<<classname>bchar</classname>, <classname>bchar_traits</classname>></code>.
+ </para>
+ <xi:include href="../samples/iostream_samples.xml"/>
+ </description>
+</typedef>
Added: sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bstring.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/reference/typedef_bstring.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<typedef name="bstring"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+ <type>::std::basic_string<<classname>bchar</classname>></type>
+ <purpose>
+ <para>This type is basically defined as <code>::std::string</code> if <code><classname>bchar</classname></code> is <code>char</code>
+ and is defined as <code>::std::wstring</code> if <code><classname>bchar</classname></code> is <code>wchar_t</code>.
+ </para>
+ </purpose>
+ <description>
+ <para>The <code><classname>bstring</classname></code> type is defined as an abbreviation for
+ <code>::std::basic_string<<classname>bchar</classname>></code>.
+ </para>
+ <section id="char_type_switch.bstring.reference.samples">
+ <title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+
+int main(void)
+{
+ using namespace ::boost::cts;
+ <classname>bstring</classname> foobar(<macroname>BOOST_STR_LIT</macroname>("foo"));
+ foo.append(<classname>bstring</classname>(<macroname>BOOST_STR_LIT</macroname>("bar")));
+ assert(foobar == <classname>bstring</classname>(<macroname>BOOST_STR_LIT</macroname>("foobar")));
+ return 0;
+}
+</programlisting>
+ </section>
+ </description>
+</typedef>
Added: sandbox/mirror/libs/char_type_switch/doc/samples/iostream_samples.xml
==============================================================================
--- (empty file)
+++ sandbox/mirror/libs/char_type_switch/doc/samples/iostream_samples.xml 2008-07-24 06:07:57 EDT (Thu, 24 Jul 2008)
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
+ "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<section
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+<title>Examples</title>
+<programlisting>
+#include <assert.h>
+#include <boost/char_type_switch/string.hpp>
+#include <boost/char_type_switch/iostream.hpp>
+
+int main(void)
+{
+ using namespace ::std;
+ using namespace ::boost::cts;
+ <classname>bistream</classname>& in = <functionname>bcin</functionname>();
+ <classname>bostream</classname>& out = <functionname>bcout</functionname>();
+
+ bstring str;
+ out << <macroname>BOOST_CTS_LIT</macroname>("Enter a string: ") << flush;
+ in >> str;
+ out << <macroname>BOOST_CTS_LIT</macroname>("The string is ") <<
+ str.length() <<
+ <macroname>BOOST_CTS_LIT</macroname>(" characters long") <<
+ endl;
+ return 0;
+}
+</programlisting>
+</section>
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk