aboutsummaryrefslogtreecommitdiffstats
path: root/fix
diff options
context:
space:
mode:
authorAlexis La Goutte <alexis.lagoutte@gmail.com>2013-01-20 18:32:23 +0000
committerAlexis La Goutte <alexis.lagoutte@gmail.com>2013-01-20 18:32:23 +0000
commit48cef7c61af8956238dc0710ea6ab32ed670bf68 (patch)
tree51e6881f42a43d0cfe87c20477e51317ac9c1b3d /fix
parent1a182e2a7957da396a11e109efd42bf2370e51b7 (diff)
Enhance FIX generator
* Remove whitespace and tab * Add information how to generate packet-fix.h (in top of packet-fix.h) Regenerate packet-fix.h svn path=/trunk/; revision=47178
Diffstat (limited to 'fix')
-rw-r--r--fix/Values.xsl45
-rw-r--r--fix/hfDecl.xsl34
-rw-r--r--fix/hfField.xsl26
3 files changed, 59 insertions, 46 deletions
diff --git a/fix/Values.xsl b/fix/Values.xsl
index e4a2decb32..dc10b4655a 100644
--- a/fix/Values.xsl
+++ b/fix/Values.xsl
@@ -8,22 +8,23 @@ Syntax: xsltproc Values.xsl FIX44.xml
<xsl:template match="text()"/>
<xsl:template match="/">/* DO NOT EDIT
* This file is autogenerated
+ * Look fix/README for more information how to generate this file
*
* $Id$
*
*/
typedef struct _fix_field {
- int tag; /* FIX tag */
- int hf_id;
- int type; /* */
- const void *table;
+ int tag; /* FIX tag */
+ int hf_id;
+ int type; /* */
+ const void *table;
} fix_field;
- <xsl:apply-templates/>
+<xsl:apply-templates/>
</xsl:template>
-
+
<!--
translate(@description,$uppercase,$smallcase)
-->
@@ -34,34 +35,34 @@ translate(@description,$uppercase,$smallcase)
<xsl:template match="fix/fields">
<xsl:for-each select="field[value]">
<xsl:variable name="val_type" >
- <xsl:choose>
+ <xsl:choose>
<xsl:when test="@type='STRING'"> string_string </xsl:when>
<xsl:when test="@type='MULTIPLESTRINGVALUE'"> string_string </xsl:when>
- <xsl:otherwise> value_string </xsl:otherwise>
+ <xsl:otherwise> value_string </xsl:otherwise>
</xsl:choose>
</xsl:variable>
- static const <xsl:copy-of select="$val_type" /> <xsl:value-of select="@name"/>_val[] = { <xsl:for-each select="value"> <xsl:choose>
+ static const <xsl:copy-of select="$val_type" /> <xsl:value-of select="@name"/>_val[] = {<xsl:for-each select="value"> <xsl:choose>
<xsl:when test="../@type='INT'">
- { <xsl:value-of select="@enum"/>, "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
+ { <xsl:value-of select="@enum"/>, "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
<xsl:when test="../@type='STRING'">
- { "<xsl:value-of select="@enum"/>", "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
+ { "<xsl:value-of select="@enum"/>", "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
<xsl:when test="../@type='MULTIPLESTRINGVALUE'">
- { "<xsl:value-of select="@enum"/>", "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
- <xsl:otherwise>
- { '<xsl:value-of select="@enum"/>', "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:otherwise>
- </xsl:choose>
- </xsl:for-each>
- { 0, NULL }
- };
+ { "<xsl:value-of select="@enum"/>", "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:when>
+ <xsl:otherwise>
+ { '<xsl:value-of select="@enum"/>', "<xsl:value-of select="translate(@description,'_',' ')"/>" },</xsl:otherwise>
+ </xsl:choose>
+ </xsl:for-each>
+ { 0, NULL }
+ };
</xsl:for-each>
</xsl:template>
<xsl:template match="fix/messages">
- static const string_string messages_val[] = { <xsl:for-each select="message">
- { "<xsl:value-of select="@msgtype"/>", "<xsl:value-of select="@name"/>" }, </xsl:for-each>
- { "", NULL }
- };
+ static const string_string messages_val[] = {<xsl:for-each select="message">
+ { "<xsl:value-of select="@msgtype"/>", "<xsl:value-of select="@name"/>" },</xsl:for-each>
+ { "", NULL }
+ };
</xsl:template>
</xsl:stylesheet>
diff --git a/fix/hfDecl.xsl b/fix/hfDecl.xsl
index 8edd6b79df..b44d32e85c 100644
--- a/fix/hfDecl.xsl
+++ b/fix/hfDecl.xsl
@@ -8,27 +8,27 @@
<xsl:template match="/">
static fix_field fix_fields[] = {
- <xsl:apply-templates/>
- };
- </xsl:template>
+<xsl:apply-templates/>
+ };
+</xsl:template>
<xsl:template match="fields">
<xsl:for-each select="field">
- <xsl:sort select="@number" data-type="number"/>
- <xsl:choose>
- <xsl:when test="count( value ) != 0">
- <xsl:variable name="val_type" >
- <xsl:choose>
- <xsl:when test="@type='INT'">0</xsl:when>
- <xsl:when test="@type='STRING'">1</xsl:when>
- <xsl:otherwise>2</xsl:otherwise>
- </xsl:choose>
+ <xsl:sort select="@number" data-type="number"/>
+ <xsl:choose>
+ <xsl:when test="count( value ) != 0">
+ <xsl:variable name="val_type" >
+ <xsl:choose>
+ <xsl:when test="@type='INT'">0</xsl:when>
+ <xsl:when test="@type='STRING'">1</xsl:when>
+ <xsl:otherwise>2</xsl:otherwise>
+ </xsl:choose>
</xsl:variable>
- { <xsl:value-of select="@number"/>, -1, <xsl:copy-of select="$val_type" /> , <xsl:value-of select="@name"/>_val }, </xsl:when>
- <xsl:otherwise>
- { <xsl:value-of select="@number"/>, -1, 0, NULL }, /* <xsl:value-of select="@name"/> */ </xsl:otherwise>
- </xsl:choose>
+ { <xsl:value-of select="@number"/>, -1, <xsl:copy-of select="$val_type" />, <xsl:value-of select="@name"/>_val },</xsl:when>
+ <xsl:otherwise>
+ { <xsl:value-of select="@number"/>, -1, 0, NULL }, /* <xsl:value-of select="@name"/> */</xsl:otherwise>
+ </xsl:choose>
</xsl:for-each>
-</xsl:template>
+</xsl:template>
</xsl:stylesheet>
diff --git a/fix/hfField.xsl b/fix/hfField.xsl
index 3a01365ef1..15e1817cca 100644
--- a/fix/hfField.xsl
+++ b/fix/hfField.xsl
@@ -2,22 +2,34 @@
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
- <xsl:output method="text" encoding="UTF-8"/>
+<xsl:output method="text" encoding="UTF-8"/>
- <xsl:template match="text()"/>
+<xsl:template match="text()"/>
- <xsl:template match="/">
+<xsl:template match="/">
static hf_register_info hf_FIX[] = {
- <xsl:apply-templates/>
- };
+<xsl:apply-templates/>
+ };
+/*
+ * Editor modelines
+ *
+ * Local Variables:
+ * c-basic-offset: 4
+ * tab-width: 8
+ * indent-tabs-mode: nil
+ * End:
+ *
+ * ex: set shiftwidth=4 tabstop=8 expandtab:
+ * :indentSize=4:tabSize=8:noTabs=true:
+ */
</xsl:template>
<xsl:template match="fields">
<xsl:for-each select="field">
- <xsl:sort select="@number" data-type="number"/>
- { &amp;fix_fields[<xsl:value-of select="position( ) -1" />].hf_id,
+ <xsl:sort select="@number" data-type="number"/>
+ { &amp;fix_fields[<xsl:value-of select="position( ) -1" />].hf_id,
{ "<xsl:value-of select="@name"/> (<xsl:value-of select="@number"/>)", "fix.<xsl:value-of select="@name"/>",
FT_STRING, BASE_NONE, NULL, 0x00,
NULL, HFILL }