aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/docs/doxygen
diff options
context:
space:
mode:
authorPhil Edwards <pme@gcc.gnu.org>2003-02-26 00:02:16 +0000
committerPhil Edwards <pme@gcc.gnu.org>2003-02-26 00:02:16 +0000
commitbd2726e0ca52721f244e7683d7a56f9049f26434 (patch)
tree2b79d12cb906cd2627030881c85a05482b0dbdd8 /libstdc++-v3/docs/doxygen
parentfc943f55426024c7cb2e43d24dd90c2b2e103f70 (diff)
downloadgcc-bd2726e0ca52721f244e7683d7a56f9049f26434.zip
gcc-bd2726e0ca52721f244e7683d7a56f9049f26434.tar.gz
gcc-bd2726e0ca52721f244e7683d7a56f9049f26434.tar.bz2
Intro.3: Update with new (proper) names.
2003-02-25 Phil Edwards <pme@gcc.gnu.org> * docs/doxygen/Intro.3: Update with new (proper) names. * docs/doxygen/TODO: Update. * docs/doxygen/run_doxygen: More comments, fix up man pages. Fake entries for standard typedefs. * docs/doxygen/user.cfg.in: Turn INLINE_INHERITED_MEMB back on. * docs/html/documentation.html: Top-level man page is now called C++Intro. * include/std/std_limits.h: Doxygenate. From-SVN: r63433
Diffstat (limited to 'libstdc++-v3/docs/doxygen')
-rw-r--r--libstdc++-v3/docs/doxygen/Intro.317
-rw-r--r--libstdc++-v3/docs/doxygen/TODO7
-rw-r--r--libstdc++-v3/docs/doxygen/run_doxygen43
-rw-r--r--libstdc++-v3/docs/doxygen/user.cfg.in2
4 files changed, 53 insertions, 16 deletions
diff --git a/libstdc++-v3/docs/doxygen/Intro.3 b/libstdc++-v3/docs/doxygen/Intro.3
index fc44025..26b6251 100644
--- a/libstdc++-v3/docs/doxygen/Intro.3
+++ b/libstdc++-v3/docs/doxygen/Intro.3
@@ -1,8 +1,8 @@
.\" t
.\" This man page is released under the FDL as part of libstdc++-v3.
-.TH Intro 3 "27 March 2002" "GNU libstdc++-v3" "Standard C++ Library"
+.TH C++Intro 3 "25 Febuary 2003" "GNU libstdc++-v3" "Standard C++ Library"
.SH NAME
-Intro \- Introduction to the GNU libstdc++-v3 man pages
+C++Intro \- Introduction to the GNU libstdc++-v3 man pages
.SH DESCRIPTION
This man page serves as a brief introduction to the GNU implementation of
the Standard C++ Library. For a better introduction and more complete
@@ -12,10 +12,10 @@ homepage listed at the end.
.P
All standard library entities are declared within
.I namespace std
-and have manual entries beginning with "std_". For example, to see
+and have manual entries beginning with "std::". For example, to see
documentation of the template class
.I std::vector
-one would use "man std_vector". Some entities do not have a separate man
+one would use "man std::vector". Some entities do not have a separate man
page; for those see the main listing in "man Namespace_Std".
.P
All the man pages are automatically generated by Doxygen. For more
@@ -37,7 +37,7 @@ Binder_functors Functors which "remember" an argument.
Comparison_functors Functors wrapping built-in comparisons.
Containers An introduction to container classes.
Func_ptr_functors Functors for use with pointers to functions.
-Intro This page.
+C++Intro This page.
Intro_functors An introduction to function objects, or functors.
Iterator_types Programatically distinguishing iterators/pointers.
Logical_functors Functors wrapping the Boolean operations.
@@ -112,10 +112,9 @@ need to know about it, but it can be useful. See FAQ 2.5.
.TP
.I libstdc++.so[.N]
The library implementation in shared object form. This will be used in
-preference to the static archive form by default. Currently N will either
-start with 3 or with 4, but your system vendor may change the name as they
-see fit. If N is in the 2.x series, then you are looking at the old
-libstdc++-v2 library, which we do not maintain.
+preference to the static archive form by default. N will be a number equal
+to or greater than 3. If N is in the 2.x series, then you are looking at
+the old libstdc++-v2 library, which we do not maintain.
.TP
.I libstdc++.la
.TP
diff --git a/libstdc++-v3/docs/doxygen/TODO b/libstdc++-v3/docs/doxygen/TODO
index 0b6e3d6..3c89590 100644
--- a/libstdc++-v3/docs/doxygen/TODO
+++ b/libstdc++-v3/docs/doxygen/TODO
@@ -19,11 +19,12 @@ entity to the generated TODO page.
-----------------------------------------------------------
c17 FINISHED (Nothing in Clause 17 "exists" in terms of code.)
-c18 <limits>, Note A
+c18 FINISHED, Note A
c19 Note A
c20 Note A
-c21 Untouched, Note B
-c22 Untouched
+c21 Untouched (top-level class note for basic_string done),
+ Note B
+c22 Untouched; see docs/html/22_locale/*
c23 See doxygroups.cc and Note B. Notes on what invalidates
iterators need to be added. std::list-specific memfns need
to be filled out.
diff --git a/libstdc++-v3/docs/doxygen/run_doxygen b/libstdc++-v3/docs/doxygen/run_doxygen
index 6a0806c..5813b31 100644
--- a/libstdc++-v3/docs/doxygen/run_doxygen
+++ b/libstdc++-v3/docs/doxygen/run_doxygen
@@ -1,7 +1,7 @@
#!/bin/sh
# Runs doxygen and massages the output files.
-# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
#
# Synopsis: run_doxygen --mode=[user|maint|man] v3srcdir v3builddir
#
@@ -154,6 +154,11 @@ test $do_html = yes && {
-e "s=@DATE@=${DATEtext}=" \
${srcdir}/docs/doxygen/mainpage.html > ${outdir}/html_${mode}/index.html
cd ${outdir}/html_${mode}
+ # The following bit of line noise changes annoying
+ # std::foo < typename _Ugly1, typename _Ugly2, .... _DefaultUgly17 >
+ # to user-friendly
+ # std::foo
+ # in the major "Compound List" page.
sed -e 's=\(::[[:alnum:]_]*\)&lt; .* &gt;=\1=' annotated.html > annstrip.html
mv annstrip.html annotated.html
cp ${srcdir}/docs/doxygen/tables.html tables.html
@@ -231,7 +236,40 @@ a\
mv TEMP $f
done
-cp ${srcdir}/docs/doxygen/Intro.3 .
+# Also, break this (generated) line up. It's ugly as sin.
+problematic=`grep -l '[^^]Definition at line' *.3`
+for f in $problematic; do
+ sed 's/Definition at line/\
+.PP\
+&/' $f > TEMP
+ mv TEMP $f
+done
+
+cp ${srcdir}/docs/doxygen/Intro.3 C++Intro.3
+
+# Why didn't I do this at the start? Were rabid weasels eating my brain?
+# Who the fsck would "man std_vector" when the class isn't named that?
+for f in std_*; do
+ newname=`echo $f | sed 's/^std_/std::/'`
+ mv $f $newname
+done
+for f in __gnu_cxx_*; do
+ newname=`echo $f | sed 's/^__gnu_cxx_/__gnu_cxx::/'`
+ mv $f $newname
+done
+for f in *__policy_*; do
+ newname=`echo $f | sed 's/__policy_/__policy::/'`
+ mv $f $newname
+done
+
+# Also, for some reason, typedefs don't get their own man pages. Sigh.
+for f in ios streambuf istream ostream iostream stringbuf \
+ istringstream ostringstream stringstream filebuf ifstream \
+ ofstream fstream string;
+do
+ echo ".so man3/std::basic_${f}.3" > std::${f}.3
+ echo ".so man3/std::basic_${f}.3" > std::w${f}.3
+done
echo ::
echo :: Man pages in ${outdir}/man
@@ -243,4 +281,3 @@ echo ::
exit 0
# vim:ts=4:et:
-
diff --git a/libstdc++-v3/docs/doxygen/user.cfg.in b/libstdc++-v3/docs/doxygen/user.cfg.in
index 3d1f77a..f785f2b 100644
--- a/libstdc++-v3/docs/doxygen/user.cfg.in
+++ b/libstdc++-v3/docs/doxygen/user.cfg.in
@@ -127,7 +127,7 @@ ALWAYS_DETAILED_SEC = YES
# ordinary class members. Constructors, destructors and assignment operators of
# the base classes will not be shown.
-INLINE_INHERITED_MEMB = NO
+INLINE_INHERITED_MEMB = YES
# pedwards -- this is useful, but ch27 gets huge
# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full