Package

org.apache.daffodil.grammar

primitives

Permalink

package primitives

Visibility
  1. Public
  2. All

Type Members

  1. case class AlignmentFill(e: Term) extends Terminal with Product with Serializable

    Permalink
  2. case class ArrayCombinator(e: ElementBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  3. abstract class AssertBase extends ExpressionEvaluatorBase

    Permalink
  4. case class AssertBooleanPrim(decl: AnnotatedSchemaComponent, stmt: DFDLAssertionBase) extends AssertBooleanPrimBase with Product with Serializable

    Permalink
  5. abstract class AssertBooleanPrimBase extends AssertBase

    Permalink
  6. case class AssertPatternPrim(term: Term, stmt: DFDLAssert) extends AssertPatternPrimBase with Product with Serializable

    Permalink
  7. abstract class AssertPatternPrimBase extends Terminal

    Permalink
  8. abstract class BCDDecimalDelimited extends StringDelimited

    Permalink
  9. case class BCDDecimalDelimitedEndOfData(e: ElementBase) extends BCDDecimalDelimited with Product with Serializable

    Permalink
  10. class BCDDecimalKnownLength extends Terminal

    Permalink
  11. class BCDDecimalRuntimeLength extends Terminal

    Permalink
  12. abstract class BCDIntegerDelimited extends StringDelimited

    Permalink
  13. case class BCDIntegerDelimitedEndOfData(e: ElementBase) extends BCDIntegerDelimited with Product with Serializable

    Permalink
  14. class BCDIntegerKnownLength extends Terminal

    Permalink
  15. class BCDIntegerRuntimeLength extends Terminal

    Permalink
  16. class BinaryBoolean extends Terminal

    Permalink
  17. class BinaryDecimalKnownLength extends Terminal

    Permalink
  18. class BinaryDecimalRuntimeLength extends Terminal

    Permalink
  19. class BinaryDouble extends Terminal

    Permalink
  20. class BinaryFloat extends Terminal

    Permalink
  21. class BinaryIntegerKnownLength extends Terminal

    Permalink
  22. class BinaryIntegerRuntimeLength extends Terminal

    Permalink
  23. case class CaptureContentLengthEnd(ctxt: ElementBase) extends Terminal with Product with Serializable

    Permalink
  24. case class CaptureContentLengthStart(ctxt: ElementBase) extends Terminal with Product with Serializable

    Permalink
  25. case class CaptureValueLengthEnd(ctxt: ElementBase) extends Terminal with Product with Serializable

    Permalink
  26. case class CaptureValueLengthStart(ctxt: ElementBase) extends Terminal with Product with Serializable

    Permalink
  27. case class ChoiceCombinator(ch: ChoiceTermBase, alternatives: Seq[Gram]) extends Terminal with Product with Serializable

    Permalink
  28. class ChoiceElementCombinator extends ElementCombinatorBase with HasNoUnparser

    Permalink
  29. case class ComplexNilOrContent(ctxt: ElementBase, nilGram: Gram, contentGram: Gram) extends Terminal with Product with Serializable

    Permalink
  30. case class ComplexTypeCombinator(ct: ComplexTypeBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  31. case class ConvertTextBooleanPrim(e: ElementBase) extends Terminal with Product with Serializable

    Permalink
  32. case class ConvertTextBytePrim(e: ElementBase) extends ConvertTextNumberPrim[Byte] with Product with Serializable

    Permalink
  33. abstract class ConvertTextCalendarPrimBase extends Terminal

    Permalink
  34. case class ConvertTextCombinator(e: ElementBase, value: Gram, converter: Gram) extends Terminal with Product with Serializable

    Permalink
  35. case class ConvertTextDatePrim(e: ElementBase) extends ConvertTextCalendarPrimBase with Product with Serializable

    Permalink
  36. case class ConvertTextDateTimePrim(e: ElementBase) extends ConvertTextCalendarPrimBase with Product with Serializable

    Permalink
  37. case class ConvertTextDecimalPrim(e: ElementBase) extends ConvertTextNumberPrim[BigDecimal] with Product with Serializable

    Permalink
  38. case class ConvertTextDoublePrim(e: ElementBase) extends ConvertTextNumberPrim[Double] with Product with Serializable

    Permalink
  39. case class ConvertTextFloatPrim(e: ElementBase) extends ConvertTextNumberPrim[Float] with Product with Serializable

    Permalink
  40. case class ConvertTextIntPrim(e: ElementBase) extends ConvertTextNumberPrim[Int] with Product with Serializable

    Permalink
  41. case class ConvertTextIntegerPrim(e: ElementBase) extends ConvertTextNumberPrim[BigInteger] with Product with Serializable

    Permalink
  42. case class ConvertTextLongPrim(e: ElementBase) extends ConvertTextNumberPrim[Long] with Product with Serializable

    Permalink
  43. case class ConvertTextNonNegativeIntegerPrim(e: ElementBase) extends ConvertTextNumberPrim[BigInteger] with Product with Serializable

    Permalink
  44. abstract class ConvertTextNumberPrim[S] extends Terminal

    Permalink
  45. case class ConvertTextShortPrim(e: ElementBase) extends ConvertTextNumberPrim[Short] with Product with Serializable

    Permalink
  46. case class ConvertTextTimePrim(e: ElementBase) extends ConvertTextCalendarPrimBase with Product with Serializable

    Permalink
  47. case class ConvertTextUnsignedBytePrim(e: ElementBase) extends ConvertTextNumberPrim[Short] with Product with Serializable

    Permalink
  48. case class ConvertTextUnsignedIntPrim(e: ElementBase) extends ConvertTextNumberPrim[Long] with Product with Serializable

    Permalink
  49. case class ConvertTextUnsignedLongPrim(e: ElementBase) extends ConvertTextNumberPrim[BigInteger] with Product with Serializable

    Permalink
  50. case class ConvertTextUnsignedShortPrim(e: ElementBase) extends ConvertTextNumberPrim[Int] with Product with Serializable

    Permalink
  51. case class DelimiterStackCombinatorChoice(ch: ChoiceTermBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  52. case class DelimiterStackCombinatorElement(e: ElementBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  53. case class DelimiterStackCombinatorSequence(sq: SequenceTermBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  54. abstract class DelimiterText extends Text

    Permalink
  55. case class DiscriminatorBooleanPrim(decl: AnnotatedSchemaComponent, stmt: DFDLAssertionBase) extends AssertBooleanPrimBase with Product with Serializable

    Permalink
  56. case class DiscriminatorPatternPrim(term: Term, stmt: DFDLAssertionBase) extends AssertPatternPrimBase with Product with Serializable

    Permalink
  57. case class DynamicEscapeSchemeCombinatorElement(e: ElementBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  58. class ElementCombinator extends NamedGram with Padded

    Permalink

    This uber combinator exists because we (currently) do quite different things for parsing and unparsing.

    This uber combinator exists because we (currently) do quite different things for parsing and unparsing.

    It lets us introduce the new unparser capabilities for the situations where they are truly necessary, and keep using the older style stuff for the situations where it works already.

    Ultimately, some big refactoring is needed here though, or this is going to get very complicated to reason about, as if it isn't already :-), well this is going to make it worse.

  59. abstract class ElementCombinatorBase extends NamedGram

    Permalink
  60. class ElementParseAndUnspecifiedLength extends ElementCombinatorBase

    Permalink
  61. case class ElementUnused(ctxt: ElementBase) extends Terminal with Product with Serializable

    Permalink
  62. abstract class ExpressionEvaluatorBase extends Terminal

    Permalink

    Refactored primitives that use expressions to put expression evaluation in one place.

    Refactored primitives that use expressions to put expression evaluation in one place. On this base (for the primitive), and a corresponding parser base class for the actual evaluation.

    That fixed a bug where a SDE wasn't being reported until the parser was run that could have been reported at compilation time.

    Anything being computed that involves the dsom or grammar objects or attributes of them, should be done in the grammar primitives, and NOT in the parser. This is important to insure errors are captured at compilation time and reported on relevant objects.

  63. abstract class HexBinaryDelimited extends StringDelimited

    Permalink
  64. case class HexBinaryDelimitedEndOfData(e: ElementBase) extends HexBinaryDelimited with Product with Serializable

    Permalink
  65. case class HexBinaryEndOfBitLimit(e: ElementBase) extends Terminal with Product with Serializable

    Permalink
  66. case class HexBinarySpecifiedLength(e: ElementBase) extends Terminal with Product with Serializable

    Permalink
  67. abstract class IBM4690PackedDecimalDelimited extends StringDelimited

    Permalink
  68. case class IBM4690PackedDecimalDelimitedEndOfData(e: ElementBase) extends IBM4690PackedDecimalDelimited with Product with Serializable

    Permalink
  69. class IBM4690PackedDecimalKnownLength extends Terminal

    Permalink
  70. class IBM4690PackedDecimalRuntimeLength extends Terminal

    Permalink
  71. abstract class IBM4690PackedIntegerDelimited extends StringDelimited

    Permalink
  72. case class IBM4690PackedIntegerDelimitedEndOfData(e: ElementBase, signed: Boolean) extends IBM4690PackedIntegerDelimited with Product with Serializable

    Permalink
  73. class IBM4690PackedIntegerKnownLength extends Terminal

    Permalink
  74. class IBM4690PackedIntegerRuntimeLength extends Terminal

    Permalink
  75. case class InitiatedContent(decl: AnnotatedSchemaComponent) extends AssertBase with Product with Serializable

    Permalink
  76. case class Initiator(e: Term) extends DelimiterText with Product with Serializable

    Permalink
  77. case class InputValueCalc(e: ElementBase, property: PropertyLookupResult) extends ValueCalcBase with Product with Serializable

    Permalink
  78. case class LeadingSkipRegion(e: Term) extends SkipRegion with Product with Serializable

    Permalink
  79. case class LeftCenteredPadding(ctxt: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  80. case class LiteralCharacterNilOfSpecifiedLength(e: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  81. case class LiteralNilDelimitedEndOfData(eb: ElementBase) extends StringDelimited with Product with Serializable

    Permalink
  82. case class LiteralValueNilOfSpecifiedLength(e: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  83. case class LogicalNilValue(e: ElementBase) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  84. case class MandatoryTextAlignment(e: Term, alignmentInBits: Int, forDelimiter: Boolean) extends Terminal with Product with Serializable

    Permalink
  85. case class Nada(sc: Term) extends Terminal with HasNoUnparser with Product with Serializable

    Permalink
  86. abstract class NewVariableInstanceBase extends Terminal

    Permalink
  87. case class NewVariableInstanceEnd(decl: AnnotatedSchemaComponent, stmt: DFDLNewVariableInstance) extends NewVariableInstanceBase with Product with Serializable

    Permalink
  88. case class NewVariableInstanceStart(decl: AnnotatedSchemaComponent, stmt: DFDLNewVariableInstance) extends NewVariableInstanceBase with Product with Serializable

    Permalink
  89. case class NilLiteralCharacter(ctxt: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  90. case class NotStopValue(e: ElementBase with LocalElementMixin) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  91. case class OVCRetry(ctxt: ElementBase, v: Gram) extends Terminal with Product with Serializable

    Permalink
  92. case class OccursCountExpression(e: ElementBase) extends Terminal with Product with Serializable

    Permalink
  93. case class OnlyPadding(ctxt: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  94. case class OptionalCombinator(e: ElementBase, body: Gram) extends Terminal with Product with Serializable

    Permalink
  95. class OptionalInfixSep extends Terminal

    Permalink
  96. abstract class PackedDecimalDelimited extends StringDelimited

    Permalink
  97. case class PackedDecimalDelimitedEndOfData(e: ElementBase, packedSignCodes: PackedSignCodes) extends PackedDecimalDelimited with Product with Serializable

    Permalink
  98. class PackedDecimalKnownLength extends Terminal

    Permalink
  99. class PackedDecimalRuntimeLength extends Terminal

    Permalink
  100. abstract class PackedIntegerDelimited extends StringDelimited

    Permalink
  101. case class PackedIntegerDelimitedEndOfData(e: ElementBase, signed: Boolean, packedSignCodes: PackedSignCodes) extends PackedIntegerDelimited with Product with Serializable

    Permalink
  102. class PackedIntegerKnownLength extends Terminal

    Permalink
  103. class PackedIntegerRuntimeLength extends Terminal

    Permalink
  104. trait Padded extends PaddingInfoMixin

    Permalink
  105. trait PaddingInfoMixin extends AnyRef

    Permalink
  106. case class PrefixLength(e: ElementBase) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  107. abstract class Primitive extends Terminal

    Permalink
  108. case class RestoreInputStream(e: ElementBase, guard: Boolean = true) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  109. case class RightCenteredPadding(ctxt: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  110. case class RightFill(ctxt: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  111. case class SaveInputStream(e: ElementBase, guard: Boolean = true) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  112. case class Separator(s: SequenceTermBase, t: Term) extends DelimiterText with Product with Serializable

    Permalink
  113. case class SequenceCombinator(sq: SequenceTermBase, rawTerms: Seq[Gram]) extends Terminal with Product with Serializable

    Permalink
  114. case class SetEmptyInputStream(e: ElementBase, guard: Boolean = true) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  115. case class SetVariable(decl: AnnotatedSchemaComponent, stmt: DFDLSetVariable) extends ExpressionEvaluatorBase with Product with Serializable

    Permalink
  116. case class SimpleEmptyOrValue(ctxt: ElementBase, emptyGram: Gram, valueGram: Gram) extends Terminal with Product with Serializable

    Permalink
  117. case class SimpleNilOrEmptyOrValue(ctxt: ElementBase, nilGram: Gram, emptyGram: Gram, valueGram: Gram) extends Terminal with Product with Serializable

    Permalink
  118. case class SimpleNilOrValue(ctxt: ElementBase, nilGram: Gram, valueGram: Gram) extends Terminal with Product with Serializable

    Permalink
  119. abstract class SkipRegion extends Terminal

    Permalink
  120. abstract class SpecifiedLengthCombinatorBase extends Terminal

    Permalink
  121. class SpecifiedLengthExplicit extends SpecifiedLengthCombinatorBase with SpecifiedLengthExplicitImplicitUnparserMixin

    Permalink
  122. class SpecifiedLengthExplicitCharacters extends SpecifiedLengthCombinatorBase with SpecifiedLengthExplicitImplicitUnparserMixin

    Permalink
  123. trait SpecifiedLengthExplicitImplicitUnparserMixin extends AnyRef

    Permalink
  124. class SpecifiedLengthImplicit extends SpecifiedLengthCombinatorBase with SpecifiedLengthExplicitImplicitUnparserMixin

    Permalink
  125. class SpecifiedLengthImplicitCharacters extends SpecifiedLengthCombinatorBase with SpecifiedLengthExplicitImplicitUnparserMixin

    Permalink
  126. class SpecifiedLengthPattern extends SpecifiedLengthCombinatorBase

    Permalink
  127. abstract class StaticText extends Text

    Permalink
  128. case class StopValue(e: ElementBase with LocalElementMixin) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  129. abstract class StringDelimBase extends Terminal

    Permalink
  130. abstract class StringDelimited extends StringDelimBase with Padded

    Permalink
  131. case class StringDelimitedEndOfData(e: ElementBase) extends StringDelimited with Product with Serializable

    Permalink
  132. case class StringOfSpecifiedLength(e: ElementBase) extends Terminal with Padded with Product with Serializable

    Permalink
  133. case class Terminator(e: Term) extends DelimiterText with Product with Serializable

    Permalink
  134. abstract class Text extends StringDelimBase

    Permalink
  135. case class TheDefaultValue(e: ElementBase) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  136. case class TrailingSkipRegion(e: Term) extends SkipRegion with Product with Serializable

    Permalink
  137. case class UnicodeByteOrderMark(e: Root) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  138. abstract class UnimplementedPrimitive extends Primitive with HasNoUnparser

    Permalink

    For stubbing out primitives that are placeholders

  139. class UnorderedSequence extends UnaryGram with HasNoUnparser

    Permalink
  140. case class UnorderedSequenceCombinator(s: Sequence, terms: Seq[Gram]) extends UnimplementedPrimitive with Product with Serializable

    Permalink
  141. abstract class ValueCalcBase extends ExpressionEvaluatorBase

    Permalink
  142. case class ZonedTextBytePrim(el: ElementBase) extends ZonedTextNumberPrim with Product with Serializable

    Permalink
  143. case class ZonedTextIntPrim(el: ElementBase) extends ZonedTextNumberPrim with Product with Serializable

    Permalink
  144. case class ZonedTextLongPrim(el: ElementBase) extends ZonedTextNumberPrim with Product with Serializable

    Permalink
  145. abstract class ZonedTextNumberPrim extends UnimplementedPrimitive

    Permalink
  146. case class ZonedTextShortPrim(el: ElementBase) extends ZonedTextNumberPrim with Product with Serializable

    Permalink

Value Members

  1. object ENoWarn3

    Permalink
  2. object ENoWarn6

    Permalink
  3. object INoWarn5

    Permalink
  4. object INoWarn6

    Permalink
  5. object PatternChecker

    Permalink

    The purpose of this checker is to examine a regex and look for a situation one can run into if you try to use the free-form regex syntax, which allows a regex to be spread out over multiple lines with comments intersperced.

    The purpose of this checker is to examine a regex and look for a situation one can run into if you try to use the free-form regex syntax, which allows a regex to be spread out over multiple lines with comments intersperced.

    Trouble is, such regex must be wrapped with CDATA bracketing, otherwise it will all end up on one line, and the comments are from a # to end of line, so this breaks the regex, and very commonly the regex will begin with a comment and so the effective regex is one that matches anything at all, but is completely legal as a regex, which makes it very very painful to debug.

  6. object RepAtMostOccursCount extends Rep3Arg

    Permalink
  7. object RepAtMostTotalN extends Rep3Arg

    Permalink
  8. object RepExactlyN extends Rep3Arg

    Permalink
  9. object RepExactlyTotalN extends Rep3Arg

    Permalink
  10. object RepExactlyTotalOccursCount extends Rep2Arg

    Permalink
  11. object RepPrims

    Permalink
  12. object RepUnbounded extends Rep2Arg

    Permalink
  13. object UnorderedSequence

    Permalink
  14. object VariableMapFactory

    Permalink

Ungrouped