Improved printing of parsers to make them easier to understand. Updated
conceptual diagram about string literals design (not yet complete
though).
diff --git a/daffodil/sub-projects/core/doc/dfdl-string-literals.zargo b/daffodil/sub-projects/core/doc/dfdl-string-literals.zargo
index 94cb405..87af8f3 100644
--- a/daffodil/sub-projects/core/doc/dfdl-string-literals.zargo
+++ b/daffodil/sub-projects/core/doc/dfdl-string-literals.zargo
Binary files differ
diff --git a/daffodil/sub-projects/core/src/daffodil/grammar/Primitives.scala b/daffodil/sub-projects/core/src/daffodil/grammar/Primitives.scala
index 7741d8c..7fa8b5f 100644
--- a/daffodil/sub-projects/core/src/daffodil/grammar/Primitives.scala
+++ b/daffodil/sub-projects/core/src/daffodil/grammar/Primitives.scala
@@ -216,6 +216,9 @@
case class ConvertTextFloatPrim(e: ElementBaseMixin) extends Terminal(e, true) {
def parser: Parser = new Parser {
+
+ override def toString = "to(xs:float)"
+
def parse(start: PState): PState = {
val node = start.parent
val str = node.getText()
@@ -292,6 +295,7 @@
case class FloatPrim(byteOrder: java.nio.ByteOrder) extends Parser {
+ override def toString = "binary(xs:float, " + byteOrder + ")"
def parse(start : PState) : PState = {
if (start.bitLimit != -1L && (start.bitLimit - start.bitPos < 32)) start.failed("Not enough bits to create an xs:float")
else {