Packages

package unparsers

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. class AlignmentFillUnparser extends AlignmentPrimUnparser with SuspendableUnparser
  2. class AlignmentFillUnparserSuspendableOperation extends SuspendableOperation
  3. abstract class BCDDecimalBaseUnparser extends PackedBinaryDecimalBaseUnparser
  4. final class BCDDecimalDelimitedUnparser extends BCDDecimalBaseUnparser
  5. class BCDDecimalKnownLengthUnparser extends BCDDecimalBaseUnparser with HasKnownLengthInBits
  6. class BCDDecimalRuntimeLengthUnparser extends BCDDecimalBaseUnparser with HasRuntimeExplicitLength
  7. abstract class BCDIntegerBaseUnparser extends PackedBinaryIntegerBaseUnparser
  8. final class BCDIntegerDelimitedUnparser extends BCDIntegerBaseUnparser
  9. class BCDIntegerKnownLengthUnparser extends BCDIntegerBaseUnparser with HasKnownLengthInBits
  10. class BCDIntegerRuntimeLengthUnparser extends BCDIntegerBaseUnparser with HasRuntimeExplicitLength
  11. class BinaryBooleanUnparser extends PrimUnparser
  12. class BinaryDecimalKnownLengthUnparser extends BinaryDecimalUnparserBase with HasKnownLengthInBits
  13. class BinaryDecimalRuntimeLengthUnparser extends BinaryDecimalUnparserBase with HasRuntimeExplicitLength
  14. abstract class BinaryDecimalUnparserBase extends BinaryNumberBaseUnparser
  15. class BinaryDoubleUnparser extends BinaryNumberBaseUnparser
  16. class BinaryFloatUnparser extends BinaryNumberBaseUnparser
  17. abstract class BinaryIntegerBaseUnparser extends BinaryNumberBaseUnparser
  18. class BinaryIntegerKnownLengthUnparser extends BinaryIntegerBaseUnparser with HasKnownLengthInBits
  19. class BinaryIntegerRuntimeLengthUnparser extends BinaryIntegerBaseUnparser with HasRuntimeExplicitLength
  20. abstract class BinaryNumberBaseUnparser extends PrimUnparser
  21. class CaptureEndOfContentLengthUnparser extends PrimUnparser
  22. class CaptureEndOfValueLengthUnparser extends PrimUnparser
  23. class CaptureStartOfContentLengthUnparser extends PrimUnparser
  24. class CaptureStartOfValueLengthUnparser extends PrimUnparser
  25. class ChoiceCombinatorUnparser extends CombinatorUnparser with ToBriefXMLImpl
  26. case class ComplexNilOrContentUnparser(ctxt: ElementRuntimeData, nilUnparser: Unparser, contentUnparser: Unparser) extends CombinatorUnparser with Product with Serializable
  27. class ComplexTypeUnparser extends CombinatorUnparser
  28. case class ConvertBinaryCalendarSecMilliUnparser(context: ElementRuntimeData, binCalRep: BinaryCalendarRep, epochTimeMillis: Long, lengthInBits: Int, hasTZ: Boolean) extends PrimUnparser with Product with Serializable
  29. case class ConvertTextBooleanUnparser(erd: ElementRuntimeData, textBooleanTrueRepEv: TextBooleanTrueRepEv, textBooleanFalseRepEv: TextBooleanFalseRepEv) extends TextPrimUnparser with Product with Serializable
  30. case class ConvertTextCalendarUnparser(erd: ElementRuntimeData, pattern: String, localeEv: CalendarLanguageEv, calendarEv: CalendarEv) extends ConvertTextCalendarProcessorBase with TextPrimUnparser with Product with Serializable
  31. case class ConvertTextCombinatorUnparser(rd: TermRuntimeData, valueUnparser: Unparser, converterUnparser: Unparser) extends CombinatorUnparser with Product with Serializable
  32. case class ConvertTextNumberUnparser[S](helper: ConvertTextNumberParserUnparserHelperBase[S], nff: NumberFormatFactoryBase[S], context: ElementRuntimeData) extends PrimUnparser with ToBriefXMLImpl with Product with Serializable
  33. case class ConvertZonedCombinatorUnparser(rd: TermRuntimeData, valueUnparser: Unparser, converterUnparser: Unparser) extends CombinatorUnparser with Product with Serializable
  34. case class ConvertZonedNumberUnparser[S](helper: ConvertTextNumberParserUnparserHelperBase[S], opl: util.DecimalUtils.OverpunchLocation.Value, zonedSignStyle: TextZonedSignStyle, context: ElementRuntimeData) extends PrimUnparser with ToBriefXMLImpl with Product with Serializable
  35. class DelimiterStackUnparser extends CombinatorUnparser
  36. class DelimiterTextUnparser extends TextPrimUnparser
  37. class DynamicEscapeSchemeUnparser extends CombinatorUnparser
  38. class ElementOVCSpecifiedLengthUnparser extends ElementUnparserBase with OVCStartEndStrategy with ElementSpecifiedLengthMixin
  39. class ElementOVCSpecifiedLengthUnparserSuspendableExpresion extends SuspendableExpression

    For dfdl:outputValueCalc elements.

  40. class ElementOVCUnspecifiedLengthUnparser extends ElementUnparserBase with OVCStartEndStrategy with RepMoveMixin
  41. trait ElementSpecifiedLengthMixin extends AnyRef
  42. class ElementSpecifiedLengthUnparser extends ElementUnparserBase with RegularElementUnparserStartEndStrategy with ElementSpecifiedLengthMixin

    For regular (not dfdl:outputValueCalc) elements.

  43. sealed abstract class ElementUnparserBase extends CombinatorUnparser with RepMoveMixin with ElementUnparserStartEndStrategy

    Base class for unparsing elements

    Base class for unparsing elements

    Depends on use of separate unparsers for the padding/fill regions which calculate their own sizes, generally after the length of the value region has been determined.

  44. class ElementUnparserNoRep extends ElementUnparserBase with RegularElementUnparserStartEndStrategy

    The unparser used for an element that has inputValueCalc.

    The unparser used for an element that has inputValueCalc.

    The only thing we do is move over one child element, because the inputValueCalc element does take up one child element position. However, not in the group - because that is what is used to decide whether to place separators, and there should not be any separator corresponding to an IVC element.

  45. sealed trait ElementUnparserStartEndStrategy extends AnyRef

    specifies the way the element will consume infoset events,

  46. class ElementUnspecifiedLengthUnparser extends ElementUnparserBase with RegularElementUnparserStartEndStrategy with RepMoveMixin

    Elements that, when unparsing, have no length specified.

    Elements that, when unparsing, have no length specified.

    That is, lengtKind delimited, pattern, and implicit(for complexTypes)

  47. class ElementUnusedUnparser extends PrimUnparser with SuspendableUnparser
  48. class ElementUnusedUnparserSuspendableOperation extends SuspendableOperation with NeedValueAndTargetLengthMixin
  49. final class HexBinaryMinLengthInBytesUnparser extends HexBinaryUnparserBase
  50. final class HexBinarySpecifiedLengthUnparser extends HexBinaryUnparserBase
  51. abstract class HexBinaryUnparserBase extends PrimUnparser
  52. class HexBinaryZeroLengthDetector extends ZeroLengthDetector with HexBinaryZeroLengthMixin

    Use when the element is of simple type hexBinary, not nillable.

  53. sealed trait HexBinaryZeroLengthMixin extends AnyRef
  54. class HiddenChoiceCombinatorUnparser extends CombinatorUnparser with ToBriefXMLImpl
  55. abstract class IBM4690PackedDecimalBaseUnparser extends PackedBinaryDecimalBaseUnparser
  56. final class IBM4690PackedDecimalDelimitedUnparser extends IBM4690PackedDecimalBaseUnparser
  57. class IBM4690PackedDecimalKnownLengthUnparser extends IBM4690PackedDecimalBaseUnparser with HasKnownLengthInBits
  58. class IBM4690PackedDecimalRuntimeLengthUnparser extends IBM4690PackedDecimalBaseUnparser with HasRuntimeExplicitLength
  59. abstract class IBM4690PackedIntegerBaseUnparser extends PackedBinaryIntegerBaseUnparser
  60. final class IBM4690PackedIntegerDelimitedUnparser extends IBM4690PackedIntegerBaseUnparser
  61. class IBM4690PackedIntegerKnownLengthUnparser extends IBM4690PackedIntegerBaseUnparser with HasKnownLengthInBits
  62. class IBM4690PackedIntegerRuntimeLengthUnparser extends IBM4690PackedIntegerBaseUnparser with HasRuntimeExplicitLength
  63. class LayeredSequenceUnparser extends OrderedUnseparatedSequenceUnparser
  64. class LeftCenteredPaddingUnparser extends OnlyPaddingUnparser
  65. class LeftCenteredPaddingUnparserSuspendableOperation extends OnlyPaddingUnparserSuspendableOperation
  66. class LiteralNilDelimitedEndOfDataUnparser extends StringDelimitedUnparser
  67. class LiteralValueNilOfSpecifiedLengthUnparser extends StringNoTruncateUnparser
  68. class MandatoryTextAlignmentUnparser extends AlignmentFillUnparser with TextProcessor
  69. class NadaUnparser extends PrimUnparser
  70. sealed trait NeedValueAndTargetLengthMixin extends AnyRef

    Several sub-unparsers need to have the value length, and the target length in order to compute their own length.

  71. class NeverZeroLengthDetector extends ZeroLengthDetector

    Use when analysis shows the element can never be zero length.

  72. class NewVariableInstanceEndUnparser extends PrimUnparserNoData
  73. class NewVariableInstanceStartUnparser extends PrimUnparserNoData
  74. class NilLiteralCharacterUnparser extends TextPrimUnparser with SuspendableUnparser
  75. class NilLiteralCharacterUnparserSuspendableOperation extends SuspendableOperation with PaddingUnparserMixin
  76. class NilStringLiteralForUnparserEv extends Evaluatable[String] with InfosetCachedEvaluatable[String]
  77. class NillableHexBinaryZeroLengthDetector extends ZeroLengthDetector with NillableZeroLengthMixin with HexBinaryZeroLengthMixin

    Use for nillable hexBinary when they can be zero length two different ways.

  78. class NillableStringZeroLengthDetector extends ZeroLengthDetector with NillableZeroLengthMixin with StringZeroLengthMixin

    Use for nillable strings when they can be zero length two different ways.

  79. class NillableZeroLengthDetector extends ZeroLengthDetector with NillableZeroLengthMixin

    Use when the characteristics of the nil representation are such that unparsing a nilled element will result in zero length.

  80. sealed trait NillableZeroLengthMixin extends AnyRef

    Applies to both simple and complex types that are nillable.

  81. class OVCRetryUnparser extends PrimUnparser with SuspendableUnparser
  82. class OVCRetryUnparserSuspendableOperation extends SuspendableOperation
  83. trait OVCStartEndStrategy extends ElementUnparserStartEndStrategy
  84. class OnlyPaddingUnparser extends TextPrimUnparser with SuspendableUnparser

    Doesn't matter if we're left or right padding if we're the only padding

  85. class OnlyPaddingUnparserSuspendableOperation extends SuspendableOperation with PaddingUnparserMixin
  86. class OrderedSeparatedSequenceUnparser extends OrderedSequenceUnparserBase
  87. abstract class OrderedSequenceUnparserBase extends CombinatorUnparser
  88. class OrderedUnseparatedSequenceUnparser extends OrderedSequenceUnparserBase
  89. abstract class PackedBinaryBaseUnparser extends PrimUnparser with PackedBinaryConversion
  90. trait PackedBinaryConversion extends AnyRef
  91. abstract class PackedBinaryDecimalBaseUnparser extends PackedBinaryBaseUnparser
  92. abstract class PackedBinaryIntegerBaseUnparser extends PackedBinaryBaseUnparser
  93. abstract class PackedDecimalBaseUnparser extends PackedBinaryDecimalBaseUnparser
  94. final class PackedDecimalDelimitedUnparser extends PackedDecimalBaseUnparser
  95. class PackedDecimalKnownLengthUnparser extends PackedDecimalBaseUnparser with HasKnownLengthInBits
  96. class PackedDecimalRuntimeLengthUnparser extends PackedDecimalBaseUnparser with HasRuntimeExplicitLength
  97. abstract class PackedIntegerBaseUnparser extends PackedBinaryIntegerBaseUnparser
  98. final class PackedIntegerDelimitedUnparser extends PackedIntegerBaseUnparser
  99. class PackedIntegerKnownLengthUnparser extends PackedIntegerBaseUnparser with HasKnownLengthInBits
  100. class PackedIntegerRuntimeLengthUnparser extends PackedIntegerBaseUnparser with HasRuntimeExplicitLength
  101. trait PaddingRuntimeMixin extends AnyRef

    When dfdl:lengthKind is 'explicit' (and dfdl:length is an expression), 'delimited', 'prefixed', 'pattern' the data value is padded to the length given by the XSD minLength facet for type 'xs:string' or dfdl:textOutputMinLength property for other types.

    When dfdl:lengthKind is 'explicit' (and dfdl:length is an expression), 'delimited', 'prefixed', 'pattern' the data value is padded to the length given by the XSD minLength facet for type 'xs:string' or dfdl:textOutputMinLength property for other types.

    dfdl:textOutputMinLength: Only used when dfdl:textPadKind is 'padChar' and dfdl:lengthKind is 'delimited', 'prefixed', 'pattern', 'explicit' (when dfdl:length is an expression) or 'endOfParent', and type is not xs:string Specifies the minimum content length during unparsing for simple types that do not allow the XSD minLength facet to be specified. For dfdl:lengthKind 'delimited', 'pattern' and 'endOfParent' the length units are always characters, for other dfdl:lengthKinds the length units are specified by the dfdl:lengthUnits property. If dfdl:textOutputMinLength is zero or less than the length of the representation text then no padding occurs.

  102. trait PaddingUnparserMixin extends NeedValueAndTargetLengthMixin
  103. sealed trait RegularElementUnparserStartEndStrategy extends ElementUnparserStartEndStrategy
  104. sealed trait RepMoveMixin extends AnyRef
  105. class RepOrderedSeparatedSequenceChildUnparser extends RepeatingChildUnparser with Separated
  106. class RepOrderedUnseparatedSequenceChildUnparser extends RepeatingChildUnparser with Unseparated
  107. abstract class RepeatingChildUnparser extends SequenceChildUnparser with MinMaxRepeatsMixin

    Base for unparsers of array/optional elements.

    Base for unparsers of array/optional elements.

    The unparse() method unparses exactly one occurrance, does NOT iterate over all the occurrences.

  108. class RightCenteredPaddingUnparser extends OnlyPaddingUnparser
  109. class RightCenteredPaddingUnparserSuspendaableOperation extends OnlyPaddingUnparserSuspendableOperation
  110. class RightFillUnparser extends ElementUnusedUnparser
  111. class RightFillUnparserSuspendableOperation extends ElementUnusedUnparserSuspendableOperation with PaddingUnparserMixin
  112. class ScalarOrderedSeparatedSequenceChildUnparser extends SequenceChildUnparser with Separated
  113. class ScalarOrderedUnseparatedSequenceChildUnparser extends SequenceChildUnparser with Unseparated
  114. trait Separated extends AnyRef
  115. sealed trait SeparatorSuppressionAction extends Serializable
  116. sealed trait SeparatorSuppressionMode extends Serializable

    DFDL Spec.

    DFDL Spec. section 14.2.3 specifies only a few different behaviors for separator suppression. Each has an algorithm.

  117. abstract class SequenceChildUnparser extends CombinatorUnparser

    base for unparsers for the children of sequences.

    base for unparsers for the children of sequences.

    There is one sequence child unparser for each child (declared) of the sequence.

    These do not iterate over multiple recurring instances. That iteration happens in the caller. These unparse only a single occurrence when the child unparser is for an array/optional element.

  118. final class SetVariableSuspendableExpression extends SuspendableExpression
  119. final class SetVariableUnparser extends PrimUnparserNoData

    Used when unparsing to evaluate dfdl:setVariable statements.

    Used when unparsing to evaluate dfdl:setVariable statements.

    TODO: Possible bug. This will allow expressions to forward reference, even when the variables are being referenced from expressions that are NOT allowed to forward reference - e.g., property value expressions such as delimiters and byte order.

    This forward suspension is only supposed to be allowed for dfdl:outputValueCalc.

  120. case class SimpleNilOrValueUnparser(ctxt: ElementRuntimeData, nilUnparser: Unparser, valueUnparser: Unparser) extends CombinatorUnparser with Product with Serializable
  121. class SkipRegionUnparser extends AlignmentPrimUnparser
  122. final class SpecifiedLengthExplicitImplicitUnparser extends CombinatorUnparser
  123. sealed abstract class SpecifiedLengthUnparserBase extends AnyRef

    Restricts the bits available for unparsing to just those within the specified length computed.

    Restricts the bits available for unparsing to just those within the specified length computed.

    If a unparser (supplied as arg) runs past the available space, that's an unparse error.

    Truncation of strings - the only case where we truncate, and only when dfdl:truncateSpecifiedLengthString is 'yes', is handled elsewhere.

  124. sealed class StringDelimitedUnparser extends TextPrimUnparser
  125. class StringMaybeTruncateBitsUnparser extends StringSpecifiedLengthUnparserTruncateBase

    Truncates strings to the right length measured in bits.

    Truncates strings to the right length measured in bits. LengthUnits is Bits, but we still don't know whether the encoding is fixed width or variable width.

  126. class StringMaybeTruncateCharactersUnparser extends StringSpecifiedLengthUnparserTruncateBase

    Truncates strings to the right length measured in characters.

    Truncates strings to the right length measured in characters.

    LengthUnits is 'characters', but we still don't know what encoding so whether it is fixed or variable width.

    What's interesting is that we don't care whether the encoding is fixed or variable width in this case.

    This is more efficient for variable-width encodings than lengthUnits 'bytes' (or bits), because we don't need a pass to measure the number of bits.

    So, for utf-8, we should recommend lengthUnits 'characters' ? Maybe so.

  127. class StringNoTruncateUnparser extends StringSpecifiedLengthUnparserBase
  128. sealed abstract class StringSpecifiedLengthUnparserBase extends TextPrimUnparser
  129. sealed abstract class StringSpecifiedLengthUnparserTruncateBase extends StringSpecifiedLengthUnparserBase
  130. class StringZeroLengthDetector extends ZeroLengthDetector with StringZeroLengthMixin

    Use when the element is of simple type string, not nillable.

  131. sealed trait StringZeroLengthMixin extends AnyRef
  132. class TargetLengthOperation extends SuspendableOperation

    Carries out computation of the target length for a specified-length element.

    Carries out computation of the target length for a specified-length element.

    This is not a SuspendableExpression because the dfdl:length property cannot be forward referencing. However, it can refer backward to elements that have dfdl:outputValueCalc or variables that have not yet been computed. So we have to retry this in order to get the target length used to compute the amount of padding or the amount of unused space.

  133. trait Unseparated extends AnyRef
  134. sealed trait ZeroLengthDetector extends Serializable

    Rapidly determines if an Infoset Element will have zero length when unparsed.

    Rapidly determines if an Infoset Element will have zero length when unparsed.

    This is required for proper separator suppression in sequence unparsers.

    The specific concrete sub-class is selected based on a compile time analysis of whether the element can have zero length at all, and if so, under what conditions.

Value Members

  1. object SeparatorSuppressionAction extends Serializable
  2. object SeparatorSuppressionMode extends Serializable

Ungrouped