<
xsl:
stylesheet xmlns:src="
http://www.sdml.info/srcML/src"
xmlns:cpp="
http://www.sdml.info/srcML/cpp"
xmlns:xsl="
http://www.w3.org/1999/XSL/Transform"
xmlns:xd="
http://www.pnp-software.com/XSLTdoc"
xmlns:ax="
http://control.ee.ethz.ch/XWeaver/AspectX"
xmlns:xslt="
http://xslt"
version="
2.0">
<
xd:
doc type="
stylesheet">
<
xd:
short>
XSL Variable Declarations for join point of type <
code>
src:function</
code></
xd:
short>
<
xd:
detail><
xd:
dollarVariables /></
xd:
detail>
<
xd:
cvsId>
$Id: function.xsl 2 2005-01-19 16:09:12Z ibirrer $</
xd:
cvsId>
<
xd:
author>
ibirrer</
xd:
author>
<
xd:
copyright>
2004, P&P Software GmbH</
xd:
copyright>
</
xd:
doc>
<
xsl:
namespace-alias stylesheet-prefix="
xslt"
result-prefix="
xsl" />
<
xsl:
template match="
src:function"
mode="
variableDeclarations">
<
xslt:
variable name="
className">
<
xslt:
choose>
<
xslt:
when test="
ancestor::src:class">
<
xslt:
sequence select="
ancestor::src:class/src:name" />
</
xslt:
when>
<
xslt:
otherwise>
<
xslt:
sequence select="
src:name/src:name[1]" />
</
xslt:
otherwise>
</
xslt:
choose>
</
xslt:
variable>
<
xslt:
variable name="
functionName">
<
xslt:
choose>
<
xslt:
when test="
src:name[src:name]">
<
xslt:
value-of select="
src:name/src:name[last()]" />
</
xslt:
when>
<
xslt:
otherwise>
<
xslt:
value-of select="
src:name" />
</
xslt:
otherwise>
</
xslt:
choose>
</
xslt:
variable>
<
xslt:
variable name="
functionType"
select="
src:type/src:name" />
<
xslt:
variable name="
paramNames"
select="
src:parameter_list/src:param/src:decl/src:name" />
<
xslt:
variable name="
paramTypes"
select="
src:parameter_list/src:param/src:decl/src:type" />
</
xsl:
template>
</
xsl:
stylesheet>
v