summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkim Demaille <akim@lrde.epita.fr>2013-11-26 16:20:52 +0100
committerAkim Demaille <akim@lrde.epita.fr>2013-11-26 16:20:52 +0100
commitf3d2a1b2ac717cd9faabd5106ff2bc366c49bd6a (patch)
treebf9c4157f769e4cdd026a4b5fea9d1af6739e3be
parent21cf80399f199a565fc5cffe2cad734313ad4e8f (diff)
downloadbison-f3d2a1b2ac717cd9faabd5106ff2bc366c49bd6a.tar.gz
xml: also display %empty for empty right-hand sides
* data/xslt/xml2dot.xsl, data/xslt/xml2text.xsl: Display %empty where needed.
-rw-r--r--data/xslt/xml2dot.xsl6
-rw-r--r--data/xslt/xml2text.xsl7
2 files changed, 6 insertions, 7 deletions
diff --git a/data/xslt/xml2dot.xsl b/data/xslt/xml2dot.xsl
index 93bec599..7b62d6e2 100644
--- a/data/xslt/xml2dot.xsl
+++ b/data/xslt/xml2dot.xsl
@@ -201,6 +201,8 @@
<xsl:if test="$point = 0">
<xsl:text> .</xsl:text>
</xsl:if>
+
+ <!-- RHS -->
<xsl:for-each select="rhs/symbol|rhs/empty">
<xsl:apply-templates select="."/>
<xsl:if test="$point = position()">
@@ -214,7 +216,9 @@
<xsl:value-of select="."/>
</xsl:template>
-<xsl:template match="empty"/>
+<xsl:template match="empty">
+ <xsl:text> %empty</xsl:text>
+</xsl:template>
<xsl:template match="lookaheads">
<xsl:text> [</xsl:text>
diff --git a/data/xslt/xml2text.xsl b/data/xslt/xml2text.xsl
index 2626f566..4d34be16 100644
--- a/data/xslt/xml2text.xsl
+++ b/data/xslt/xml2text.xsl
@@ -350,12 +350,7 @@
<xsl:if test="position() = $point + 1">
<xsl:text> .</xsl:text>
</xsl:if>
- <xsl:if test="$itemset = 'true' and name(.) != 'empty'">
- <xsl:apply-templates select="."/>
- </xsl:if>
- <xsl:if test="$itemset != 'true'">
- <xsl:apply-templates select="."/>
- </xsl:if>
+ <xsl:apply-templates select="."/>
<xsl:if test="position() = last() and position() = $point">
<xsl:text> .</xsl:text>
</xsl:if>