1 <?xml version="1.0" encoding="ASCII"?><!--This file was created automatically by html2xhtml--><!--from the HTML stylesheets.--><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://docbook.org/ns/docbook" xmlns="http://www.w3.org/1999/xhtml" exclude-result-prefixes="d" version="1.0">
3 <!-- ********************************************************************
5 This file is part of the XSL DocBook Stylesheet distribution.
6 See ../README or http://cdn.docbook.org/release/xsl/current/ for
7 copyright and other information.
9 ******************************************************************** -->
11 <!-- ==================================================================== -->
13 <!-- synopsis is in verbatim -->
15 <!-- ==================================================================== -->
17 <xsl:template match="d:cmdsynopsis">
19 <xsl:apply-templates select="." mode="common.html.attributes"/>
21 <xsl:call-template name="id.attribute">
22 <xsl:with-param name="conditional" select="0"/>
25 <xsl:when test="..//processing-instruction('dbcmdlist')">
26 <!-- * Placing a dbcmdlist PI as a child of a particular element -->
27 <!-- * creates a hyperlinked list of all cmdsynopsis instances -->
28 <!-- * that are descendants of that element; so for any -->
29 <!-- * cmdsynopsis that is a descendant of an element containing -->
30 <!-- * a dbcmdlist PI, we need to output an a@id instance so that -->
31 <!-- * we will have something to link to -->
32 <xsl:call-template name="anchor">
33 <xsl:with-param name="conditional" select="0"/>
37 <xsl:call-template name="anchor">
38 <xsl:with-param name="conditional" select="1"/>
42 <xsl:apply-templates/>
47 <xsl:template match="d:cmdsynopsis/d:command">
49 <xsl:call-template name="inline.monoseq"/>
50 <xsl:text> </xsl:text>
53 <xsl:template match="d:cmdsynopsis/d:command[1]" priority="2">
54 <xsl:call-template name="inline.monoseq"/>
55 <xsl:text> </xsl:text>
58 <xsl:template match="d:group|d:arg" name="group-or-arg">
59 <xsl:variable name="choice" select="@choice"/>
60 <xsl:variable name="rep" select="@rep"/>
61 <xsl:variable name="sepchar">
63 <xsl:when test="ancestor-or-self::*/@sepchar">
64 <xsl:value-of select="ancestor-or-self::*/@sepchar"/>
67 <xsl:text> </xsl:text>
72 <xsl:if test="preceding-sibling::*">
73 <xsl:value-of select="$sepchar"/>
76 <xsl:when test="$choice='plain'">
77 <xsl:value-of select="$arg.choice.plain.open.str"/>
79 <xsl:when test="$choice='req'">
80 <xsl:value-of select="$arg.choice.req.open.str"/>
82 <xsl:when test="$choice='opt'">
83 <xsl:value-of select="$arg.choice.opt.open.str"/>
86 <xsl:value-of select="$arg.choice.def.open.str"/>
89 <xsl:apply-templates/>
91 <xsl:when test="$rep='repeat'">
92 <xsl:value-of select="$arg.rep.repeat.str"/>
94 <xsl:when test="$rep='norepeat'">
95 <xsl:value-of select="$arg.rep.norepeat.str"/>
98 <xsl:value-of select="$arg.rep.def.str"/>
102 <xsl:when test="$choice='plain'">
103 <xsl:value-of select="$arg.choice.plain.close.str"/>
105 <xsl:when test="$choice='req'">
106 <xsl:value-of select="$arg.choice.req.close.str"/>
108 <xsl:when test="$choice='opt'">
109 <xsl:value-of select="$arg.choice.opt.close.str"/>
112 <xsl:value-of select="$arg.choice.def.close.str"/>
117 <xsl:template match="d:group/d:arg">
118 <xsl:variable name="choice" select="@choice"/>
119 <xsl:variable name="rep" select="@rep"/>
120 <xsl:if test="preceding-sibling::*">
121 <xsl:value-of select="$arg.or.sep"/>
123 <xsl:call-template name="group-or-arg"/>
126 <xsl:template match="d:sbr">
130 <!-- ==================================================================== -->
132 <xsl:template match="d:synopfragmentref">
133 <xsl:variable name="target" select="key('id',@linkend)"/>
134 <xsl:variable name="snum">
135 <xsl:apply-templates select="$target" mode="synopfragment.number"/>
138 <a href="#{@linkend}">
139 <xsl:text>(</xsl:text>
140 <xsl:value-of select="$snum"/>
141 <xsl:text>)</xsl:text>
143 <xsl:text> </xsl:text>
144 <xsl:apply-templates/>
148 <xsl:template match="d:synopfragment" mode="synopfragment.number">
149 <xsl:number format="1"/>
152 <xsl:template match="d:synopfragment">
153 <xsl:variable name="snum">
154 <xsl:apply-templates select="." mode="synopfragment.number"/>
156 <!-- You can't introduce another <p> here, because you're
157 already in a <p> from cmdsynopsis-->
159 <xsl:variable name="id">
160 <xsl:call-template name="object.id"/>
163 <xsl:text>(</xsl:text>
164 <xsl:value-of select="$snum"/>
165 <xsl:text>)</xsl:text>
167 <xsl:text> </xsl:text>
168 <xsl:apply-templates/>
172 <xsl:template match="d:funcsynopsis">
173 <xsl:if test="..//processing-instruction('dbfunclist')">
174 <!-- * Placing a dbfunclist PI as a child of a particular element -->
175 <!-- * creates a hyperlinked list of all funcsynopsis instances that -->
176 <!-- * are descendants of that element; so for any funcsynopsis that is -->
177 <!-- * a descendant of an element containing a dbfunclist PI, we need -->
178 <!-- * to output an a@id instance so that we will have something to -->
181 <xsl:call-template name="id.attribute">
182 <xsl:with-param name="conditional" select="0"/>
185 <xsl:call-template name="anchor">
186 <xsl:with-param name="conditional" select="0"/>
189 <xsl:call-template name="informal.object"/>
192 <xsl:template match="d:funcsynopsisinfo">
194 <xsl:apply-templates select="." mode="common.html.attributes"/>
195 <xsl:call-template name="id.attribute"/>
196 <xsl:apply-templates/>
200 <!-- ====================================================================== -->
201 <!-- funcprototype -->
204 funcprototype ::= (funcdef,
205 (void|varargs|paramdef+))
207 funcdef ::= (#PCDATA|type|replaceable|function)*
209 paramdef ::= (#PCDATA|type|replaceable|parameter|funcparams)*
212 <xsl:template match="d:funcprototype">
213 <xsl:variable name="html-style">
214 <xsl:call-template name="pi.dbhtml_funcsynopsis-style">
215 <xsl:with-param name="node" select="ancestor::d:funcsynopsis/descendant-or-self::*"/>
219 <xsl:variable name="style">
221 <xsl:when test="$html-style != ''">
222 <xsl:value-of select="$html-style"/>
225 <xsl:value-of select="$funcsynopsis.style"/>
230 <!-- * 2008-02-17. the code no longer relies on the funcsynopsis.tabular.threshold -->
231 <!-- * param at all (the stuff below has been commented out since mid -->
232 <!-- * 2006), so I completely removed the funcsynopsis.tabular.threshold param -->
233 <!-- * .. MikeSmith -->
235 <xsl:variable name="tabular-p"
236 select="$funcsynopsis.tabular.threshold > 0
237 and string-length(.) > $funcsynopsis.tabular.threshold"/>
240 <xsl:variable name="tabular-p" select="true()"/>
243 <xsl:when test="$style = 'kr' and $tabular-p">
244 <xsl:apply-templates select="." mode="kr-tabular"/>
246 <xsl:when test="$style = 'kr'">
247 <xsl:apply-templates select="." mode="kr-nontabular"/>
249 <xsl:when test="$style = 'ansi' and $tabular-p">
250 <xsl:apply-templates select="." mode="ansi-tabular"/>
253 <xsl:apply-templates select="." mode="ansi-nontabular"/>
258 <!-- ====================================================================== -->
259 <!-- funcprototype: kr, non-tabular -->
261 <xsl:template match="d:funcprototype" mode="kr-nontabular">
263 <xsl:apply-templates mode="kr-nontabular"/>
264 <xsl:if test="d:paramdef">
266 <xsl:apply-templates select="d:paramdef" mode="kr-funcsynopsis-mode"/>
271 <xsl:template match="d:funcdef" mode="kr-nontabular">
273 <xsl:apply-templates select="." mode="common.html.attributes"/>
274 <xsl:call-template name="id.attribute"/>
275 <xsl:apply-templates mode="kr-nontabular"/>
276 <xsl:text>(</xsl:text>
280 <xsl:template match="d:funcdef/d:function" mode="kr-nontabular">
282 <xsl:when test="$funcsynopsis.decoration != 0">
283 <strong class="fsfunc"><xsl:apply-templates mode="kr-nontabular"/></strong>
286 <xsl:apply-templates mode="kr-nontabular"/>
291 <xsl:template match="d:void" mode="kr-nontabular">
293 <xsl:text>;</xsl:text>
296 <xsl:template match="d:varargs" mode="kr-nontabular">
297 <xsl:text>...</xsl:text>
299 <xsl:text>;</xsl:text>
302 <xsl:template match="d:paramdef" mode="kr-nontabular">
303 <xsl:apply-templates select="d:parameter" mode="kr-nontabular"/>
305 <xsl:when test="following-sibling::*">
306 <xsl:text>, </xsl:text>
310 <xsl:text>;</xsl:text>
315 <xsl:template match="d:paramdef/d:parameter" mode="kr-nontabular">
317 <xsl:when test="$funcsynopsis.decoration != 0">
318 <var class="pdparam">
319 <xsl:apply-templates mode="kr-nontabular"/>
324 <xsl:apply-templates mode="kr-nontabular"/>
330 <xsl:template match="d:paramdef" mode="kr-funcsynopsis-mode">
331 <xsl:if test="preceding-sibling::d:paramdef"><br/></xsl:if>
333 <xsl:apply-templates mode="kr-funcsynopsis-mode"/>
335 <xsl:text>;</xsl:text>
338 <xsl:template match="d:paramdef/d:parameter" mode="kr-funcsynopsis-mode">
340 <xsl:when test="$funcsynopsis.decoration != 0">
341 <var class="pdparam">
342 <xsl:apply-templates mode="kr-funcsynopsis-mode"/>
347 <xsl:apply-templates mode="kr-funcsynopsis-mode"/>
353 <xsl:template match="d:funcparams" mode="kr-funcsynopsis-mode">
355 <xsl:apply-templates mode="kr-funcsynopsis-mode"/>
359 <!-- ====================================================================== -->
360 <!-- funcprototype: kr, tabular -->
362 <xsl:template match="d:funcprototype" mode="kr-tabular">
363 <table border="{$table.border.off}" class="funcprototype-table">
364 <xsl:if test="$div.element != 'section'">
365 <xsl:attribute name="summary">Function synopsis</xsl:attribute>
367 <xsl:if test="$css.decoration != 0">
368 <xsl:attribute name="style">cellspacing: 0; cellpadding: 0;</xsl:attribute>
372 <xsl:apply-templates select="d:funcdef" mode="kr-tabular"/>
374 <xsl:apply-templates select="(d:void|d:varargs|d:paramdef)[1]" mode="kr-tabular"/>
376 <xsl:for-each select="(d:void|d:varargs|d:paramdef)[preceding-sibling::*[not(self::d:funcdef)]]">
379 <xsl:apply-templates select="." mode="kr-tabular"/>
383 <xsl:if test="d:paramdef">
384 <div class="paramdef-list">
385 <xsl:apply-templates select="d:paramdef" mode="kr-funcsynopsis-mode"/>
388 <div class="funcprototype-spacer"> </div> <!-- hACk: blank div for vertical spacing -->
391 <xsl:template match="d:funcdef" mode="kr-tabular">
393 <xsl:apply-templates select="." mode="common.html.attributes"/>
394 <xsl:call-template name="id.attribute"/>
395 <xsl:apply-templates mode="kr-tabular"/>
396 <xsl:text>(</xsl:text>
400 <xsl:template match="d:funcdef/d:function" mode="kr-tabular">
402 <xsl:when test="$funcsynopsis.decoration != 0">
403 <strong class="fsfunc"><xsl:apply-templates mode="kr-nontabular"/></strong>
406 <xsl:apply-templates mode="kr-tabular"/>
411 <xsl:template match="d:void" mode="kr-tabular">
414 <xsl:text>;</xsl:text>
419 <xsl:template match="d:varargs" mode="kr-tabular">
421 <xsl:text>...</xsl:text>
423 <xsl:text>;</xsl:text>
428 <xsl:template match="d:paramdef" mode="kr-tabular">
430 <xsl:apply-templates select="d:parameter" mode="kr-tabular"/>
432 <xsl:when test="following-sibling::*">
433 <xsl:text>, </xsl:text>
437 <xsl:text>;</xsl:text>
444 <xsl:template match="d:paramdef/d:parameter" mode="kr-tabular">
446 <xsl:when test="$funcsynopsis.decoration != 0">
447 <var class="pdparam">
448 <xsl:apply-templates mode="kr-tabular"/>
453 <xsl:apply-templates mode="kr-tabular"/>
459 <xsl:template match="d:paramdef" mode="kr-tabular-funcsynopsis-mode">
460 <xsl:variable name="type">
462 <xsl:when test="d:type">
463 <xsl:apply-templates select="d:type" mode="kr-tabular-funcsynopsis-mode"/>
465 <xsl:when test="normalize-space(d:parameter/preceding-sibling::node()[not(self::d:parameter)]) != ''">
466 <xsl:copy-of select="d:parameter/preceding-sibling::node()[not(self::d:parameter)]"/>
473 <xsl:when test="$type != '' and d:funcparams">
476 <xsl:copy-of select="$type"/>
478 <xsl:text> </xsl:text>
483 <xsl:when test="d:type">
484 <xsl:apply-templates select="d:type/following-sibling::*" mode="kr-tabular-funcsynopsis-mode"/>
487 <xsl:apply-templates select="*" mode="kr-tabular-funcsynopsis-mode"/>
494 <xsl:when test="d:funcparams">
497 <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/>
505 <xsl:apply-templates select="d:parameter/preceding-sibling::node()[not(self::d:parameter)]" mode="kr-tabular-funcsynopsis-mode"/>
507 <xsl:text> </xsl:text>
511 <xsl:apply-templates select="d:parameter" mode="kr-tabular"/>
512 <xsl:apply-templates select="d:parameter/following-sibling::*[not(self::d:parameter)]" mode="kr-tabular-funcsynopsis-mode"/>
513 <xsl:text>;</xsl:text>
521 <xsl:template match="d:paramdef/d:parameter" mode="kr-tabular-funcsynopsis-mode">
523 <xsl:when test="$funcsynopsis.decoration != 0">
524 <var class="pdparam">
525 <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/>
530 <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/>
536 <xsl:template match="d:funcparams" mode="kr-tabular-funcsynopsis-mode">
538 <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/>
540 <xsl:text>;</xsl:text>
543 <!-- ====================================================================== -->
544 <!-- funcprototype: ansi, non-tabular -->
546 <xsl:template match="d:funcprototype" mode="ansi-nontabular">
548 <xsl:apply-templates mode="ansi-nontabular"/>
552 <xsl:template match="d:funcdef" mode="ansi-nontabular">
554 <xsl:apply-templates select="." mode="common.html.attributes"/>
555 <xsl:call-template name="id.attribute"/>
556 <xsl:apply-templates mode="ansi-nontabular"/>
557 <xsl:text>(</xsl:text>
561 <xsl:template match="d:funcdef/d:function" mode="ansi-nontabular">
563 <xsl:when test="$funcsynopsis.decoration != 0">
564 <strong class="fsfunc"><xsl:apply-templates mode="ansi-nontabular"/></strong>
567 <xsl:apply-templates mode="ansi-nontabular"/>
572 <xsl:template match="d:void" mode="ansi-nontabular">
574 <xsl:text>;</xsl:text>
577 <xsl:template match="d:varargs" mode="ansi-nontabular">
578 <xsl:text>...</xsl:text>
580 <xsl:text>;</xsl:text>
583 <xsl:template match="d:paramdef" mode="ansi-nontabular">
584 <xsl:apply-templates mode="ansi-nontabular"/>
586 <xsl:when test="following-sibling::*">
587 <xsl:text>, </xsl:text>
591 <xsl:text>;</xsl:text>
596 <xsl:template match="d:paramdef/d:parameter" mode="ansi-nontabular">
598 <xsl:when test="$funcsynopsis.decoration != 0">
599 <var class="pdparam">
600 <xsl:apply-templates mode="ansi-nontabular"/>
605 <xsl:apply-templates mode="ansi-nontabular"/>
611 <xsl:template match="d:funcparams" mode="ansi-nontabular">
613 <xsl:apply-templates mode="ansi-nontabular"/>
617 <!-- ====================================================================== -->
618 <!-- funcprototype: ansi, tabular -->
620 <xsl:template match="d:funcprototype" mode="ansi-tabular">
621 <table border="{$table.border.off}" class="funcprototype-table">
622 <xsl:if test="$div.element != 'section'">
623 <xsl:attribute name="summary">Function synopsis</xsl:attribute>
625 <xsl:if test="$css.decoration != 0">
626 <xsl:attribute name="style">cellspacing: 0; cellpadding: 0;</xsl:attribute>
630 <xsl:apply-templates select="d:funcdef" mode="ansi-tabular"/>
632 <xsl:apply-templates select="(d:void|d:varargs|d:paramdef)[1]" mode="ansi-tabular"/>
634 <xsl:for-each select="(d:void|d:varargs|d:paramdef)[preceding-sibling::*[not(self::d:funcdef)]]">
637 <xsl:apply-templates select="." mode="ansi-tabular"/>
641 <div class="funcprototype-spacer"> </div> <!-- hACk: blank div for vertical spacing -->
644 <xsl:template match="d:funcdef" mode="ansi-tabular">
646 <xsl:apply-templates select="." mode="common.html.attributes"/>
647 <xsl:call-template name="id.attribute"/>
648 <xsl:apply-templates mode="ansi-tabular"/>
649 <xsl:text>(</xsl:text>
653 <xsl:template match="d:funcdef/d:function" mode="ansi-tabular">
655 <xsl:when test="$funcsynopsis.decoration != 0">
656 <strong class="fsfunc"><xsl:apply-templates mode="ansi-nontabular"/></strong>
659 <xsl:apply-templates mode="kr-tabular"/>
664 <xsl:template match="d:void" mode="ansi-tabular">
667 <xsl:text>;</xsl:text>
672 <xsl:template match="d:varargs" mode="ansi-tabular">
674 <xsl:text>...</xsl:text>
676 <xsl:text>;</xsl:text>
681 <xsl:template match="d:paramdef" mode="ansi-tabular">
683 <xsl:apply-templates mode="ansi-tabular"/>
685 <xsl:when test="following-sibling::*">
686 <xsl:text>, </xsl:text>
690 <xsl:text>;</xsl:text>
696 <xsl:template match="d:paramdef/d:parameter" mode="ansi-tabular">
698 <xsl:when test="$funcsynopsis.decoration != 0">
699 <var class="pdparam">
700 <xsl:apply-templates mode="ansi-tabular"/>
705 <xsl:apply-templates mode="ansi-tabular"/>
711 <xsl:template match="d:funcparams" mode="ansi-tabular">
713 <xsl:apply-templates/>
717 <!-- ====================================================================== -->
719 <xsl:variable name="default-classsynopsis-language">java</xsl:variable>
721 <xsl:template match="d:classsynopsis |d:fieldsynopsis |d:methodsynopsis |d:constructorsynopsis |d:destructorsynopsis">
722 <xsl:param name="language">
724 <xsl:when test="@language">
725 <xsl:value-of select="@language"/>
728 <xsl:value-of select="$default-classsynopsis-language"/>
734 <xsl:when test="$language='java' or $language='Java'">
735 <xsl:apply-templates select="." mode="java"/>
737 <xsl:when test="$language='perl' or $language='Perl'">
738 <xsl:apply-templates select="." mode="perl"/>
740 <xsl:when test="$language='idl' or $language='IDL'">
741 <xsl:apply-templates select="." mode="idl"/>
743 <xsl:when test="$language='cpp' or $language='c++' or $language='C++'">
744 <xsl:apply-templates select="." mode="cpp"/>
748 <xsl:text>Unrecognized language on </xsl:text>
749 <xsl:value-of select="local-name(.)"/>
750 <xsl:text>: </xsl:text>
751 <xsl:value-of select="$language"/>
753 <xsl:apply-templates select=".">
754 <xsl:with-param name="language" select="$default-classsynopsis-language"/>
755 </xsl:apply-templates>
760 <xsl:template name="synop-break">
761 <xsl:if test="parent::d:classsynopsis or (following-sibling::d:fieldsynopsis |following-sibling::d:methodsynopsis |following-sibling::d:constructorsynopsis |following-sibling::d:destructorsynopsis)">
767 <!-- ===== Java ======================================================== -->
769 <xsl:template match="d:classsynopsis" mode="java">
771 <xsl:apply-templates select="." mode="common.html.attributes"/>
772 <xsl:call-template name="id.attribute"/>
773 <xsl:apply-templates select="d:ooclass[1]" mode="java"/>
774 <xsl:if test="d:ooclass[preceding-sibling::*]">
775 <xsl:text> extends</xsl:text>
776 <xsl:apply-templates select="d:ooclass[preceding-sibling::*]" mode="java"/>
777 <xsl:if test="d:oointerface|d:ooexception">
779 <xsl:text>    </xsl:text>
782 <xsl:if test="d:oointerface">
783 <xsl:text>implements</xsl:text>
784 <xsl:apply-templates select="d:oointerface" mode="java"/>
785 <xsl:if test="d:ooexception">
787 <xsl:text>    </xsl:text>
790 <xsl:if test="d:ooexception">
791 <xsl:text>throws</xsl:text>
792 <xsl:apply-templates select="d:ooexception" mode="java"/>
794 <xsl:text> {</xsl:text>
796 <xsl:apply-templates select="d:constructorsynopsis |d:destructorsynopsis |d:fieldsynopsis |d:methodsynopsis |d:classsynopsisinfo" mode="java"/>
797 <xsl:text>}</xsl:text>
801 <xsl:template match="d:classsynopsisinfo" mode="java">
802 <xsl:apply-templates mode="java"/>
805 <xsl:template match="d:ooclass|d:oointerface|d:ooexception" mode="java">
807 <xsl:when test="preceding-sibling::*">
808 <xsl:text>, </xsl:text>
811 <xsl:text> </xsl:text>
815 <xsl:apply-templates select="." mode="common.html.attributes"/>
816 <xsl:call-template name="id.attribute"/>
817 <xsl:apply-templates mode="java"/>
821 <xsl:template match="d:modifier|d:package" mode="java">
823 <xsl:apply-templates select="." mode="common.html.attributes"/>
824 <xsl:call-template name="id.attribute"/>
825 <xsl:apply-templates mode="java"/>
826 <xsl:if test="following-sibling::*">
827 <xsl:text> </xsl:text>
832 <xsl:template match="d:classname" mode="java">
833 <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'">
834 <xsl:text>, </xsl:text>
837 <xsl:apply-templates select="." mode="common.html.attributes"/>
838 <xsl:call-template name="id.attribute"/>
839 <xsl:apply-templates mode="java"/>
843 <xsl:template match="d:interfacename" mode="java">
844 <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'">
845 <xsl:text>, </xsl:text>
848 <xsl:apply-templates select="." mode="common.html.attributes"/>
849 <xsl:call-template name="id.attribute"/>
850 <xsl:apply-templates mode="java"/>
854 <xsl:template match="d:exceptionname" mode="java">
855 <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'">
856 <xsl:text>, </xsl:text>
859 <xsl:apply-templates select="." mode="common.html.attributes"/>
860 <xsl:call-template name="id.attribute"/>
861 <xsl:apply-templates mode="java"/>
865 <xsl:template match="d:fieldsynopsis" mode="java">
867 <xsl:apply-templates select="." mode="common.html.attributes"/>
868 <xsl:call-template name="id.attribute"/>
869 <xsl:if test="parent::d:classsynopsis">
870 <xsl:text>  </xsl:text>
872 <xsl:apply-templates mode="java"/>
873 <xsl:text>;</xsl:text>
875 <xsl:call-template name="synop-break"/>
878 <xsl:template match="d:type" mode="java">
880 <xsl:apply-templates select="." mode="common.html.attributes"/>
881 <xsl:call-template name="id.attribute"/>
882 <xsl:apply-templates mode="java"/>
883 <xsl:text> </xsl:text>
887 <xsl:template match="d:varname" mode="java">
889 <xsl:apply-templates select="." mode="common.html.attributes"/>
890 <xsl:call-template name="id.attribute"/>
891 <xsl:apply-templates mode="java"/>
892 <xsl:text> </xsl:text>
896 <xsl:template match="d:initializer" mode="java">
898 <xsl:apply-templates select="." mode="common.html.attributes"/>
899 <xsl:call-template name="id.attribute"/>
900 <xsl:text>= </xsl:text>
901 <xsl:apply-templates mode="java"/>
905 <xsl:template match="d:void" mode="java">
907 <xsl:apply-templates select="." mode="common.html.attributes"/>
908 <xsl:call-template name="id.attribute"/>
909 <xsl:text>void </xsl:text>
913 <xsl:template match="d:methodname" mode="java">
915 <xsl:apply-templates select="." mode="common.html.attributes"/>
916 <xsl:call-template name="id.attribute"/>
917 <xsl:apply-templates mode="java"/>
921 <xsl:template match="d:methodparam" mode="java">
922 <xsl:param name="indent">0</xsl:param>
923 <xsl:if test="preceding-sibling::d:methodparam">
924 <xsl:text>,</xsl:text>
926 <xsl:if test="$indent > 0">
927 <xsl:call-template name="copy-string">
928 <xsl:with-param name="string"> </xsl:with-param>
929 <xsl:with-param name="count" select="$indent + 1"/>
934 <xsl:apply-templates select="." mode="common.html.attributes"/>
935 <xsl:call-template name="id.attribute"/>
936 <xsl:apply-templates mode="java"/>
940 <xsl:template match="d:parameter" mode="java">
942 <xsl:apply-templates select="." mode="common.html.attributes"/>
943 <xsl:call-template name="id.attribute"/>
944 <xsl:apply-templates mode="java"/>
948 <xsl:template mode="java" match="d:constructorsynopsis|d:destructorsynopsis|d:methodsynopsis">
949 <xsl:variable name="start-modifiers" select="d:modifier[following-sibling::*[local-name(.) != 'modifier']]"/>
950 <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/>
951 <xsl:variable name="end-modifiers" select="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/>
952 <xsl:variable name="decl">
953 <xsl:if test="parent::d:classsynopsis">
954 <xsl:text>  </xsl:text>
956 <xsl:apply-templates select="$start-modifiers" mode="java"/>
959 <xsl:if test="local-name($notmod[1]) != 'methodname'">
960 <xsl:apply-templates select="$notmod[1]" mode="java"/>
963 <xsl:apply-templates select="d:methodname" mode="java"/>
967 <xsl:apply-templates select="." mode="common.html.attributes"/>
968 <xsl:call-template name="id.attribute"/>
969 <xsl:copy-of select="$decl"/>
970 <xsl:text>(</xsl:text>
971 <xsl:apply-templates select="d:methodparam" mode="java">
972 <xsl:with-param name="indent" select="string-length($decl)"/>
973 </xsl:apply-templates>
974 <xsl:text>)</xsl:text>
975 <xsl:if test="d:exceptionname">
977 <xsl:text>    throws </xsl:text>
978 <xsl:apply-templates select="d:exceptionname" mode="java"/>
980 <xsl:if test="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]">
981 <xsl:text> </xsl:text>
982 <xsl:apply-templates select="$end-modifiers" mode="java"/>
984 <xsl:text>;</xsl:text>
986 <xsl:call-template name="synop-break"/>
989 <!-- ===== C++ ========================================================= -->
991 <xsl:template match="d:classsynopsis" mode="cpp">
993 <xsl:apply-templates select="." mode="common.html.attributes"/>
994 <xsl:call-template name="id.attribute"/>
995 <xsl:apply-templates select="d:ooclass[1]" mode="cpp"/>
996 <xsl:if test="d:ooclass[preceding-sibling::*]">
997 <xsl:text>: </xsl:text>
998 <xsl:apply-templates select="d:ooclass[preceding-sibling::*]" mode="cpp"/>
999 <xsl:if test="d:oointerface|d:ooexception">
1001 <xsl:text>    </xsl:text>
1004 <xsl:if test="d:oointerface">
1005 <xsl:text> implements</xsl:text>
1006 <xsl:apply-templates select="d:oointerface" mode="cpp"/>
1007 <xsl:if test="d:ooexception">
1009 <xsl:text>    </xsl:text>
1012 <xsl:if test="d:ooexception">
1013 <xsl:text> throws</xsl:text>
1014 <xsl:apply-templates select="d:ooexception" mode="cpp"/>
1016 <xsl:text> {</xsl:text>
1018 <xsl:apply-templates select="d:constructorsynopsis |d:destructorsynopsis |d:fieldsynopsis |d:methodsynopsis |d:classsynopsisinfo" mode="cpp"/>
1019 <xsl:text>}</xsl:text>
1023 <xsl:template match="d:classsynopsisinfo" mode="cpp">
1024 <xsl:apply-templates mode="cpp"/>
1027 <xsl:template match="d:ooclass|d:oointerface|d:ooexception" mode="cpp">
1028 <xsl:if test="preceding-sibling::*">
1029 <xsl:text>, </xsl:text>
1032 <xsl:apply-templates select="." mode="common.html.attributes"/>
1033 <xsl:call-template name="id.attribute"/>
1034 <xsl:apply-templates mode="cpp"/>
1038 <xsl:template match="d:modifier|d:package" mode="cpp">
1040 <xsl:apply-templates select="." mode="common.html.attributes"/>
1041 <xsl:call-template name="id.attribute"/>
1042 <xsl:apply-templates mode="cpp"/>
1043 <xsl:if test="following-sibling::*">
1044 <xsl:text> </xsl:text>
1049 <xsl:template match="d:classname" mode="cpp">
1050 <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'">
1051 <xsl:text>, </xsl:text>
1054 <xsl:apply-templates select="." mode="common.html.attributes"/>
1055 <xsl:call-template name="id.attribute"/>
1056 <xsl:apply-templates mode="cpp"/>
1060 <xsl:template match="d:interfacename" mode="cpp">
1061 <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'">
1062 <xsl:text>, </xsl:text>
1065 <xsl:apply-templates select="." mode="common.html.attributes"/>
1066 <xsl:call-template name="id.attribute"/>
1067 <xsl:apply-templates mode="cpp"/>
1071 <xsl:template match="d:exceptionname" mode="cpp">
1072 <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'">
1073 <xsl:text>, </xsl:text>
1076 <xsl:apply-templates select="." mode="common.html.attributes"/>
1077 <xsl:call-template name="id.attribute"/>
1078 <xsl:apply-templates mode="cpp"/>
1082 <xsl:template match="d:fieldsynopsis" mode="cpp">
1084 <xsl:apply-templates select="." mode="common.html.attributes"/>
1085 <xsl:call-template name="id.attribute"/>
1086 <xsl:if test="parent::d:classsynopsis">
1087 <xsl:text>  </xsl:text>
1089 <xsl:apply-templates mode="cpp"/>
1090 <xsl:text>;</xsl:text>
1092 <xsl:call-template name="synop-break"/>
1095 <xsl:template match="d:type" mode="cpp">
1097 <xsl:apply-templates select="." mode="common.html.attributes"/>
1098 <xsl:call-template name="id.attribute"/>
1099 <xsl:apply-templates mode="cpp"/>
1100 <xsl:text> </xsl:text>
1104 <xsl:template match="d:varname" mode="cpp">
1106 <xsl:apply-templates select="." mode="common.html.attributes"/>
1107 <xsl:call-template name="id.attribute"/>
1108 <xsl:apply-templates mode="cpp"/>
1109 <xsl:text> </xsl:text>
1113 <xsl:template match="d:initializer" mode="cpp">
1115 <xsl:apply-templates select="." mode="common.html.attributes"/>
1116 <xsl:call-template name="id.attribute"/>
1117 <xsl:text>= </xsl:text>
1118 <xsl:apply-templates mode="cpp"/>
1122 <xsl:template match="d:void" mode="cpp">
1124 <xsl:apply-templates select="." mode="common.html.attributes"/>
1125 <xsl:call-template name="id.attribute"/>
1126 <xsl:text>void </xsl:text>
1130 <xsl:template match="d:methodname" mode="cpp">
1132 <xsl:apply-templates select="." mode="common.html.attributes"/>
1133 <xsl:call-template name="id.attribute"/>
1134 <xsl:apply-templates mode="cpp"/>
1138 <xsl:template match="d:methodparam" mode="cpp">
1139 <xsl:if test="preceding-sibling::d:methodparam">
1140 <xsl:text>, </xsl:text>
1143 <xsl:apply-templates select="." mode="common.html.attributes"/>
1144 <xsl:call-template name="id.attribute"/>
1145 <xsl:apply-templates mode="cpp"/>
1149 <xsl:template match="d:parameter" mode="cpp">
1151 <xsl:apply-templates select="." mode="common.html.attributes"/>
1152 <xsl:call-template name="id.attribute"/>
1153 <xsl:apply-templates mode="cpp"/>
1157 <xsl:template mode="cpp" match="d:constructorsynopsis|d:destructorsynopsis|d:methodsynopsis">
1158 <xsl:variable name="start-modifiers" select="d:modifier[following-sibling::*[local-name(.) != 'modifier']]"/>
1159 <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/>
1160 <xsl:variable name="end-modifiers" select="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/>
1163 <xsl:apply-templates select="." mode="common.html.attributes"/>
1164 <xsl:call-template name="id.attribute"/>
1165 <xsl:if test="parent::d:classsynopsis">
1166 <xsl:text>  </xsl:text>
1168 <xsl:apply-templates select="$start-modifiers" mode="cpp"/>
1171 <xsl:if test="local-name($notmod[1]) != 'methodname'">
1172 <xsl:apply-templates select="$notmod[1]" mode="cpp"/>
1175 <xsl:apply-templates select="d:methodname" mode="cpp"/>
1176 <xsl:text>(</xsl:text>
1177 <xsl:apply-templates select="d:methodparam" mode="cpp"/>
1178 <xsl:text>)</xsl:text>
1179 <xsl:if test="d:exceptionname">
1181 <xsl:text>    throws </xsl:text>
1182 <xsl:apply-templates select="d:exceptionname" mode="cpp"/>
1184 <xsl:if test="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]">
1185 <xsl:text> </xsl:text>
1186 <xsl:apply-templates select="$end-modifiers" mode="cpp"/>
1188 <xsl:text>;</xsl:text>
1190 <xsl:call-template name="synop-break"/>
1193 <!-- ===== IDL ========================================================= -->
1195 <xsl:template match="d:classsynopsis" mode="idl">
1197 <xsl:apply-templates select="." mode="common.html.attributes"/>
1198 <xsl:call-template name="id.attribute"/>
1199 <xsl:text>interface </xsl:text>
1200 <xsl:apply-templates select="d:ooclass[1]" mode="idl"/>
1201 <xsl:if test="d:ooclass[preceding-sibling::*]">
1202 <xsl:text>: </xsl:text>
1203 <xsl:apply-templates select="d:ooclass[preceding-sibling::*]" mode="idl"/>
1204 <xsl:if test="d:oointerface|d:ooexception">
1206 <xsl:text>    </xsl:text>
1209 <xsl:if test="d:oointerface">
1210 <xsl:text> implements</xsl:text>
1211 <xsl:apply-templates select="d:oointerface" mode="idl"/>
1212 <xsl:if test="d:ooexception">
1214 <xsl:text>    </xsl:text>
1217 <xsl:if test="d:ooexception">
1218 <xsl:text> throws</xsl:text>
1219 <xsl:apply-templates select="d:ooexception" mode="idl"/>
1221 <xsl:text> {</xsl:text>
1223 <xsl:apply-templates select="d:constructorsynopsis |d:destructorsynopsis |d:fieldsynopsis |d:methodsynopsis |d:classsynopsisinfo" mode="idl"/>
1224 <xsl:text>}</xsl:text>
1228 <xsl:template match="d:classsynopsisinfo" mode="idl">
1229 <xsl:apply-templates mode="idl"/>
1232 <xsl:template match="d:ooclass|d:oointerface|d:ooexception" mode="idl">
1233 <xsl:if test="preceding-sibling::*">
1234 <xsl:text>, </xsl:text>
1237 <xsl:apply-templates select="." mode="common.html.attributes"/>
1238 <xsl:call-template name="id.attribute"/>
1239 <xsl:apply-templates mode="idl"/>
1243 <xsl:template match="d:modifier|d:package" mode="idl">
1245 <xsl:apply-templates select="." mode="common.html.attributes"/>
1246 <xsl:call-template name="id.attribute"/>
1247 <xsl:apply-templates mode="idl"/>
1248 <xsl:if test="following-sibling::*">
1249 <xsl:text> </xsl:text>
1254 <xsl:template match="d:classname" mode="idl">
1255 <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'">
1256 <xsl:text>, </xsl:text>
1259 <xsl:apply-templates select="." mode="common.html.attributes"/>
1260 <xsl:call-template name="id.attribute"/>
1261 <xsl:apply-templates mode="idl"/>
1265 <xsl:template match="d:interfacename" mode="idl">
1266 <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'">
1267 <xsl:text>, </xsl:text>
1270 <xsl:apply-templates select="." mode="common.html.attributes"/>
1271 <xsl:call-template name="id.attribute"/>
1272 <xsl:apply-templates mode="idl"/>
1276 <xsl:template match="d:exceptionname" mode="idl">
1277 <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'">
1278 <xsl:text>, </xsl:text>
1281 <xsl:apply-templates select="." mode="common.html.attributes"/>
1282 <xsl:call-template name="id.attribute"/>
1283 <xsl:apply-templates mode="idl"/>
1287 <xsl:template match="d:fieldsynopsis" mode="idl">
1289 <xsl:apply-templates select="." mode="common.html.attributes"/>
1290 <xsl:call-template name="id.attribute"/>
1291 <xsl:if test="parent::d:classsynopsis">
1292 <xsl:text>  </xsl:text>
1294 <xsl:apply-templates mode="idl"/>
1295 <xsl:text>;</xsl:text>
1297 <xsl:call-template name="synop-break"/>
1300 <xsl:template match="d:type" mode="idl">
1302 <xsl:apply-templates select="." mode="common.html.attributes"/>
1303 <xsl:call-template name="id.attribute"/>
1304 <xsl:apply-templates mode="idl"/>
1305 <xsl:text> </xsl:text>
1309 <xsl:template match="d:varname" mode="idl">
1311 <xsl:apply-templates select="." mode="common.html.attributes"/>
1312 <xsl:call-template name="id.attribute"/>
1313 <xsl:apply-templates mode="idl"/>
1314 <xsl:text> </xsl:text>
1318 <xsl:template match="d:initializer" mode="idl">
1320 <xsl:apply-templates select="." mode="common.html.attributes"/>
1321 <xsl:call-template name="id.attribute"/>
1322 <xsl:text>= </xsl:text>
1323 <xsl:apply-templates mode="idl"/>
1327 <xsl:template match="d:void" mode="idl">
1329 <xsl:apply-templates select="." mode="common.html.attributes"/>
1330 <xsl:call-template name="id.attribute"/>
1331 <xsl:text>void </xsl:text>
1335 <xsl:template match="d:methodname" mode="idl">
1337 <xsl:apply-templates select="." mode="common.html.attributes"/>
1338 <xsl:call-template name="id.attribute"/>
1339 <xsl:apply-templates mode="idl"/>
1343 <xsl:template match="d:methodparam" mode="idl">
1344 <xsl:if test="preceding-sibling::d:methodparam">
1345 <xsl:text>, </xsl:text>
1348 <xsl:apply-templates select="." mode="common.html.attributes"/>
1349 <xsl:call-template name="id.attribute"/>
1350 <xsl:apply-templates mode="idl"/>
1354 <xsl:template match="d:parameter" mode="idl">
1356 <xsl:apply-templates select="." mode="common.html.attributes"/>
1357 <xsl:call-template name="id.attribute"/>
1358 <xsl:apply-templates mode="idl"/>
1362 <xsl:template mode="idl" match="d:constructorsynopsis|d:destructorsynopsis|d:methodsynopsis">
1363 <xsl:variable name="start-modifiers" select="d:modifier[following-sibling::*[local-name(.) != 'modifier']]"/>
1364 <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/>
1365 <xsl:variable name="end-modifiers" select="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/>
1367 <xsl:apply-templates select="." mode="common.html.attributes"/>
1368 <xsl:call-template name="id.attribute"/>
1369 <xsl:if test="parent::d:classsynopsis">
1370 <xsl:text>  </xsl:text>
1372 <xsl:apply-templates select="$start-modifiers" mode="idl"/>
1375 <xsl:if test="local-name($notmod[1]) != 'methodname'">
1376 <xsl:apply-templates select="$notmod[1]" mode="idl"/>
1379 <xsl:apply-templates select="d:methodname" mode="idl"/>
1380 <xsl:text>(</xsl:text>
1381 <xsl:apply-templates select="d:methodparam" mode="idl"/>
1382 <xsl:text>)</xsl:text>
1383 <xsl:if test="d:exceptionname">
1385 <xsl:text>    raises(</xsl:text>
1386 <xsl:apply-templates select="d:exceptionname" mode="idl"/>
1387 <xsl:text>)</xsl:text>
1389 <xsl:if test="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]">
1390 <xsl:text> </xsl:text>
1391 <xsl:apply-templates select="$end-modifiers" mode="idl"/>
1393 <xsl:text>;</xsl:text>
1395 <xsl:call-template name="synop-break"/>
1398 <!-- ===== Perl ======================================================== -->
1400 <xsl:template match="d:classsynopsis" mode="perl">
1402 <xsl:apply-templates select="." mode="common.html.attributes"/>
1403 <xsl:call-template name="id.attribute"/>
1404 <xsl:text>package </xsl:text>
1405 <xsl:apply-templates select="d:ooclass[1]" mode="perl"/>
1406 <xsl:text>;</xsl:text>
1409 <xsl:if test="d:ooclass[preceding-sibling::*]">
1410 <xsl:text>@ISA = (</xsl:text>
1411 <xsl:apply-templates select="d:ooclass[preceding-sibling::*]" mode="perl"/>
1412 <xsl:text>);</xsl:text>
1416 <xsl:apply-templates select="d:constructorsynopsis |d:destructorsynopsis |d:fieldsynopsis |d:methodsynopsis |d:classsynopsisinfo" mode="perl"/>
1420 <xsl:template match="d:classsynopsisinfo" mode="perl">
1421 <xsl:apply-templates mode="perl"/>
1424 <xsl:template match="d:ooclass|d:oointerface|d:ooexception" mode="perl">
1425 <xsl:if test="preceding-sibling::*">
1426 <xsl:text>, </xsl:text>
1429 <xsl:apply-templates select="." mode="common.html.attributes"/>
1430 <xsl:call-template name="id.attribute"/>
1431 <xsl:apply-templates mode="perl"/>
1435 <xsl:template match="d:modifier|d:package" mode="perl">
1437 <xsl:apply-templates select="." mode="common.html.attributes"/>
1438 <xsl:call-template name="id.attribute"/>
1439 <xsl:apply-templates mode="perl"/>
1440 <xsl:if test="following-sibling::*">
1441 <xsl:text> </xsl:text>
1446 <xsl:template match="d:classname" mode="perl">
1447 <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'">
1448 <xsl:text>, </xsl:text>
1451 <xsl:apply-templates select="." mode="common.html.attributes"/>
1452 <xsl:call-template name="id.attribute"/>
1453 <xsl:apply-templates mode="perl"/>
1457 <xsl:template match="d:interfacename" mode="perl">
1458 <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'">
1459 <xsl:text>, </xsl:text>
1462 <xsl:apply-templates select="." mode="common.html.attributes"/>
1463 <xsl:call-template name="id.attribute"/>
1464 <xsl:apply-templates mode="perl"/>
1468 <xsl:template match="d:exceptionname" mode="perl">
1469 <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'">
1470 <xsl:text>, </xsl:text>
1473 <xsl:apply-templates select="." mode="common.html.attributes"/>
1474 <xsl:call-template name="id.attribute"/>
1475 <xsl:apply-templates mode="perl"/>
1479 <xsl:template match="d:fieldsynopsis" mode="perl">
1481 <xsl:apply-templates select="." mode="common.html.attributes"/>
1482 <xsl:call-template name="id.attribute"/>
1483 <xsl:if test="parent::d:classsynopsis">
1484 <xsl:text>  </xsl:text>
1486 <xsl:apply-templates mode="perl"/>
1487 <xsl:text>;</xsl:text>
1489 <xsl:call-template name="synop-break"/>
1492 <xsl:template match="d:type" mode="perl">
1494 <xsl:apply-templates select="." mode="common.html.attributes"/>
1495 <xsl:call-template name="id.attribute"/>
1496 <xsl:apply-templates mode="perl"/>
1497 <xsl:text> </xsl:text>
1501 <xsl:template match="d:varname" mode="perl">
1503 <xsl:apply-templates select="." mode="common.html.attributes"/>
1504 <xsl:call-template name="id.attribute"/>
1505 <xsl:apply-templates mode="perl"/>
1506 <xsl:text> </xsl:text>
1510 <xsl:template match="d:initializer" mode="perl">
1512 <xsl:apply-templates select="." mode="common.html.attributes"/>
1513 <xsl:call-template name="id.attribute"/>
1514 <xsl:text>= </xsl:text>
1515 <xsl:apply-templates mode="perl"/>
1519 <xsl:template match="d:void" mode="perl">
1521 <xsl:apply-templates select="." mode="common.html.attributes"/>
1522 <xsl:call-template name="id.attribute"/>
1523 <xsl:text>void </xsl:text>
1527 <xsl:template match="d:methodname" mode="perl">
1529 <xsl:apply-templates select="." mode="common.html.attributes"/>
1530 <xsl:call-template name="id.attribute"/>
1531 <xsl:apply-templates mode="perl"/>
1535 <xsl:template match="d:methodparam" mode="perl">
1536 <xsl:if test="preceding-sibling::d:methodparam">
1537 <xsl:text>, </xsl:text>
1540 <xsl:apply-templates select="." mode="common.html.attributes"/>
1541 <xsl:call-template name="id.attribute"/>
1542 <xsl:apply-templates mode="perl"/>
1546 <xsl:template match="d:parameter" mode="perl">
1548 <xsl:apply-templates select="." mode="common.html.attributes"/>
1549 <xsl:call-template name="id.attribute"/>
1550 <xsl:apply-templates mode="perl"/>
1554 <xsl:template mode="perl" match="d:constructorsynopsis|d:destructorsynopsis|d:methodsynopsis">
1555 <xsl:variable name="start-modifiers" select="d:modifier[following-sibling::*[local-name(.) != 'modifier']]"/>
1556 <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/>
1557 <xsl:variable name="end-modifiers" select="d:modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/>
1560 <xsl:apply-templates select="." mode="common.html.attributes"/>
1561 <xsl:call-template name="id.attribute"/>
1562 <xsl:text>sub </xsl:text>
1564 <xsl:apply-templates select="d:methodname" mode="perl"/>
1565 <xsl:text> { ... };</xsl:text>
1567 <xsl:call-template name="synop-break"/>
1570 <!-- Used when not occurring as a child of classsynopsis -->
1571 <xsl:template match="d:ooclass|d:oointerface|d:ooexception">
1572 <xsl:apply-templates/>
1575 <!-- ==================================================================== -->
1577 <!-- * DocBook 5 allows linking elements (link, olink, and xref) -->
1578 <!-- * within the OO *synopsis elements (classsynopsis, fieldsynopsis, -->
1579 <!-- * methodsynopsis, constructorsynopsis, destructorsynopsis) and -->
1580 <!-- * their children. So we need to have mode="java|cpp|idl|perl" -->
1581 <!-- * per-mode matches for those linking elements in order for them -->
1582 <!-- * to be processed as expected. -->
1584 <xsl:template match="d:link|d:olink|d:xref" mode="java">
1585 <xsl:apply-templates select="."/>
1588 <xsl:template match="d:link|d:olink|d:xref" mode="cpp">
1589 <xsl:apply-templates select="."/>
1592 <xsl:template match="d:link|d:olink|d:xref" mode="idl">
1593 <xsl:apply-templates select="."/>
1596 <xsl:template match="d:link|d:olink|d:xref" mode="perl">
1597 <xsl:apply-templates select="."/>
1600 <xsl:template match="d:link|d:olink|d:xref" mode="ansi-nontabular">
1601 <xsl:apply-templates select="."/>
1604 <xsl:template match="d:link|d:olink|d:xref" mode="ansi-tabular">
1605 <xsl:apply-templates select="."/>
1608 <xsl:template match="d:link|d:olink|d:xref" mode="kr-nontabular">
1609 <xsl:apply-templates select="."/>
1612 <xsl:template match="d:link|d:olink|d:xref" mode="kr-tabular">
1613 <xsl:apply-templates select="."/>