mirror of
https://github.com/boostorg/boostbook.git
synced 2025-05-09 15:03:57 +00:00
Added support for new boostbook <access> element for documenting non-public
class members. function.xsl, type.xsl, utility.xsl: Added support for <access> elements to allow nonpublic access specifiers for class member documentation. boostbook.dtd: Updated to reflect new <access> element. Updated Peter Simons email address. Added mention of boost license. reference.dtdxml: Added reference documentation for new <access> element. Removed some obsolete remarks from the description of inherit element. reference.xml: The changes to this file were generated by applying dtd2boostbook.xsl to the updated reference.dtdxml file. [SVN r40555]
This commit is contained in:
parent
ba2b0af02c
commit
677773ea5b
@ -21,22 +21,18 @@
|
|||||||
<entity name="boost.class.content"
|
<entity name="boost.class.content"
|
||||||
type="param"
|
type="param"
|
||||||
>
|
>
|
||||||
<text-expanded>template?, inherit*, purpose?, description?,
|
<text-expanded>template?, inherit*, purpose?, description?,
|
||||||
(static-constant|typedef|enum|
|
(access|%boost.class.mix;)*</text-expanded>
|
||||||
copy-assignment|constructor|destructor|method-group|
|
<text>template?, inherit*, purpose?, description?,
|
||||||
free-function-group|function|method|overloaded-function|
|
(access|%boost.class.mix;)*</text>
|
||||||
overloaded-method|data-member|class|class-specialization|struct|
|
|
||||||
struct-specialization|union|union-specialization)*</text-expanded>
|
|
||||||
<text>template?, inherit*, purpose?, description?,
|
|
||||||
(%boost.class.mix;)*</text>
|
|
||||||
</entity>
|
</entity>
|
||||||
|
|
||||||
<entity name="boost.function.semantics"
|
<entity name="boost.function.semantics"
|
||||||
type="param"
|
type="param"
|
||||||
>
|
>
|
||||||
<text-expanded>purpose?, description?, requires?, effects?, postconditions?,
|
<text-expanded>purpose?, description?, requires?, effects?, postconditions?,
|
||||||
returns?, throws?, complexity?, notes?, rationale?</text-expanded>
|
returns?, throws?, complexity?, notes?, rationale?</text-expanded>
|
||||||
<text>purpose?, description?, requires?, effects?, postconditions?,
|
<text>purpose?, description?, requires?, effects?, postconditions?,
|
||||||
returns?, throws?, complexity?, notes?, rationale?</text>
|
returns?, throws?, complexity?, notes?, rationale?</text>
|
||||||
</entity>
|
</entity>
|
||||||
|
|
||||||
@ -98,21 +94,26 @@
|
|||||||
id CDATA #IMPLIED</text>
|
id CDATA #IMPLIED</text>
|
||||||
</entity>
|
</entity>
|
||||||
|
|
||||||
<entity name="boost.class.mix"
|
<entity name="boost.class.members"
|
||||||
type="param"
|
type="param"
|
||||||
>
|
>
|
||||||
<text-expanded>static-constant|typedef|enum|
|
<text-expanded>static-constant|typedef|enum|
|
||||||
copy-assignment|constructor|destructor|method-group|
|
copy-assignment|constructor|destructor|method-group|
|
||||||
free-function-group|function|method|overloaded-function|
|
method|overloaded-method|data-member|class|class-specialization|struct|
|
||||||
overloaded-method|data-member|class|class-specialization|struct|
|
|
||||||
struct-specialization|union|union-specialization</text-expanded>
|
struct-specialization|union|union-specialization</text-expanded>
|
||||||
<text>static-constant|typedef|enum|
|
<text>static-constant|typedef|enum|
|
||||||
copy-assignment|constructor|destructor|method-group|
|
copy-assignment|constructor|destructor|method-group|
|
||||||
free-function-group|function|method|overloaded-function|
|
|method|overloaded-method|data-member|class|class-specialization|struct|
|
||||||
overloaded-method|data-member|class|class-specialization|struct|
|
|
||||||
struct-specialization|union|union-specialization</text>
|
struct-specialization|union|union-specialization</text>
|
||||||
</entity>
|
</entity>
|
||||||
|
|
||||||
|
<entity name="boost.class.mix"
|
||||||
|
type="param"
|
||||||
|
>
|
||||||
|
<text-expanded>free-function-group|function|overloaded-function|%boost.class.members;</text-expanded>
|
||||||
|
<text>free-function-group|function|overloaded-function|%boost.class.members;</text>
|
||||||
|
</entity>
|
||||||
|
|
||||||
<entity name="boost.testsuite.tests"
|
<entity name="boost.testsuite.tests"
|
||||||
type="param"
|
type="param"
|
||||||
>
|
>
|
||||||
@ -196,14 +197,10 @@
|
|||||||
<entity name="boost.class-specialization.content"
|
<entity name="boost.class-specialization.content"
|
||||||
type="param"
|
type="param"
|
||||||
>
|
>
|
||||||
<text-expanded>template?, specialization?, inherit?, purpose?, description?,
|
<text-expanded>template?, specialization?, inherit?, purpose?, description?,
|
||||||
(static-constant|typedef|enum|
|
(access|%boost.class.mix;)*</text-expanded>
|
||||||
copy-assignment|constructor|destructor|method-group|
|
<text>template?, specialization?, inherit?, purpose?, description?,
|
||||||
free-function-group|function|method|overloaded-function|
|
(access|%boost.class.mix;)*</text>
|
||||||
overloaded-method|data-member|class|class-specialization|struct|
|
|
||||||
struct-specialization|union|union-specialization)*</text-expanded>
|
|
||||||
<text>template?, specialization?, inherit?, purpose?, description?,
|
|
||||||
(%boost.class.mix;)*</text>
|
|
||||||
</entity>
|
</entity>
|
||||||
|
|
||||||
<entity name="library.content"
|
<entity name="library.content"
|
||||||
@ -223,6 +220,7 @@
|
|||||||
<element-name name="purpose" occurrence="?"/>
|
<element-name name="purpose" occurrence="?"/>
|
||||||
<element-name name="description" occurrence="?"/>
|
<element-name name="description" occurrence="?"/>
|
||||||
<or-group occurrence="*">
|
<or-group occurrence="*">
|
||||||
|
<element-name name="access"/>
|
||||||
<element-name name="static-constant"/>
|
<element-name name="static-constant"/>
|
||||||
<element-name name="typedef"/>
|
<element-name name="typedef"/>
|
||||||
<element-name name="enum"/>
|
<element-name name="enum"/>
|
||||||
@ -296,7 +294,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="link-test">
|
<attlist name="link-test">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED</attdecl>
|
name CDATA #IMPLIED</attdecl>
|
||||||
<attribute name="filename"
|
<attribute name="filename"
|
||||||
@ -329,7 +327,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="link-fail-test">
|
<attlist name="link-fail-test">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED</attdecl>
|
name CDATA #IMPLIED</attdecl>
|
||||||
<attribute name="filename"
|
<attribute name="filename"
|
||||||
@ -494,7 +492,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="destructor">
|
<attlist name="destructor">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
<attribute name="last-revision"
|
<attribute name="last-revision"
|
||||||
@ -639,7 +637,7 @@
|
|||||||
</or-group>
|
</or-group>
|
||||||
</sequence-group>
|
</sequence-group>
|
||||||
</content-model-expanded>
|
</content-model-expanded>
|
||||||
<content-model>
|
<content-model>
|
||||||
<sequence-group>
|
<sequence-group>
|
||||||
<element-name name="title" occurrence="?"/>
|
<element-name name="title" occurrence="?"/>
|
||||||
<element-name name="section" occurrence="*"/>
|
<element-name name="section" occurrence="*"/>
|
||||||
@ -750,6 +748,7 @@
|
|||||||
<element-name name="purpose" occurrence="?"/>
|
<element-name name="purpose" occurrence="?"/>
|
||||||
<element-name name="description" occurrence="?"/>
|
<element-name name="description" occurrence="?"/>
|
||||||
<or-group occurrence="*">
|
<or-group occurrence="*">
|
||||||
|
<element-name name="access"/>
|
||||||
<element-name name="static-constant"/>
|
<element-name name="static-constant"/>
|
||||||
<element-name name="typedef"/>
|
<element-name name="typedef"/>
|
||||||
<element-name name="enum"/>
|
<element-name name="enum"/>
|
||||||
@ -819,10 +818,7 @@
|
|||||||
<purpose>Declares a base class of the enclosing class or struct</purpose>
|
<purpose>Declares a base class of the enclosing class or struct</purpose>
|
||||||
|
|
||||||
<description>
|
<description>
|
||||||
<para>This element contains the name of the class inherited. The
|
<para>This element contains the type of the class inherited.</para>
|
||||||
content model is free-form, as the inherited class may be an
|
|
||||||
instantiation of a template and may have markup in it (e.g.,
|
|
||||||
<sgmltag>classname</sgmltag> tags).</para>
|
|
||||||
</description>
|
</description>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
@ -837,7 +833,9 @@
|
|||||||
<attribute name="access"
|
<attribute name="access"
|
||||||
type="#REQUIRED"
|
type="#REQUIRED"
|
||||||
value="CDATA"
|
value="CDATA"
|
||||||
default=""/>
|
default="">
|
||||||
|
<purpose>The access specifier ("public", "private", or "protected") of the inheritance.</purpose>
|
||||||
|
</attribute>
|
||||||
<attribute name="id"
|
<attribute name="id"
|
||||||
type="#IMPLIED"
|
type="#IMPLIED"
|
||||||
value="CDATA"
|
value="CDATA"
|
||||||
@ -950,7 +948,7 @@
|
|||||||
behavior. Constructors, destructors, member functions, and free
|
behavior. Constructors, destructors, member functions, and free
|
||||||
functions all use the same documentation method, although the
|
functions all use the same documentation method, although the
|
||||||
top-level tags differ.</para>
|
top-level tags differ.</para>
|
||||||
|
|
||||||
<para>The behavior of functions in BoostBook is documenting using a
|
<para>The behavior of functions in BoostBook is documenting using a
|
||||||
style similar to that of the C++ standard, with clauses describing
|
style similar to that of the C++ standard, with clauses describing
|
||||||
the requirements, effects, postconditions, exception behavior, and
|
the requirements, effects, postconditions, exception behavior, and
|
||||||
@ -979,12 +977,12 @@
|
|||||||
so that any content is equivalent in both type and value to the
|
so that any content is equivalent in both type and value to the
|
||||||
content of <code>other</code>, or empty if
|
content of <code>other</code>, or empty if
|
||||||
<code>other</code> is
|
<code>other</code> is
|
||||||
empty.
|
empty.
|
||||||
</simpara>
|
</simpara>
|
||||||
</effects>
|
</effects>
|
||||||
|
|
||||||
<throws>
|
<throws>
|
||||||
<simpara>May fail with a
|
<simpara>May fail with a
|
||||||
<classname>std::bad_alloc</classname> exception or any
|
<classname>std::bad_alloc</classname> exception or any
|
||||||
exceptions arising from the copy constructor of the
|
exceptions arising from the copy constructor of the
|
||||||
contained type.
|
contained type.
|
||||||
@ -1218,7 +1216,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="constructor">
|
<attlist name="constructor">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
<attribute name="last-revision"
|
<attribute name="last-revision"
|
||||||
@ -1274,7 +1272,7 @@
|
|||||||
|
|
||||||
<programlisting><library-reference>
|
<programlisting><library-reference>
|
||||||
<header name="boost/any.hpp">
|
<header name="boost/any.hpp">
|
||||||
<namespace name="boost">
|
<namespace name="boost">
|
||||||
<!-- C++ constructs in the boost namespace -->
|
<!-- C++ constructs in the boost namespace -->
|
||||||
</namespace>
|
</namespace>
|
||||||
</header>
|
</header>
|
||||||
@ -1496,7 +1494,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="data-member">
|
<attlist name="data-member">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
<attribute name="last-revision"
|
<attribute name="last-revision"
|
||||||
@ -1558,6 +1556,7 @@
|
|||||||
<element-name name="purpose" occurrence="?"/>
|
<element-name name="purpose" occurrence="?"/>
|
||||||
<element-name name="description" occurrence="?"/>
|
<element-name name="description" occurrence="?"/>
|
||||||
<or-group occurrence="*">
|
<or-group occurrence="*">
|
||||||
|
<element-name name="access"/>
|
||||||
<element-name name="static-constant"/>
|
<element-name name="static-constant"/>
|
||||||
<element-name name="typedef"/>
|
<element-name name="typedef"/>
|
||||||
<element-name name="enum"/>
|
<element-name name="enum"/>
|
||||||
@ -1736,7 +1735,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="requirement">
|
<attlist name="requirement">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
name CDATA #REQUIRED</attdecl>
|
name CDATA #REQUIRED</attdecl>
|
||||||
<attribute name="name"
|
<attribute name="name"
|
||||||
type="#REQUIRED"
|
type="#REQUIRED"
|
||||||
@ -1859,7 +1858,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="run-test">
|
<attlist name="run-test">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED</attdecl>
|
name CDATA #IMPLIED</attdecl>
|
||||||
<attribute name="filename"
|
<attribute name="filename"
|
||||||
@ -1954,7 +1953,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="copy-assignment">
|
<attlist name="copy-assignment">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
cv CDATA #IMPLIED
|
cv CDATA #IMPLIED
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
@ -2000,7 +1999,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="run-fail-test">
|
<attlist name="run-fail-test">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED</attdecl>
|
name CDATA #IMPLIED</attdecl>
|
||||||
<attribute name="filename"
|
<attribute name="filename"
|
||||||
@ -2159,7 +2158,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="parameter">
|
<attlist name="parameter">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
name CDATA #IMPLIED</attdecl>
|
name CDATA #IMPLIED</attdecl>
|
||||||
<attribute name="name"
|
<attribute name="name"
|
||||||
type="#IMPLIED"
|
type="#IMPLIED"
|
||||||
@ -2255,7 +2254,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="overloaded-function">
|
<attlist name="overloaded-function">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
<attribute name="last-revision"
|
<attribute name="last-revision"
|
||||||
@ -2276,6 +2275,60 @@
|
|||||||
default=""/>
|
default=""/>
|
||||||
</attlist>
|
</attlist>
|
||||||
|
|
||||||
|
<element name="access"
|
||||||
|
content-type="element">
|
||||||
|
<content-model-expanded>
|
||||||
|
<or-group occurrence="+">
|
||||||
|
<element-name name="static-constant"/>
|
||||||
|
<element-name name="typedef"/>
|
||||||
|
<element-name name="enum"/>
|
||||||
|
<element-name name="copy-assignment"/>
|
||||||
|
<element-name name="constructor"/>
|
||||||
|
<element-name name="destructor"/>
|
||||||
|
<element-name name="method-group"/>
|
||||||
|
<element-name name="method"/>
|
||||||
|
<element-name name="overloaded-method"/>
|
||||||
|
<element-name name="data-member"/>
|
||||||
|
<element-name name="class"/>
|
||||||
|
<element-name name="class-specialization"/>
|
||||||
|
<element-name name="struct"/>
|
||||||
|
<element-name name="struct-specialization"/>
|
||||||
|
<element-name name="union"/>
|
||||||
|
<element-name name="union-specialization"/>
|
||||||
|
</or-group>
|
||||||
|
</content-model-expanded>
|
||||||
|
<content-model>
|
||||||
|
<sequence-group occurrence="+">
|
||||||
|
<parament-name name="boost.class.members"/>
|
||||||
|
</sequence-group>
|
||||||
|
</content-model>
|
||||||
|
<purpose>Declares an access specification for class members</purpose>
|
||||||
|
|
||||||
|
<description>
|
||||||
|
<para>The access specifications of class members (public, private, or protected) may be determined by enclosing them in an <access> element.</para>
|
||||||
|
</description>
|
||||||
|
</element>
|
||||||
|
|
||||||
|
<attlist name="access">
|
||||||
|
<attdecl>
|
||||||
|
name CDATA #REQUIRED
|
||||||
|
%boost.common.attrib;</attdecl>
|
||||||
|
<attribute name="last-revision"
|
||||||
|
type="#IMPLIED"
|
||||||
|
value="CDATA"
|
||||||
|
default=""/>
|
||||||
|
<attribute name="name"
|
||||||
|
type="#REQUIRED"
|
||||||
|
value="CDATA"
|
||||||
|
default="">
|
||||||
|
<purpose>The name of the access specification, e.g. "public", "private", or "protected".</purpose>
|
||||||
|
</attribute>
|
||||||
|
<attribute name="id"
|
||||||
|
type="#IMPLIED"
|
||||||
|
value="CDATA"
|
||||||
|
default=""/>
|
||||||
|
</attlist>
|
||||||
|
|
||||||
<element name="class"
|
<element name="class"
|
||||||
content-type="element">
|
content-type="element">
|
||||||
<content-model-expanded>
|
<content-model-expanded>
|
||||||
@ -2285,6 +2338,7 @@
|
|||||||
<element-name name="purpose" occurrence="?"/>
|
<element-name name="purpose" occurrence="?"/>
|
||||||
<element-name name="description" occurrence="?"/>
|
<element-name name="description" occurrence="?"/>
|
||||||
<or-group occurrence="*">
|
<or-group occurrence="*">
|
||||||
|
<element-name name="access"/>
|
||||||
<element-name name="static-constant"/>
|
<element-name name="static-constant"/>
|
||||||
<element-name name="typedef"/>
|
<element-name name="typedef"/>
|
||||||
<element-name name="enum"/>
|
<element-name name="enum"/>
|
||||||
@ -2348,7 +2402,7 @@
|
|||||||
inheritance from the class <classname>std::bad_cast</classname>. It
|
inheritance from the class <classname>std::bad_cast</classname>. It
|
||||||
also defines the <purpose> element, which contains a short
|
also defines the <purpose> element, which contains a short
|
||||||
description of the use of the class.</para>
|
description of the use of the class.</para>
|
||||||
|
|
||||||
<programlisting><class name="bad_any_cast">
|
<programlisting><class name="bad_any_cast">
|
||||||
<inherit access="public"><classname>std::bad_cast</classname></inherit>
|
<inherit access="public"><classname>std::bad_cast</classname></inherit>
|
||||||
<purpose><para>The exception thrown in the event of a failed
|
<purpose><para>The exception thrown in the event of a failed
|
||||||
@ -2402,7 +2456,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="librarycategorydef">
|
<attlist name="librarycategorydef">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
<attribute name="last-revision"
|
<attribute name="last-revision"
|
||||||
@ -2524,7 +2578,7 @@
|
|||||||
</element>
|
</element>
|
||||||
|
|
||||||
<attlist name="overloaded-method">
|
<attlist name="overloaded-method">
|
||||||
<attdecl>
|
<attdecl>
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;</attdecl>
|
%boost.common.attrib;</attdecl>
|
||||||
<attribute name="last-revision"
|
<attribute name="last-revision"
|
||||||
@ -2813,6 +2867,7 @@
|
|||||||
<element-name name="purpose" occurrence="?"/>
|
<element-name name="purpose" occurrence="?"/>
|
||||||
<element-name name="description" occurrence="?"/>
|
<element-name name="description" occurrence="?"/>
|
||||||
<or-group occurrence="*">
|
<or-group occurrence="*">
|
||||||
|
<element-name name="access"/>
|
||||||
<element-name name="static-constant"/>
|
<element-name name="static-constant"/>
|
||||||
<element-name name="typedef"/>
|
<element-name name="typedef"/>
|
||||||
<element-name name="enum"/>
|
<element-name name="enum"/>
|
||||||
@ -2874,6 +2929,7 @@
|
|||||||
<element-name name="purpose" occurrence="?"/>
|
<element-name name="purpose" occurrence="?"/>
|
||||||
<element-name name="description" occurrence="?"/>
|
<element-name name="description" occurrence="?"/>
|
||||||
<or-group occurrence="*">
|
<or-group occurrence="*">
|
||||||
|
<element-name name="access"/>
|
||||||
<element-name name="static-constant"/>
|
<element-name name="static-constant"/>
|
||||||
<element-name name="typedef"/>
|
<element-name name="typedef"/>
|
||||||
<element-name name="enum"/>
|
<element-name name="enum"/>
|
||||||
@ -3224,5 +3280,4 @@
|
|||||||
value="CDATA"
|
value="CDATA"
|
||||||
default=""/>
|
default=""/>
|
||||||
</attlist>
|
</attlist>
|
||||||
|
|
||||||
</dtd>
|
</dtd>
|
||||||
|
File diff suppressed because one or more lines are too long
@ -1,15 +1,20 @@
|
|||||||
<!--
|
<!--
|
||||||
BoostBook DTD version 1.0
|
BoostBook DTD version 1.1
|
||||||
|
|
||||||
For further information, see: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?Boost_Documentation_Format
|
For further information, see: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?Boost_Documentation_Format
|
||||||
|
|
||||||
Copyright (c) 2002 by Peter Simons <simons@computer.org>.
|
Copyright (c) 2002 by Peter Simons <simons@cryp.to>
|
||||||
All Rights Reserved.
|
Copyright (c) 2003-2004 by Douglas Gregor <doug.gregor -at- gmail.com>
|
||||||
|
Copyright (c) 2007 by Frank Mori Hess <fmhess@users.sourceforge.net>
|
||||||
|
|
||||||
|
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)
|
||||||
|
|
||||||
This DTD module is identified by the PUBLIC and SYSTEM identifiers:
|
This DTD module is identified by the PUBLIC and SYSTEM identifiers:
|
||||||
|
|
||||||
PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
|
PUBLIC "-//Boost//DTD BoostBook XML V1.1//EN"
|
||||||
SYSTEM "http://cryp.to/boost-sandbox/libs/documentation/dtd/boostbook.dtd"
|
SYSTEM "http://www.boost.org/tools/boostbook/dtd/1.1/boostbook.dtd"
|
||||||
|
|
||||||
$Revision$
|
$Revision$
|
||||||
$Date$
|
$Date$
|
||||||
@ -37,7 +42,7 @@
|
|||||||
<!ENTITY % boost.common.attrib "%local.common.attrib;
|
<!ENTITY % boost.common.attrib "%local.common.attrib;
|
||||||
id CDATA #IMPLIED">
|
id CDATA #IMPLIED">
|
||||||
|
|
||||||
<!ENTITY % boost.namespace.mix
|
<!ENTITY % boost.namespace.mix
|
||||||
"class|class-specialization|struct|struct-specialization|
|
"class|class-specialization|struct|struct-specialization|
|
||||||
union|union-specialization|typedef|enum|
|
union|union-specialization|typedef|enum|
|
||||||
free-function-group|function|overloaded-function|
|
free-function-group|function|overloaded-function|
|
||||||
@ -46,23 +51,25 @@
|
|||||||
<!ENTITY % boost.template.mix
|
<!ENTITY % boost.template.mix
|
||||||
"template-type-parameter|template-nontype-parameter|template-varargs">
|
"template-type-parameter|template-nontype-parameter|template-varargs">
|
||||||
|
|
||||||
<!ENTITY % boost.class.mix
|
<!ENTITY % boost.class.members
|
||||||
"static-constant|typedef|enum|
|
"static-constant|typedef|enum|
|
||||||
copy-assignment|constructor|destructor|method-group|
|
copy-assignment|constructor|destructor|method-group|
|
||||||
free-function-group|function|method|overloaded-function|
|
method|overloaded-method|data-member|class|class-specialization|struct|
|
||||||
overloaded-method|data-member|class|class-specialization|struct|
|
|
||||||
struct-specialization|union|union-specialization">
|
struct-specialization|union|union-specialization">
|
||||||
|
|
||||||
|
<!ENTITY % boost.class.mix
|
||||||
|
"%boost.class.members;|free-function-group|function|overloaded-function">
|
||||||
|
|
||||||
<!ENTITY % boost.class.content
|
<!ENTITY % boost.class.content
|
||||||
"template?, inherit*, purpose?, description?,
|
"template?, inherit*, purpose?, description?,
|
||||||
(%boost.class.mix;)*">
|
(%boost.class.mix;|access)*">
|
||||||
|
|
||||||
<!ENTITY % boost.class-specialization.content
|
<!ENTITY % boost.class-specialization.content
|
||||||
"template?, specialization?, inherit?, purpose?, description?,
|
"template?, specialization?, inherit?, purpose?, description?,
|
||||||
(%boost.class.mix;)*">
|
(%boost.class.mix;|access)*">
|
||||||
|
|
||||||
<!ENTITY % boost.function.semantics
|
<!ENTITY % boost.function.semantics
|
||||||
"purpose?, description?, requires?, effects?, postconditions?,
|
"purpose?, description?, requires?, effects?, postconditions?,
|
||||||
returns?, throws?, complexity?, notes?, rationale?">
|
returns?, throws?, complexity?, notes?, rationale?">
|
||||||
|
|
||||||
<!ENTITY % library.content
|
<!ENTITY % library.content
|
||||||
@ -104,7 +111,7 @@
|
|||||||
<!ATTLIST librarycategorylist %boost.common.attrib;>
|
<!ATTLIST librarycategorylist %boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT librarycategorydef (#PCDATA)>
|
<!ELEMENT librarycategorydef (#PCDATA)>
|
||||||
<!ATTLIST librarycategorydef
|
<!ATTLIST librarycategorydef
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
@ -148,6 +155,11 @@
|
|||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
|
<!ELEMENT access (%boost.class.members;)+>
|
||||||
|
<!ATTLIST access
|
||||||
|
name CDATA #REQUIRED
|
||||||
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!--========= C++ Templates =========-->
|
<!--========= C++ Templates =========-->
|
||||||
<!ELEMENT template (%boost.template.mix;)*>
|
<!ELEMENT template (%boost.template.mix;)*>
|
||||||
<!ATTLIST template %boost.common.attrib;>
|
<!ATTLIST template %boost.common.attrib;>
|
||||||
@ -209,7 +221,7 @@
|
|||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT data-member (type, purpose?, description?)>
|
<!ELEMENT data-member (type, purpose?, description?)>
|
||||||
<!ATTLIST data-member
|
<!ATTLIST data-member
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
@ -229,12 +241,12 @@
|
|||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT constructor (template?, parameter*, %boost.function.semantics;)>
|
<!ELEMENT constructor (template?, parameter*, %boost.function.semantics;)>
|
||||||
<!ATTLIST constructor
|
<!ATTLIST constructor
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT destructor (%boost.function.semantics;)>
|
<!ELEMENT destructor (%boost.function.semantics;)>
|
||||||
<!ATTLIST destructor
|
<!ATTLIST destructor
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
@ -252,12 +264,12 @@
|
|||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT overloaded-method (signature*, %boost.function.semantics;)>
|
<!ELEMENT overloaded-method (signature*, %boost.function.semantics;)>
|
||||||
<!ATTLIST overloaded-method
|
<!ATTLIST overloaded-method
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT overloaded-function (signature*, %boost.function.semantics;)>
|
<!ELEMENT overloaded-function (signature*, %boost.function.semantics;)>
|
||||||
<!ATTLIST overloaded-function
|
<!ATTLIST overloaded-function
|
||||||
name CDATA #REQUIRED
|
name CDATA #REQUIRED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
@ -286,12 +298,12 @@
|
|||||||
<!ATTLIST rationale %boost.common.attrib;>
|
<!ATTLIST rationale %boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT functionname (#PCDATA)>
|
<!ELEMENT functionname (#PCDATA)>
|
||||||
<!ATTLIST functionname
|
<!ATTLIST functionname
|
||||||
alt CDATA #IMPLIED
|
alt CDATA #IMPLIED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT enumname (#PCDATA)>
|
<!ELEMENT enumname (#PCDATA)>
|
||||||
<!ATTLIST enumname
|
<!ATTLIST enumname
|
||||||
alt CDATA #IMPLIED
|
alt CDATA #IMPLIED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
@ -301,9 +313,9 @@
|
|||||||
<!ELEMENT headername (#PCDATA)>
|
<!ELEMENT headername (#PCDATA)>
|
||||||
<!ATTLIST headername %boost.common.attrib;>
|
<!ATTLIST headername %boost.common.attrib;>
|
||||||
|
|
||||||
<!ELEMENT copy-assignment
|
<!ELEMENT copy-assignment
|
||||||
(template?, type?, parameter*, %boost.function.semantics;)>
|
(template?, type?, parameter*, %boost.function.semantics;)>
|
||||||
<!ATTLIST copy-assignment
|
<!ATTLIST copy-assignment
|
||||||
cv CDATA #IMPLIED
|
cv CDATA #IMPLIED
|
||||||
specifiers CDATA #IMPLIED
|
specifiers CDATA #IMPLIED
|
||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
@ -330,7 +342,7 @@
|
|||||||
%boost.common.attrib;>
|
%boost.common.attrib;>
|
||||||
|
|
||||||
<!--========== Boost Testsuite Extensions ==========-->
|
<!--========== Boost Testsuite Extensions ==========-->
|
||||||
<!ENTITY % boost.testsuite.tests
|
<!ENTITY % boost.testsuite.tests
|
||||||
"compile-test|link-test|run-test|
|
"compile-test|link-test|run-test|
|
||||||
compile-fail-test|link-fail-test|run-fail-test">
|
compile-fail-test|link-fail-test|run-fail-test">
|
||||||
<!ENTITY % boost.testsuite.test.content
|
<!ENTITY % boost.testsuite.test.content
|
||||||
@ -345,12 +357,12 @@
|
|||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
<!ELEMENT link-test (%boost.testsuite.test.content;)>
|
<!ELEMENT link-test (%boost.testsuite.test.content;)>
|
||||||
<!ATTLIST link-test
|
<!ATTLIST link-test
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
<!ELEMENT run-test (%boost.testsuite.test.content;)>
|
<!ELEMENT run-test (%boost.testsuite.test.content;)>
|
||||||
<!ATTLIST run-test
|
<!ATTLIST run-test
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
@ -360,12 +372,12 @@
|
|||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
<!ELEMENT link-fail-test (%boost.testsuite.test.content;)>
|
<!ELEMENT link-fail-test (%boost.testsuite.test.content;)>
|
||||||
<!ATTLIST link-fail-test
|
<!ATTLIST link-fail-test
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
<!ELEMENT run-fail-test (%boost.testsuite.test.content;)>
|
<!ELEMENT run-fail-test (%boost.testsuite.test.content;)>
|
||||||
<!ATTLIST run-fail-test
|
<!ATTLIST run-fail-test
|
||||||
filename CDATA #REQUIRED
|
filename CDATA #REQUIRED
|
||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
@ -378,13 +390,13 @@
|
|||||||
<!ELEMENT lib (#PCDATA)>
|
<!ELEMENT lib (#PCDATA)>
|
||||||
|
|
||||||
<!ELEMENT requirement (#PCDATA)>
|
<!ELEMENT requirement (#PCDATA)>
|
||||||
<!ATTLIST requirement
|
<!ATTLIST requirement
|
||||||
name CDATA #REQUIRED>
|
name CDATA #REQUIRED>
|
||||||
|
|
||||||
<!ELEMENT if-fails ANY>
|
<!ELEMENT if-fails ANY>
|
||||||
|
|
||||||
<!ELEMENT parameter (paramtype, default?, description?)>
|
<!ELEMENT parameter (paramtype, default?, description?)>
|
||||||
<!ATTLIST parameter
|
<!ATTLIST parameter
|
||||||
name CDATA #IMPLIED>
|
name CDATA #IMPLIED>
|
||||||
|
|
||||||
<!ELEMENT programlisting ANY>
|
<!ELEMENT programlisting ANY>
|
||||||
@ -393,7 +405,7 @@
|
|||||||
|
|
||||||
<!--========== Customize the DocBook DTD ==========-->
|
<!--========== Customize the DocBook DTD ==========-->
|
||||||
<!ENTITY % local.tech.char.class "|functionname|libraryname|enumname|code">
|
<!ENTITY % local.tech.char.class "|functionname|libraryname|enumname|code">
|
||||||
<!ENTITY % local.para.class
|
<!ENTITY % local.para.class
|
||||||
"|using-namespace|using-class|librarylist|librarycategorylist">
|
"|using-namespace|using-class|librarylist|librarycategorylist">
|
||||||
<!ENTITY % local.descobj.class "|libraryinfo">
|
<!ENTITY % local.descobj.class "|libraryinfo">
|
||||||
<!ENTITY % local.classname.attrib "alt CDATA #IMPLIED">
|
<!ENTITY % local.classname.attrib "alt CDATA #IMPLIED">
|
||||||
@ -408,5 +420,5 @@
|
|||||||
<!--========== Import DocBook DTD ==========-->
|
<!--========== Import DocBook DTD ==========-->
|
||||||
<!ENTITY % DocBook PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
<!ENTITY % DocBook PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||||
|
|
||||||
%DocBook;
|
%DocBook;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
||||||
|
|
||||||
Distributed under the Boost Software License, Version 1.0.
|
Distributed under the Boost Software License, Version 1.0.
|
||||||
(See accompanying file LICENSE_1_0.txt or copy at
|
(See accompanying file LICENSE_1_0.txt or copy at
|
||||||
http://www.boost.org/LICENSE_1_0.txt)
|
http://www.boost.org/LICENSE_1_0.txt)
|
||||||
|
112
xsl/function.xsl
112
xsl/function.xsl
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
||||||
|
|
||||||
Distributed under the Boost Software License, Version 1.0.
|
Distributed under the Boost Software License, Version 1.0.
|
||||||
(See accompanying file LICENSE_1_0.txt or copy at
|
(See accompanying file LICENSE_1_0.txt or copy at
|
||||||
http://www.boost.org/LICENSE_1_0.txt)
|
http://www.boost.org/LICENSE_1_0.txt)
|
||||||
@ -9,7 +9,7 @@
|
|||||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||||
version="1.0">
|
version="1.0">
|
||||||
|
|
||||||
<xsl:strip-space elements="requires effects postconditions returns throws
|
<xsl:strip-space elements="requires effects postconditions returns throws
|
||||||
complexity notes rationale purpose"/>
|
complexity notes rationale purpose"/>
|
||||||
|
|
||||||
<!-- When true, the stylesheet will emit compact definitions of
|
<!-- When true, the stylesheet will emit compact definitions of
|
||||||
@ -126,7 +126,7 @@
|
|||||||
</xsl:choose>
|
</xsl:choose>
|
||||||
</xsl:variable>
|
</xsl:variable>
|
||||||
|
|
||||||
<xsl:if test="not ($standalone) or
|
<xsl:if test="not ($standalone) or
|
||||||
(local-name(.)='signature' and (position() > 1))
|
(local-name(.)='signature' and (position() > 1))
|
||||||
or $suppress-template">
|
or $suppress-template">
|
||||||
<xsl:text> </xsl:text>
|
<xsl:text> </xsl:text>
|
||||||
@ -136,7 +136,7 @@
|
|||||||
<xsl:call-template name="indent">
|
<xsl:call-template name="indent">
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
|
|
||||||
<!-- Build the template header -->
|
<!-- Build the template header -->
|
||||||
<xsl:variable name="template-length">
|
<xsl:variable name="template-length">
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
@ -148,7 +148,7 @@
|
|||||||
</xsl:otherwise>
|
</xsl:otherwise>
|
||||||
</xsl:choose>
|
</xsl:choose>
|
||||||
</xsl:variable>
|
</xsl:variable>
|
||||||
|
|
||||||
<!-- Build a full parameter string (without line breaks) -->
|
<!-- Build a full parameter string (without line breaks) -->
|
||||||
<xsl:variable name="param-string">
|
<xsl:variable name="param-string">
|
||||||
<xsl:text>(</xsl:text>
|
<xsl:text>(</xsl:text>
|
||||||
@ -168,21 +168,21 @@
|
|||||||
</xsl:variable>
|
</xsl:variable>
|
||||||
|
|
||||||
<!-- Build the full declaration text -->
|
<!-- Build the full declaration text -->
|
||||||
<xsl:variable name="decl-string"
|
<xsl:variable name="decl-string"
|
||||||
select="concat($type, $function-name, $param-string, $postdeclarator)"/>
|
select="concat($type, $function-name, $param-string, $postdeclarator)"/>
|
||||||
<xsl:variable name="end-column"
|
<xsl:variable name="end-column"
|
||||||
select="$template-length + string-length($decl-string) + $indentation"/>
|
select="$template-length + string-length($decl-string) + $indentation"/>
|
||||||
|
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
<!-- Check if we should put the template header on its own line to
|
<!-- Check if we should put the template header on its own line to
|
||||||
save horizontal space. -->
|
save horizontal space. -->
|
||||||
<xsl:when test="($template-length > 0) and
|
<xsl:when test="($template-length > 0) and
|
||||||
($end-column > $max-columns)">
|
($end-column > $max-columns)">
|
||||||
<!-- Emit template header on its own line -->
|
<!-- Emit template header on its own line -->
|
||||||
<xsl:apply-templates select="template" mode="synopsis">
|
<xsl:apply-templates select="template" mode="synopsis">
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
|
|
||||||
<!-- Emit the rest of the function declaration (without the
|
<!-- Emit the rest of the function declaration (without the
|
||||||
template header) indented two extra spaces. -->
|
template header) indented two extra spaces. -->
|
||||||
<xsl:call-template name="function">
|
<xsl:call-template name="function">
|
||||||
@ -249,17 +249,17 @@
|
|||||||
<xsl:text>(</xsl:text>
|
<xsl:text>(</xsl:text>
|
||||||
<xsl:call-template name="function-parameters">
|
<xsl:call-template name="function-parameters">
|
||||||
<xsl:with-param name="include-names" select="$include-names"/>
|
<xsl:with-param name="include-names" select="$include-names"/>
|
||||||
<xsl:with-param name="indentation"
|
<xsl:with-param name="indentation"
|
||||||
select="$indentation + $template-length + string-length($type)
|
select="$indentation + $template-length + string-length($type)
|
||||||
+ string-length($function-name) + 1"/>
|
+ string-length($function-name) + 1"/>
|
||||||
<xsl:with-param name="final" select="true()"/>
|
<xsl:with-param name="final" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:text>)</xsl:text>
|
<xsl:text>)</xsl:text>
|
||||||
|
|
||||||
<xsl:call-template name="source-highlight">
|
<xsl:call-template name="source-highlight">
|
||||||
<xsl:with-param name="text" select="$postdeclarator"/>
|
<xsl:with-param name="text" select="$postdeclarator"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:text>;</xsl:text>
|
<xsl:text>;</xsl:text>
|
||||||
</xsl:when>
|
</xsl:when>
|
||||||
|
|
||||||
<!-- This declaration will take multiple lines -->
|
<!-- This declaration will take multiple lines -->
|
||||||
@ -320,11 +320,11 @@
|
|||||||
<xsl:text>(</xsl:text>
|
<xsl:text>(</xsl:text>
|
||||||
<xsl:call-template name="function-parameters">
|
<xsl:call-template name="function-parameters">
|
||||||
<xsl:with-param name="include-names" select="$include-names"/>
|
<xsl:with-param name="include-names" select="$include-names"/>
|
||||||
<xsl:with-param name="indentation"
|
<xsl:with-param name="indentation"
|
||||||
select="$indentation + $type-length
|
select="$indentation + $type-length
|
||||||
+ string-length($function-name) + 1"/>
|
+ string-length($function-name) + 1"/>
|
||||||
<xsl:with-param name="final" select="true()"/>
|
<xsl:with-param name="final" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:text>)</xsl:text>
|
<xsl:text>)</xsl:text>
|
||||||
<xsl:call-template name="source-highlight">
|
<xsl:call-template name="source-highlight">
|
||||||
<xsl:with-param name="text" select="$postdeclarator"/>
|
<xsl:with-param name="text" select="$postdeclarator"/>
|
||||||
@ -332,7 +332,7 @@
|
|||||||
<xsl:text>;</xsl:text>
|
<xsl:text>;</xsl:text>
|
||||||
</xsl:otherwise>
|
</xsl:otherwise>
|
||||||
</xsl:choose>
|
</xsl:choose>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<!-- Synopsis of function parameters, e.g., "(const T&, int x = 5)" -->
|
<!-- Synopsis of function parameters, e.g., "(const T&, int x = 5)" -->
|
||||||
<xsl:template name="function-parameters">
|
<xsl:template name="function-parameters">
|
||||||
@ -394,18 +394,18 @@
|
|||||||
</xsl:variable>
|
</xsl:variable>
|
||||||
|
|
||||||
<xsl:variable name="text" select="concat($type, $name, $default)"/>
|
<xsl:variable name="text" select="concat($type, $name, $default)"/>
|
||||||
|
|
||||||
<xsl:variable name="end-column"
|
<xsl:variable name="end-column"
|
||||||
select="$column + string-length($prefix) + string-length($text)"/>
|
select="$column + string-length($prefix) + string-length($text)"/>
|
||||||
|
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
<!-- Parameter goes on this line -->
|
<!-- Parameter goes on this line -->
|
||||||
<xsl:when test="$first-on-line or ($end-column < $max-columns)
|
<xsl:when test="$first-on-line or ($end-column < $max-columns)
|
||||||
or not($wrap)">
|
or not($wrap)">
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
<xsl:when test="$final">
|
<xsl:when test="$final">
|
||||||
<xsl:value-of select="$prefix"/>
|
<xsl:value-of select="$prefix"/>
|
||||||
<xsl:apply-templates
|
<xsl:apply-templates
|
||||||
select="$parameter/paramtype/*|$parameter/paramtype/text()"
|
select="$parameter/paramtype/*|$parameter/paramtype/text()"
|
||||||
mode="annotation">
|
mode="annotation">
|
||||||
<xsl:with-param name="highlight" select="true()"/>
|
<xsl:with-param name="highlight" select="true()"/>
|
||||||
@ -423,7 +423,7 @@
|
|||||||
<xsl:with-param name="include-names" select="$include-names"/>
|
<xsl:with-param name="include-names" select="$include-names"/>
|
||||||
<xsl:with-param name="wrap" select="$wrap"/>
|
<xsl:with-param name="wrap" select="$wrap"/>
|
||||||
<xsl:with-param name="final" select="$final"/>
|
<xsl:with-param name="final" select="$final"/>
|
||||||
<xsl:with-param name="parameters"
|
<xsl:with-param name="parameters"
|
||||||
select="$parameters[position()!=1]"/>
|
select="$parameters[position()!=1]"/>
|
||||||
<xsl:with-param name="prefix" select="', '"/>
|
<xsl:with-param name="prefix" select="', '"/>
|
||||||
<xsl:with-param name="column" select="$end-column"/>
|
<xsl:with-param name="column" select="$end-column"/>
|
||||||
@ -441,7 +441,7 @@
|
|||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
<xsl:when test="$final">
|
<xsl:when test="$final">
|
||||||
<xsl:apply-templates
|
<xsl:apply-templates
|
||||||
select="$parameter/paramtype/*|$parameter/paramtype/text()"
|
select="$parameter/paramtype/*|$parameter/paramtype/text()"
|
||||||
mode="annotation">
|
mode="annotation">
|
||||||
<xsl:with-param name="highlight" select="true()"/>
|
<xsl:with-param name="highlight" select="true()"/>
|
||||||
@ -460,10 +460,10 @@
|
|||||||
<xsl:with-param name="include-names" select="$include-names"/>
|
<xsl:with-param name="include-names" select="$include-names"/>
|
||||||
<xsl:with-param name="wrap" select="$wrap"/>
|
<xsl:with-param name="wrap" select="$wrap"/>
|
||||||
<xsl:with-param name="final" select="$final"/>
|
<xsl:with-param name="final" select="$final"/>
|
||||||
<xsl:with-param name="parameters"
|
<xsl:with-param name="parameters"
|
||||||
select="$parameters[position()!=1]"/>
|
select="$parameters[position()!=1]"/>
|
||||||
<xsl:with-param name="prefix" select="', '"/>
|
<xsl:with-param name="prefix" select="', '"/>
|
||||||
<xsl:with-param name="column"
|
<xsl:with-param name="column"
|
||||||
select="1 + string-length($text) + $indentation"/>
|
select="1 + string-length($text) + $indentation"/>
|
||||||
<xsl:with-param name="first-on-line" select="false()"/>
|
<xsl:with-param name="first-on-line" select="false()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
@ -479,7 +479,7 @@
|
|||||||
<!-- True if we should compact this function -->
|
<!-- True if we should compact this function -->
|
||||||
<xsl:variable name="compact"
|
<xsl:variable name="compact"
|
||||||
select="not (para|description|requires|effects|postconditions|returns|
|
select="not (para|description|requires|effects|postconditions|returns|
|
||||||
throws|complexity|notes|rationale) and
|
throws|complexity|notes|rationale) and
|
||||||
($boost.compact.function='1') and
|
($boost.compact.function='1') and
|
||||||
not (local-name(.)='method')"/>
|
not (local-name(.)='method')"/>
|
||||||
|
|
||||||
@ -524,7 +524,7 @@
|
|||||||
<!-- True if we should compact this function -->
|
<!-- True if we should compact this function -->
|
||||||
<xsl:variable name="compact"
|
<xsl:variable name="compact"
|
||||||
select="not (para|description|requires|effects|postconditions|returns|
|
select="not (para|description|requires|effects|postconditions|returns|
|
||||||
throws|complexity|notes|rationale) and
|
throws|complexity|notes|rationale) and
|
||||||
($boost.compact.function='1') and
|
($boost.compact.function='1') and
|
||||||
not (local-name(.)='overloaded-method')"/>
|
not (local-name(.)='overloaded-method')"/>
|
||||||
|
|
||||||
@ -537,7 +537,7 @@
|
|||||||
<xsl:call-template name="indent">
|
<xsl:call-template name="indent">
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
|
|
||||||
<xsl:call-template name="highlight-comment">
|
<xsl:call-template name="highlight-comment">
|
||||||
<xsl:with-param name="text">
|
<xsl:with-param name="text">
|
||||||
<xsl:text>// </xsl:text>
|
<xsl:text>// </xsl:text>
|
||||||
@ -566,7 +566,7 @@
|
|||||||
<xsl:with-param name="name" select="$name"/>
|
<xsl:with-param name="name" select="$name"/>
|
||||||
<xsl:with-param name="link-to" select="$link-to"/>
|
<xsl:with-param name="link-to" select="$link-to"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:for-each>
|
</xsl:for-each>
|
||||||
</xsl:when>
|
</xsl:when>
|
||||||
<xsl:otherwise>
|
<xsl:otherwise>
|
||||||
<xsl:for-each select="signature">
|
<xsl:for-each select="signature">
|
||||||
@ -598,7 +598,7 @@
|
|||||||
</xsl:if>
|
</xsl:if>
|
||||||
<xsl:text> </xsl:text>
|
<xsl:text> </xsl:text>
|
||||||
<xsl:call-template name="indent">
|
<xsl:call-template name="indent">
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<emphasis>
|
<emphasis>
|
||||||
<xsl:text>// </xsl:text>
|
<xsl:text>// </xsl:text>
|
||||||
@ -634,8 +634,12 @@
|
|||||||
<xsl:with-param name="text" select="''"/>
|
<xsl:with-param name="text" select="''"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:call-template name="monospaced">
|
<xsl:call-template name="monospaced">
|
||||||
<xsl:with-param name="text" select="@name"/>
|
<xsl:with-param name="text">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
|
<xsl:text> </xsl:text>
|
||||||
|
<xsl:call-template name="access-name"/>
|
||||||
<xsl:text> construct/copy/destruct</xsl:text>
|
<xsl:text> construct/copy/destruct</xsl:text>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
<xsl:with-param name="text">
|
<xsl:with-param name="text">
|
||||||
@ -658,7 +662,9 @@
|
|||||||
<xsl:call-template name="function">
|
<xsl:call-template name="function">
|
||||||
<xsl:with-param name="indentation" select="0"/>
|
<xsl:with-param name="indentation" select="0"/>
|
||||||
<xsl:with-param name="is-reference" select="true()"/>
|
<xsl:with-param name="is-reference" select="true()"/>
|
||||||
<xsl:with-param name="constructor-for" select="../@name"/>
|
<xsl:with-param name="constructor-for">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
<xsl:with-param name="standalone" select="true()"/>
|
<xsl:with-param name="standalone" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
@ -668,7 +674,7 @@
|
|||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<xsl:template match="copy-assignment" mode="reference">
|
<xsl:template match="copy-assignment" mode="reference">
|
||||||
<xsl:call-template name="function.documentation">
|
<xsl:call-template name="function.documentation">
|
||||||
<xsl:with-param name="text">
|
<xsl:with-param name="text">
|
||||||
@ -678,7 +684,9 @@
|
|||||||
<xsl:call-template name="function">
|
<xsl:call-template name="function">
|
||||||
<xsl:with-param name="indentation" select="0"/>
|
<xsl:with-param name="indentation" select="0"/>
|
||||||
<xsl:with-param name="is-reference" select="true()"/>
|
<xsl:with-param name="is-reference" select="true()"/>
|
||||||
<xsl:with-param name="copy-assign-for" select="../@name"/>
|
<xsl:with-param name="copy-assign-for">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
<xsl:with-param name="standalone" select="true()"/>
|
<xsl:with-param name="standalone" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
@ -698,7 +706,9 @@
|
|||||||
<xsl:call-template name="function">
|
<xsl:call-template name="function">
|
||||||
<xsl:with-param name="indentation" select="0"/>
|
<xsl:with-param name="indentation" select="0"/>
|
||||||
<xsl:with-param name="is-reference" select="true()"/>
|
<xsl:with-param name="is-reference" select="true()"/>
|
||||||
<xsl:with-param name="destructor-for" select="../@name"/>
|
<xsl:with-param name="destructor-for">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
<xsl:with-param name="standalone" select="true()"/>
|
<xsl:with-param name="standalone" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
@ -826,7 +836,7 @@
|
|||||||
<!-- True if we should compact this function -->
|
<!-- True if we should compact this function -->
|
||||||
<xsl:variable name="compact"
|
<xsl:variable name="compact"
|
||||||
select="not (para|description|requires|effects|postconditions|returns|
|
select="not (para|description|requires|effects|postconditions|returns|
|
||||||
throws|complexity|notes|rationale) and
|
throws|complexity|notes|rationale) and
|
||||||
($boost.compact.function='1') and
|
($boost.compact.function='1') and
|
||||||
not (local-name(.)='method')"/>
|
not (local-name(.)='method')"/>
|
||||||
|
|
||||||
@ -856,7 +866,7 @@
|
|||||||
<!-- True if we should compact this function -->
|
<!-- True if we should compact this function -->
|
||||||
<xsl:variable name="compact"
|
<xsl:variable name="compact"
|
||||||
select="not (para|description|requires|effects|postconditions|returns|
|
select="not (para|description|requires|effects|postconditions|returns|
|
||||||
throws|complexity|notes|rationale) and
|
throws|complexity|notes|rationale) and
|
||||||
($boost.compact.function='1')"/>
|
($boost.compact.function='1')"/>
|
||||||
|
|
||||||
<xsl:if test="not ($compact)">
|
<xsl:if test="not ($compact)">
|
||||||
@ -891,8 +901,8 @@
|
|||||||
<xsl:with-param name="namespace-reference" select="true()"/>
|
<xsl:with-param name="namespace-reference" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<xsl:template match="overloaded-function" mode="reference">
|
<xsl:template match="overloaded-function" mode="reference">
|
||||||
@ -901,9 +911,9 @@
|
|||||||
<!-- True if we should compact this function -->
|
<!-- True if we should compact this function -->
|
||||||
<xsl:variable name="compact"
|
<xsl:variable name="compact"
|
||||||
select="not (para|description|requires|effects|postconditions|returns|
|
select="not (para|description|requires|effects|postconditions|returns|
|
||||||
throws|complexity|notes|rationale) and
|
throws|complexity|notes|rationale) and
|
||||||
($boost.compact.function='1')"/>
|
($boost.compact.function='1')"/>
|
||||||
|
|
||||||
<xsl:if test="not ($compact)">
|
<xsl:if test="not ($compact)">
|
||||||
<xsl:call-template name="function.documentation">
|
<xsl:call-template name="function.documentation">
|
||||||
<xsl:with-param name="text">
|
<xsl:with-param name="text">
|
||||||
@ -911,7 +921,7 @@
|
|||||||
<xsl:attribute name="id">
|
<xsl:attribute name="id">
|
||||||
<xsl:call-template name="generate.id"/>
|
<xsl:call-template name="generate.id"/>
|
||||||
</xsl:attribute>
|
</xsl:attribute>
|
||||||
|
|
||||||
<xsl:call-template name="preformatted">
|
<xsl:call-template name="preformatted">
|
||||||
<xsl:with-param name="text">
|
<xsl:with-param name="text">
|
||||||
<xsl:for-each select="signature">
|
<xsl:for-each select="signature">
|
||||||
@ -935,7 +945,7 @@
|
|||||||
<!-- True if we should compact this function -->
|
<!-- True if we should compact this function -->
|
||||||
<xsl:variable name="compact"
|
<xsl:variable name="compact"
|
||||||
select="not (para|description|requires|effects|postconditions|returns|
|
select="not (para|description|requires|effects|postconditions|returns|
|
||||||
throws|complexity|notes|rationale) and
|
throws|complexity|notes|rationale) and
|
||||||
($boost.compact.function='1')"/>
|
($boost.compact.function='1')"/>
|
||||||
|
|
||||||
<xsl:variable name="name" select="@name"/>
|
<xsl:variable name="name" select="@name"/>
|
||||||
@ -975,8 +985,8 @@
|
|||||||
<xsl:with-param name="namespace-reference" select="true()"/>
|
<xsl:with-param name="namespace-reference" select="true()"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<xsl:template match="overloaded-method" mode="reference">
|
<xsl:template match="overloaded-method" mode="reference">
|
||||||
@ -988,7 +998,7 @@
|
|||||||
<xsl:attribute name="id">
|
<xsl:attribute name="id">
|
||||||
<xsl:call-template name="generate.id"/>
|
<xsl:call-template name="generate.id"/>
|
||||||
</xsl:attribute>
|
</xsl:attribute>
|
||||||
|
|
||||||
<xsl:call-template name="preformatted">
|
<xsl:call-template name="preformatted">
|
||||||
<xsl:with-param name="text">
|
<xsl:with-param name="text">
|
||||||
<xsl:for-each select="signature">
|
<xsl:for-each select="signature">
|
||||||
@ -1025,7 +1035,7 @@
|
|||||||
<xsl:with-param name="text" select="string(@name)"/>
|
<xsl:with-param name="text" select="string(@name)"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</emphasis>
|
</emphasis>
|
||||||
<xsl:apply-templates select="method|overloaded-method"
|
<xsl:apply-templates select="method|overloaded-method"
|
||||||
mode="synopsis">
|
mode="synopsis">
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
@ -1044,7 +1054,9 @@
|
|||||||
<xsl:with-param name="text" select="''"/>
|
<xsl:with-param name="text" select="''"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:call-template name="monospaced">
|
<xsl:call-template name="monospaced">
|
||||||
<xsl:with-param name="text" select="../@name"/>
|
<xsl:with-param name="text">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:text> </xsl:text>
|
<xsl:text> </xsl:text>
|
||||||
<xsl:value-of select="@name"/>
|
<xsl:value-of select="@name"/>
|
||||||
@ -1057,7 +1069,7 @@
|
|||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<!-- Group free functions together under a category name (synopsis)-->
|
<!-- Group free functions together under a category name (synopsis)-->
|
||||||
<xsl:template match="free-function-group" mode="synopsis">
|
<xsl:template match="free-function-group" mode="synopsis">
|
||||||
@ -1105,5 +1117,5 @@
|
|||||||
</orderedlist>
|
</orderedlist>
|
||||||
</xsl:with-param>
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
</xsl:stylesheet>
|
</xsl:stylesheet>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
||||||
|
|
||||||
Distributed under the Boost Software License, Version 1.0.
|
Distributed under the Boost Software License, Version 1.0.
|
||||||
(See accompanying file LICENSE_1_0.txt or copy at
|
(See accompanying file LICENSE_1_0.txt or copy at
|
||||||
http://www.boost.org/LICENSE_1_0.txt)
|
http://www.boost.org/LICENSE_1_0.txt)
|
||||||
@ -110,9 +110,9 @@
|
|||||||
<!-- Strip the qualifiers off a qualified name and return the unqualified
|
<!-- Strip the qualifiers off a qualified name and return the unqualified
|
||||||
name. For instance, "boost::python::function" would become just
|
name. For instance, "boost::python::function" would become just
|
||||||
"function".
|
"function".
|
||||||
Must handle ns::foo -> foo
|
Must handle ns::foo -> foo
|
||||||
Must handle ns::foo<bar::baz> -> foo<bar::baz>
|
Must handle ns::foo<bar::baz> -> foo<bar::baz>
|
||||||
Must handle ns::foo<bar::baz>::nested -> nested
|
Must handle ns::foo<bar::baz>::nested -> nested
|
||||||
Must handle ns::foo<x>::bar<y> -> bar<y> -->
|
Must handle ns::foo<x>::bar<y> -> bar<y> -->
|
||||||
<xsl:template name="strip-qualifiers">
|
<xsl:template name="strip-qualifiers">
|
||||||
<xsl:param name="name"/>
|
<xsl:param name="name"/>
|
||||||
@ -157,7 +157,7 @@
|
|||||||
<xsl:param name="depth" select="1"/>
|
<xsl:param name="depth" select="1"/>
|
||||||
|
|
||||||
<!-- Determine the set of ancestor namespaces -->
|
<!-- Determine the set of ancestor namespaces -->
|
||||||
<xsl:variable name="ancestors"
|
<xsl:variable name="ancestors"
|
||||||
select="ancestor::namespace|
|
select="ancestor::namespace|
|
||||||
ancestor::class|ancestor::struct|ancestor::union|
|
ancestor::class|ancestor::struct|ancestor::union|
|
||||||
ancestor::class-specialization|ancestor::struct-specialization|ancestor::union-specialization"/>
|
ancestor::class-specialization|ancestor::struct-specialization|ancestor::union-specialization"/>
|
||||||
@ -279,16 +279,16 @@
|
|||||||
$context/ancestor::*/using-class |
|
$context/ancestor::*/using-class |
|
||||||
$context/ancestor::class |
|
$context/ancestor::class |
|
||||||
$context/ancestor::struct"/>
|
$context/ancestor::struct"/>
|
||||||
|
|
||||||
<!-- The name of the current directive -->
|
<!-- The name of the current directive -->
|
||||||
<xsl:variable name="this-context">
|
<xsl:variable name="this-context">
|
||||||
<xsl:apply-templates select="$directives[$index]" mode="print-name"/>
|
<xsl:apply-templates select="$directives[$index]" mode="print-name"/>
|
||||||
</xsl:variable>
|
</xsl:variable>
|
||||||
|
|
||||||
<!-- Check if we have a match -->
|
<!-- Check if we have a match -->
|
||||||
<xsl:variable name="have-match"
|
<xsl:variable name="have-match"
|
||||||
select="$fully-qualified-name = concat($prefix, $name)"/>
|
select="$fully-qualified-name = concat($prefix, $name)"/>
|
||||||
|
|
||||||
<xsl:if test="$have-match">
|
<xsl:if test="$have-match">
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
<xsl:when test="$mode='matches'">
|
<xsl:when test="$mode='matches'">
|
||||||
@ -306,7 +306,7 @@
|
|||||||
</xsl:when>
|
</xsl:when>
|
||||||
</xsl:choose>
|
</xsl:choose>
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
|
|
||||||
<xsl:if test="(not($index > count($directives))) and
|
<xsl:if test="(not($index > count($directives))) and
|
||||||
(not($have-match) or ($mode = 'matches'))">
|
(not($have-match) or ($mode = 'matches'))">
|
||||||
<xsl:variable name="first-branch">
|
<xsl:variable name="first-branch">
|
||||||
@ -324,7 +324,7 @@
|
|||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:variable>
|
</xsl:variable>
|
||||||
|
|
||||||
<xsl:choose>
|
<xsl:choose>
|
||||||
<xsl:when test="string($first-branch) != ''">
|
<xsl:when test="string($first-branch) != ''">
|
||||||
<xsl:copy-of select="$first-branch"/>
|
<xsl:copy-of select="$first-branch"/>
|
||||||
@ -338,12 +338,12 @@
|
|||||||
<xsl:with-param name="node" select="$node"/>
|
<xsl:with-param name="node" select="$node"/>
|
||||||
<xsl:with-param name="mode" select="$mode"/>
|
<xsl:with-param name="mode" select="$mode"/>
|
||||||
<xsl:with-param name="index" select="$index + 1"/>
|
<xsl:with-param name="index" select="$index + 1"/>
|
||||||
<xsl:with-param name="prefix"
|
<xsl:with-param name="prefix"
|
||||||
select="concat($this-context, '::')"/>
|
select="concat($this-context, '::')"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:otherwise>
|
</xsl:otherwise>
|
||||||
</xsl:choose>
|
</xsl:choose>
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:when>
|
</xsl:when>
|
||||||
</xsl:choose>
|
</xsl:choose>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
@ -372,19 +372,19 @@
|
|||||||
|
|
||||||
<xsl:template name="cxx-link-name">
|
<xsl:template name="cxx-link-name">
|
||||||
<!-- The actual lookup node -->
|
<!-- The actual lookup node -->
|
||||||
<xsl:param name="lookup"/>
|
<xsl:param name="lookup"/>
|
||||||
|
|
||||||
<!-- The type of name to lookup (e.g., class) -->
|
<!-- The type of name to lookup (e.g., class) -->
|
||||||
<xsl:param name="type"/>
|
<xsl:param name="type"/>
|
||||||
|
|
||||||
<!-- The name we are looking for -->
|
<!-- The name we are looking for -->
|
||||||
<xsl:param name="name"/>
|
<xsl:param name="name"/>
|
||||||
|
|
||||||
<!-- The name we will display -->
|
<!-- The name we will display -->
|
||||||
<xsl:param name="display-name"/>
|
<xsl:param name="display-name"/>
|
||||||
|
|
||||||
<!-- The name we are looking for (unqualified)-->
|
<!-- The name we are looking for (unqualified)-->
|
||||||
<xsl:param name="unqualified-name"/>
|
<xsl:param name="unqualified-name"/>
|
||||||
|
|
||||||
<!-- The list of nodes that match the lookup node in both name and type -->
|
<!-- The list of nodes that match the lookup node in both name and type -->
|
||||||
<xsl:param name="nodes"/>
|
<xsl:param name="nodes"/>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
||||||
|
|
||||||
Distributed under the Boost Software License, Version 1.0.
|
Distributed under the Boost Software License, Version 1.0.
|
||||||
(See accompanying file LICENSE_1_0.txt or copy at
|
(See accompanying file LICENSE_1_0.txt or copy at
|
||||||
http://www.boost.org/LICENSE_1_0.txt)
|
http://www.boost.org/LICENSE_1_0.txt)
|
||||||
@ -21,7 +21,7 @@
|
|||||||
<xsl:include href="macro.xsl"/>
|
<xsl:include href="macro.xsl"/>
|
||||||
<xsl:include href="testing/testsuite.xsl"/>
|
<xsl:include href="testing/testsuite.xsl"/>
|
||||||
<xsl:include href="caramel/concept2docbook.xsl"/>
|
<xsl:include href="caramel/concept2docbook.xsl"/>
|
||||||
|
|
||||||
<xsl:template name="namespace-synopsis">
|
<xsl:template name="namespace-synopsis">
|
||||||
<xsl:param name="indentation" select="0"/>
|
<xsl:param name="indentation" select="0"/>
|
||||||
<!-- Open namespace-->
|
<!-- Open namespace-->
|
||||||
@ -32,7 +32,7 @@
|
|||||||
<xsl:with-param name="text" select="concat('namespace ',@name)"/>
|
<xsl:with-param name="text" select="concat('namespace ',@name)"/>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
<xsl:text> {</xsl:text>
|
<xsl:text> {</xsl:text>
|
||||||
|
|
||||||
<!-- Emit namespace types -->
|
<!-- Emit namespace types -->
|
||||||
<xsl:apply-templates select="class|class-specialization|
|
<xsl:apply-templates select="class|class-specialization|
|
||||||
struct|struct-specialization|
|
struct|struct-specialization|
|
||||||
@ -40,19 +40,19 @@
|
|||||||
typedef|enum|data-member" mode="synopsis">
|
typedef|enum|data-member" mode="synopsis">
|
||||||
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
|
|
||||||
<!-- Emit namespace functions -->
|
<!-- Emit namespace functions -->
|
||||||
<xsl:apply-templates
|
<xsl:apply-templates
|
||||||
select="free-function-group|function|overloaded-function"
|
select="free-function-group|function|overloaded-function"
|
||||||
mode="synopsis">
|
mode="synopsis">
|
||||||
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
|
|
||||||
<!-- Emit namespaces -->
|
<!-- Emit namespaces -->
|
||||||
<xsl:apply-templates select="namespace" mode="synopsis">
|
<xsl:apply-templates select="namespace" mode="synopsis">
|
||||||
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
|
|
||||||
<!-- Close namespace -->
|
<!-- Close namespace -->
|
||||||
<xsl:text> </xsl:text>
|
<xsl:text> </xsl:text>
|
||||||
<xsl:call-template name="indent">
|
<xsl:call-template name="indent">
|
||||||
@ -89,7 +89,7 @@
|
|||||||
<xsl:apply-templates select="class|class-specialization|
|
<xsl:apply-templates select="class|class-specialization|
|
||||||
struct|struct-specialization|
|
struct|struct-specialization|
|
||||||
union|union-specialization|enum|function|
|
union|union-specialization|enum|function|
|
||||||
overloaded-function|data-member"
|
overloaded-function|data-member"
|
||||||
mode="namespace-reference"/>
|
mode="namespace-reference"/>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
251
xsl/type.xsl
251
xsl/type.xsl
@ -659,7 +659,9 @@ Unknown type element "<xsl:value-of select="local-name(.)"/>" in type.display.na
|
|||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
<xsl:with-param name="context" select="../@name"/>
|
<xsl:with-param name="context" select="../@name"/>
|
||||||
<xsl:with-param name="is-reference" select="false()"/>
|
<xsl:with-param name="is-reference" select="false()"/>
|
||||||
<xsl:with-param name="constructor-for" select="../@name"/>
|
<xsl:with-param name="constructor-for">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
@ -669,7 +671,9 @@ Unknown type element "<xsl:value-of select="local-name(.)"/>" in type.display.na
|
|||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
<xsl:with-param name="context" select="../@name"/>
|
<xsl:with-param name="context" select="../@name"/>
|
||||||
<xsl:with-param name="is-reference" select="false()"/>
|
<xsl:with-param name="is-reference" select="false()"/>
|
||||||
<xsl:with-param name="copy-assign-for" select="../@name"/>
|
<xsl:with-param name="copy-assign-for">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
@ -679,90 +683,15 @@ Unknown type element "<xsl:value-of select="local-name(.)"/>" in type.display.na
|
|||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
<xsl:with-param name="context" select="../@name"/>
|
<xsl:with-param name="context" select="../@name"/>
|
||||||
<xsl:with-param name="is-reference" select="false()"/>
|
<xsl:with-param name="is-reference" select="false()"/>
|
||||||
<xsl:with-param name="destructor-for" select="../@name"/>
|
<xsl:with-param name="destructor-for">
|
||||||
|
<xsl:call-template name="object-name"/>
|
||||||
|
</xsl:with-param>
|
||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<xsl:template name="class-type-synopsis">
|
<xsl:template name="class-members-synopsis">
|
||||||
<xsl:param name="indentation" select="0"/>
|
<xsl:param name="indentation" select="0"/>
|
||||||
|
|
||||||
<!-- The keyword used to declare this class type, e.g., class,
|
|
||||||
struct, or union. -->
|
|
||||||
<xsl:variable name="class-key">
|
|
||||||
<xsl:call-template name="type.class.key"/>
|
|
||||||
</xsl:variable>
|
|
||||||
|
|
||||||
<xsl:if test="ancestor::class|ancestor::class-specialization|
|
|
||||||
ancestor::struct|ancestor::struct-specialization|
|
|
||||||
ancestor::union|ancestor::union-specialization">
|
|
||||||
<xsl:text> </xsl:text>
|
|
||||||
|
|
||||||
<!-- If this nested class has a "purpose" element, use it as a
|
|
||||||
comment. -->
|
|
||||||
<xsl:if test="purpose">
|
|
||||||
<xsl:call-template name="indent">
|
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:call-template name="highlight-comment">
|
|
||||||
<xsl:with-param name="text">
|
|
||||||
<xsl:text>// </xsl:text>
|
|
||||||
<xsl:apply-templates select="purpose" mode="comment"/>
|
|
||||||
</xsl:with-param>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:text> </xsl:text>
|
|
||||||
</xsl:if>
|
|
||||||
</xsl:if>
|
|
||||||
|
|
||||||
<!-- Template header -->
|
|
||||||
<xsl:if test="template">
|
|
||||||
<xsl:call-template name="indent">
|
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:apply-templates select="template" mode="reference">
|
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
|
||||||
</xsl:apply-templates>
|
|
||||||
</xsl:if>
|
|
||||||
<xsl:text> </xsl:text>
|
|
||||||
|
|
||||||
<!-- Class name -->
|
|
||||||
<xsl:call-template name="indent">
|
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:call-template name="highlight-keyword">
|
|
||||||
<xsl:with-param name="keyword" select="$class-key"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:text> </xsl:text>
|
|
||||||
<xsl:value-of select="@name"/>
|
|
||||||
<xsl:apply-templates select="specialization"/>
|
|
||||||
|
|
||||||
<xsl:choose>
|
|
||||||
<xsl:when test="inherit">
|
|
||||||
<!-- Base class list (with opening brace) -->
|
|
||||||
<xsl:call-template name="print.base.classes">
|
|
||||||
<xsl:with-param name="indentation"
|
|
||||||
select="string-length($class-key) + string-length(@name)
|
|
||||||
+ $indentation + 1"/>
|
|
||||||
<xsl:with-param name="base-indentation" select="$indentation"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
</xsl:when>
|
|
||||||
<xsl:otherwise>
|
|
||||||
<!-- Opening brace -->
|
|
||||||
<xsl:text> {</xsl:text>
|
|
||||||
</xsl:otherwise>
|
|
||||||
</xsl:choose>
|
|
||||||
|
|
||||||
<!-- Public designator -->
|
|
||||||
<xsl:if test="contains(local-name(.), 'class')">
|
|
||||||
<xsl:text> </xsl:text>
|
|
||||||
<xsl:call-template name="indent">
|
|
||||||
<xsl:with-param name="indentation" select="$indentation"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:call-template name="highlight-keyword">
|
|
||||||
<xsl:with-param name="keyword" select="'public'"/>
|
|
||||||
</xsl:call-template>
|
|
||||||
<xsl:text>:</xsl:text>
|
|
||||||
</xsl:if>
|
|
||||||
|
|
||||||
<!-- Typedefs -->
|
<!-- Typedefs -->
|
||||||
<xsl:if test="typedef">
|
<xsl:if test="typedef">
|
||||||
<xsl:text> </xsl:text>
|
<xsl:text> </xsl:text>
|
||||||
@ -836,6 +765,121 @@ Unknown type element "<xsl:value-of select="local-name(.)"/>" in type.display.na
|
|||||||
<xsl:apply-templates select="data-member" mode="synopsis">
|
<xsl:apply-templates select="data-member" mode="synopsis">
|
||||||
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
<xsl:with-param name="indentation" select="$indentation + 2"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template name="print-access-specification">
|
||||||
|
<xsl:param name="indentation" select="0"/>
|
||||||
|
<xsl:param name="specification" select="'public'"/>
|
||||||
|
<xsl:text> </xsl:text>
|
||||||
|
<xsl:call-template name="indent">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:call-template name="highlight-keyword">
|
||||||
|
<xsl:with-param name="keyword" select="$specification"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:text>:</xsl:text>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template match="access" mode="synopsis">
|
||||||
|
<xsl:param name="indentation" select="0"/>
|
||||||
|
<xsl:call-template name="print-access-specification">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
<xsl:with-param name="specification" select="@name"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:call-template name="class-members-synopsis">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template name="class-type-synopsis">
|
||||||
|
<xsl:param name="indentation" select="0"/>
|
||||||
|
|
||||||
|
<!-- The keyword used to declare this class type, e.g., class,
|
||||||
|
struct, or union. -->
|
||||||
|
<xsl:variable name="class-key">
|
||||||
|
<xsl:call-template name="type.class.key"/>
|
||||||
|
</xsl:variable>
|
||||||
|
|
||||||
|
<xsl:if test="ancestor::class|ancestor::class-specialization|
|
||||||
|
ancestor::struct|ancestor::struct-specialization|
|
||||||
|
ancestor::union|ancestor::union-specialization">
|
||||||
|
<xsl:text> </xsl:text>
|
||||||
|
|
||||||
|
<!-- If this nested class has a "purpose" element, use it as a
|
||||||
|
comment. -->
|
||||||
|
<xsl:if test="purpose">
|
||||||
|
<xsl:call-template name="indent">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:call-template name="highlight-comment">
|
||||||
|
<xsl:with-param name="text">
|
||||||
|
<xsl:text>// </xsl:text>
|
||||||
|
<xsl:apply-templates select="purpose" mode="comment"/>
|
||||||
|
</xsl:with-param>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:text> </xsl:text>
|
||||||
|
</xsl:if>
|
||||||
|
</xsl:if>
|
||||||
|
|
||||||
|
<!-- Template header -->
|
||||||
|
<xsl:if test="template">
|
||||||
|
<xsl:call-template name="indent">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:apply-templates select="template" mode="reference">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:apply-templates>
|
||||||
|
</xsl:if>
|
||||||
|
<xsl:text> </xsl:text>
|
||||||
|
|
||||||
|
<!-- Class name -->
|
||||||
|
<xsl:call-template name="indent">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:call-template name="highlight-keyword">
|
||||||
|
<xsl:with-param name="keyword" select="$class-key"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
<xsl:text> </xsl:text>
|
||||||
|
<xsl:value-of select="@name"/>
|
||||||
|
<xsl:apply-templates select="specialization"/>
|
||||||
|
|
||||||
|
<xsl:choose>
|
||||||
|
<xsl:when test="inherit">
|
||||||
|
<!-- Base class list (with opening brace) -->
|
||||||
|
<xsl:call-template name="print.base.classes">
|
||||||
|
<xsl:with-param name="indentation"
|
||||||
|
select="string-length($class-key) + string-length(@name)
|
||||||
|
+ $indentation + 1"/>
|
||||||
|
<xsl:with-param name="base-indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
</xsl:when>
|
||||||
|
<xsl:otherwise>
|
||||||
|
<!-- Opening brace -->
|
||||||
|
<xsl:text> {</xsl:text>
|
||||||
|
</xsl:otherwise>
|
||||||
|
</xsl:choose>
|
||||||
|
|
||||||
|
<!-- Default public designator for members not inside explicit <access> elements -->
|
||||||
|
<xsl:if test="contains(local-name(.), 'class')">
|
||||||
|
<xsl:if test="count(static-constant|typedef|enum|
|
||||||
|
copy-assignment|constructor|destructor|method-group|
|
||||||
|
function|method|overloaded-method|data-member|
|
||||||
|
class|class-specialization|
|
||||||
|
struct|struct-specialization|
|
||||||
|
union|union-specialization) > 0">
|
||||||
|
<xsl:call-template name="print-access-specification">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
</xsl:if>
|
||||||
|
</xsl:if>
|
||||||
|
|
||||||
|
<xsl:call-template name="class-members-synopsis">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:call-template>
|
||||||
|
|
||||||
|
<xsl:apply-templates select="access" mode="synopsis">
|
||||||
|
<xsl:with-param name="indentation" select="$indentation"/>
|
||||||
|
</xsl:apply-templates>
|
||||||
|
|
||||||
<!-- Closing brace -->
|
<!-- Closing brace -->
|
||||||
<xsl:text> </xsl:text>
|
<xsl:text> </xsl:text>
|
||||||
@ -856,6 +900,30 @@ Unknown type element "<xsl:value-of select="local-name(.)"/>" in type.display.na
|
|||||||
</xsl:call-template>
|
</xsl:call-template>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template name="class-members-reference">
|
||||||
|
<xsl:call-template name="construct-copy-destruct-reference"/>
|
||||||
|
|
||||||
|
<xsl:apply-templates
|
||||||
|
select="method-group|method|overloaded-method"
|
||||||
|
mode="reference"/>
|
||||||
|
|
||||||
|
<!-- Emit reference docs for nested classes -->
|
||||||
|
<xsl:apply-templates
|
||||||
|
select="class|class-specialization|
|
||||||
|
struct|struct-specialization|
|
||||||
|
union|union-specialization"
|
||||||
|
mode="namespace-reference"/>
|
||||||
|
|
||||||
|
<!-- Emit reference docs for nested enums -->
|
||||||
|
<xsl:apply-templates
|
||||||
|
select="enum"
|
||||||
|
mode="namespace-reference"/>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template match="access" mode="namespace-reference">
|
||||||
|
<xsl:call-template name="class-members-reference"/>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
<!-- Emit namespace-level class reference documentation -->
|
<!-- Emit namespace-level class reference documentation -->
|
||||||
<xsl:template match="class|class-specialization|
|
<xsl:template match="class|class-specialization|
|
||||||
struct|struct-specialization|
|
struct|struct-specialization|
|
||||||
@ -900,25 +968,8 @@ Unknown type element "<xsl:value-of select="local-name(.)"/>" in type.display.na
|
|||||||
</xsl:if>
|
</xsl:if>
|
||||||
<xsl:apply-templates select="description"/>
|
<xsl:apply-templates select="description"/>
|
||||||
|
|
||||||
<xsl:apply-templates select="typedef" mode="reference"/>
|
<xsl:call-template name="class-members-reference"/>
|
||||||
|
<xsl:apply-templates select="access" mode="namespace-reference"/>
|
||||||
<xsl:call-template name="construct-copy-destruct-reference"/>
|
|
||||||
|
|
||||||
<xsl:apply-templates
|
|
||||||
select="method-group|method|overloaded-method"
|
|
||||||
mode="reference"/>
|
|
||||||
|
|
||||||
<!-- Emit reference docs for nested classes -->
|
|
||||||
<xsl:apply-templates
|
|
||||||
select="class|class-specialization|
|
|
||||||
struct|struct-specialization|
|
|
||||||
union|union-specialization"
|
|
||||||
mode="namespace-reference"/>
|
|
||||||
|
|
||||||
<!-- Emit reference docs for nested enums -->
|
|
||||||
<xsl:apply-templates
|
|
||||||
select="enum"
|
|
||||||
mode="namespace-reference"/>
|
|
||||||
|
|
||||||
<xsl:apply-templates select="free-function-group" mode="reference">
|
<xsl:apply-templates select="free-function-group" mode="reference">
|
||||||
<xsl:with-param name="class" select="@name"/>
|
<xsl:with-param name="class" select="@name"/>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com>
|
||||||
|
|
||||||
Distributed under the Boost Software License, Version 1.0.
|
Distributed under the Boost Software License, Version 1.0.
|
||||||
(See accompanying file LICENSE_1_0.txt or copy at
|
(See accompanying file LICENSE_1_0.txt or copy at
|
||||||
http://www.boost.org/LICENSE_1_0.txt)
|
http://www.boost.org/LICENSE_1_0.txt)
|
||||||
@ -19,4 +19,33 @@
|
|||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
<!-- get name of first ancestor-or-self which is a class, struct or union -->
|
||||||
|
<xsl:template name="object-name">
|
||||||
|
<xsl:value-of select="(ancestor-or-self::class |
|
||||||
|
ancestor-or-self::class-specialization |
|
||||||
|
ancestor-or-self::struct |
|
||||||
|
ancestor-or-self::struct-specialization |
|
||||||
|
ancestor-or-self::union |
|
||||||
|
ancestor-or-self::union-specialization)/@name[last()]"/>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<!-- get name of access specification that we are inside -->
|
||||||
|
<xsl:template name="access-name">
|
||||||
|
<xsl:variable name="ancestors" select="ancestor-or-self::access |
|
||||||
|
ancestor-or-self::class |
|
||||||
|
ancestor-or-self::class-specialization |
|
||||||
|
ancestor-or-self::struct |
|
||||||
|
ancestor-or-self::struct-specialization |
|
||||||
|
ancestor-or-self::union |
|
||||||
|
ancestor-or-self::union-specialization"/>
|
||||||
|
<xsl:choose>
|
||||||
|
<xsl:when test="name($ancestors[last()])='access'">
|
||||||
|
<xsl:value-of select="$ancestors[last()]/@name"/>
|
||||||
|
</xsl:when>
|
||||||
|
<xsl:otherwise>
|
||||||
|
public
|
||||||
|
</xsl:otherwise>
|
||||||
|
</xsl:choose>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
</xsl:stylesheet>
|
</xsl:stylesheet>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user