This is an automated email from the ASF dual-hosted git repository.
jadams-tresys pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/daffodil.git
The following commit(s) were added to refs/heads/main by this push:
new 050d47e11 Several small changes attempting to improve unparse
performance
050d47e11 is described below
commit 050d47e1175f42fd6dc0fb670efffd5910a0af2f
Author: Josh Adams <[email protected]>
AuthorDate: Tue Jun 2 09:10:07 2026 -0400
Several small changes attempting to improve unparse performance
- Avoid calling .toList.toVector
- Remove unnecessary Maybe
- Avoid frequent push/pop operations
- Remove unused default parameter
- Inline unparse1 function
- Use string interpolation instead of .format inside VariableMap
- Change all runtimeDependencies to vals of Array
---
.../runtime1/processors/EncodingRuntimeData.scala | 2 +-
.../runtime1/processors/EvBinaryFloat.scala | 2 +-
.../daffodil/runtime1/processors/EvByteOrder.scala | 6 ++---
.../runtime1/processors/EvCalendarLanguage.scala | 6 ++---
.../runtime1/processors/EvDelimiters.scala | 4 ++--
.../daffodil/runtime1/processors/EvElement.scala | 18 +++++++-------
.../daffodil/runtime1/processors/EvEncoding.scala | 6 ++---
.../runtime1/processors/EvEscapeSchemes.scala | 17 ++++++-------
.../daffodil/runtime1/processors/EvFieldDFA.scala | 2 +-
.../runtime1/processors/EvTextNumber.scala | 14 +++++------
.../daffodil/runtime1/processors/Evaluatable.scala | 6 ++---
.../runtime1/processors/PackedBinaryTraits.scala | 4 ++--
.../runtime1/processors/ProcessorBases.scala | 2 +-
.../runtime1/processors/VariableMap1.scala | 28 +++++++---------------
.../processors/parsers/AssertPatternParsers.scala | 2 +-
.../processors/parsers/BinaryBooleanParsers.scala | 4 ++--
.../processors/parsers/BinaryNumberParsers.scala | 8 +++----
.../processors/parsers/BlobLengthParsers.scala | 2 +-
.../parsers/ConvertTextStandardNumberParser.scala | 4 ++--
.../processors/parsers/DelimitedParsers.scala | 2 +-
.../processors/parsers/DelimiterParsers.scala | 2 +-
.../processors/parsers/ElementCombinator1.scala | 2 +-
.../processors/parsers/ElementKindParsers.scala | 10 ++++----
.../parsers/ExpressionEvaluatingParsers.scala | 6 ++---
.../processors/parsers/FramingParsers.scala | 4 ++--
.../parsers/HexBinaryLengthParsers.scala | 4 ++--
.../parsers/HiddenGroupCombinatorParser.scala | 2 +-
.../parsers/InitiatedContentParsers.scala | 8 +++----
.../parsers/NilEmptyCombinatorParsers.scala | 2 +-
.../runtime1/processors/parsers/NilParsers.scala | 2 +-
.../parsers/NonBaseTenTextNumberParser.scala | 2 +-
.../runtime1/processors/parsers/Parser.scala | 10 ++++----
.../processors/parsers/PrimitivesDateTime1.scala | 4 ++--
.../processors/parsers/RepTypeParsers.scala | 2 +-
.../parsers/SeparatedSequenceParsers.scala | 4 ++--
.../processors/parsers/SequenceChildBases.scala | 4 ++--
.../parsers/SpecifiedLengthParsers.scala | 10 ++++----
.../processors/parsers/StringLengthParsers.scala | 2 +-
.../processors/parsers/TextBooleanParser.scala | 2 +-
.../parsers/UnseparatedSequenceParsers.scala | 4 ++--
.../processors/parsers/ZonedTextParsers.scala | 4 ++--
.../runtime1/processors/unparsers/UState.scala | 20 ++++++++--------
.../runtime1/processors/unparsers/Unparser.scala | 10 ++++----
.../daffodil/unparsers/runtime1/BCDUnparsers.scala | 8 +++----
.../runtime1/BinaryBooleanUnparsers.scala | 4 ++--
.../unparsers/runtime1/BinaryNumberUnparsers.scala | 16 ++++++-------
.../unparsers/runtime1/BlobLengthUnparser.scala | 2 +-
.../runtime1/ChoiceAndOtherVariousUnparsers.scala | 10 ++++----
.../runtime1/ConvertBinaryCalendarUnparser.scala | 2 +-
.../ConvertNonBaseTenTextNumberUnparser.scala | 2 +-
.../runtime1/ConvertTextBooleanUnparser.scala | 2 +-
.../runtime1/ConvertTextCalendarUnparser.scala | 2 +-
.../ConvertTextStandardNumberUnparser.scala | 4 ++--
.../runtime1/ConvertZonedNumberUnparser.scala | 4 ++--
.../unparsers/runtime1/DelimitedUnparsers.scala | 2 +-
.../unparsers/runtime1/DelimiterUnparsers.scala | 2 +-
.../unparsers/runtime1/ElementUnparser.scala | 18 +++++++-------
.../runtime1/ExpressionEvaluatingUnparsers.scala | 6 ++---
.../unparsers/runtime1/FramingUnparsers.scala | 4 ++--
.../runtime1/HexBinaryLengthUnparser.scala | 2 +-
.../runtime1/HiddenGroupCombinatorUnparser.scala | 2 +-
.../runtime1/IBM4690PackedDecimalUnparsers.scala | 8 +++----
.../daffodil/unparsers/runtime1/NadaUnparser.scala | 2 +-
.../runtime1/NilEmptyCombinatorUnparsers.scala | 4 ++--
.../daffodil/unparsers/runtime1/NilUnparsers.scala | 2 +-
.../runtime1/PackedBinaryUnparserTraits.scala | 2 +-
.../runtime1/PackedDecimalUnparsers.scala | 8 +++----
.../unparsers/runtime1/RepTypeUnparsers.scala | 2 +-
.../runtime1/SeparatedSequenceUnparsers.scala | 2 +-
.../runtime1/SequenceChildUnparsers.scala | 4 ++--
.../unparsers/runtime1/SpecifiedLength2.scala | 18 +++++++-------
.../runtime1/SpecifiedLengthUnparsers.scala | 4 ++--
.../unparsers/runtime1/StreamSplitterMixin.scala | 2 +-
.../unparsers/runtime1/StringLengthUnparsers.scala | 6 ++---
.../runtime1/StringLiteralForUnparser.scala | 2 +-
.../runtime1/SuppressableSeparatorUnparser.scala | 2 +-
.../runtime1/UnseparatedSequenceUnparsers.scala | 4 ++--
77 files changed, 206 insertions(+), 217 deletions(-)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EncodingRuntimeData.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EncodingRuntimeData.scala
index 8e219abea..15e0aef01 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EncodingRuntimeData.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EncodingRuntimeData.scala
@@ -122,7 +122,7 @@ final class EncodingRuntimeData(
with ImplementsThrowsSDE
with Serializable {
- def runtimeDependencies = Vector(charsetEv)
+ val runtimeDependencies = Array[Evaluatable[AnyRef]](charsetEv)
def getDecoderInfo(state: ParseOrUnparseState) = {
val cs = charsetEv.evaluate(state)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvBinaryFloat.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvBinaryFloat.scala
index 1ab993692..2b1d3a056 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvBinaryFloat.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvBinaryFloat.scala
@@ -24,6 +24,6 @@ class BinaryFloatRepEv(expr: CompiledExpression[String], eci:
DPathElementCompil
extends EvaluatableConvertedExpression[String, BinaryFloatRep](expr,
BinaryFloatRep, eci)
with InfosetCachedEvaluatable[BinaryFloatRep] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvByteOrder.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvByteOrder.scala
index e372887fa..919e3cf9e 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvByteOrder.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvByteOrder.scala
@@ -28,7 +28,7 @@ import org.apache.daffodil.runtime1.dsom.*
class ByteOrderEv(override val expr: CompiledExpression[String], eci:
DPathElementCompileInfo)
extends EvaluatableConvertedExpression[String, ByteOrder](expr, ByteOrder,
eci)
with InfosetCachedEvaluatable[ByteOrder] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
@@ -48,7 +48,7 @@ class CheckByteAndBitOrderEv(
) extends Evaluatable[Ok](t)
with InfosetCachedEvaluatable[Ok] { // can't use unit here, not <: AnyRef
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override final protected def compute(state: ParseOrUnparseState): Ok = {
t match {
@@ -78,7 +78,7 @@ class CheckBitOrderAndCharsetEv(t: DPathCompileInfo,
bitOrder: BitOrder, charset
extends Evaluatable[Ok](t)
with InfosetCachedEvaluatable[Ok] { // can't use unit here, not <: AnyRef
- override def runtimeDependencies = Vector(charsetEv)
+ override val runtimeDependencies = Array(charsetEv)
override final protected def compute(state: ParseOrUnparseState): Ok = {
val bitsCharset = charsetEv.evaluate(state)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvCalendarLanguage.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvCalendarLanguage.scala
index fd17beb55..7cffb2e78 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvCalendarLanguage.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvCalendarLanguage.scala
@@ -58,7 +58,7 @@ class CalendarLanguageEv(
eci
)
with InfosetCachedEvaluatable[ULocale] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class CalendarEv(
@@ -71,7 +71,7 @@ class CalendarEv(
) extends Evaluatable[Calendar](eci)
with InfosetCachedEvaluatable[Calendar] {
- override def runtimeDependencies = Seq(localeEv)
+ override val runtimeDependencies = Array(localeEv)
override def compute(state: ParseOrUnparseState) = {
// Used to configure the dataFormatter
@@ -107,7 +107,7 @@ class DateTimeFormatterEv(
) extends Evaluatable[ThreadSafePool[SimpleDateFormat]](eci)
with InfosetCachedEvaluatable[ThreadSafePool[SimpleDateFormat]] {
- override def runtimeDependencies = Seq(localeEv)
+ override val runtimeDependencies = Array(localeEv)
override def compute(state: ParseOrUnparseState) = {
val calendar = calendarEv.evaluate(state)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvDelimiters.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvDelimiters.scala
index c2fcab594..3e9060411 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvDelimiters.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvDelimiters.scala
@@ -60,7 +60,7 @@ abstract class DelimiterParseEv(
with InfosetCachedEvaluatable[Array[DFADelimiter]]
with DelimiterEvMixin[Array[DFADelimiter]] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override protected def compute(state: ParseOrUnparseState):
Array[DFADelimiter] = {
if (state.isInstanceOf[UState]) {
@@ -85,7 +85,7 @@ abstract class DelimiterUnparseEv(
with InfosetCachedEvaluatable[Array[DFADelimiter]]
with DelimiterEvMixin[Array[DFADelimiter]] {
- override def runtimeDependencies = Seq(outputNewLine)
+ override val runtimeDependencies = Array(outputNewLine)
override protected def compute(state: ParseOrUnparseState):
Array[DFADelimiter] = {
if (state.isInstanceOf[PState]) {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvElement.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvElement.scala
index b770ab758..50a07a7e5 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvElement.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvElement.scala
@@ -36,7 +36,7 @@ class ExplicitLengthEv(expr: CompiledExpression[JLong], ci:
DPathCompileInfo)
extends EvaluatableExpression[JLong](expr, ci)
with LengthEv
with InfosetCachedEvaluatable[JLong] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
/**
* Length is special. For the dfdl:length property, when it's an expression
@@ -61,7 +61,7 @@ class ImplicitLengthEv(lengthValue: Long, ci:
DPathElementCompileInfo)
with LengthEv
with NoCacheEvaluatable[JLong] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
private val jLength = JLong.valueOf(lengthValue)
@@ -161,7 +161,7 @@ class LengthInBitsEv(
ci: DPathCompileInfo
) extends LengthInBitsEvBase(ci, lengthUnits, lengthKind) {
- override def runtimeDependencies = maybeCharsetEv.toList :+ lengthEv
+ override val runtimeDependencies = Array(lengthEv) ++ maybeCharsetEv.toList
override protected def lengthInLengthUnits(state: ParseOrUnparseState) =
lengthEv.evaluate(state).longValue()
@@ -183,7 +183,7 @@ class MinLengthInBitsEv(
ci: DPathCompileInfo
) extends LengthInBitsEvBase(ci, lengthUnits, lengthKind) {
- override def runtimeDependencies = maybeCharsetEv.toList
+ override val runtimeDependencies = maybeCharsetEv.toList.toArray
override protected def lengthInLengthUnits(state: ParseOrUnparseState) =
minLen
}
@@ -206,7 +206,7 @@ class UnparseTargetLengthInBitsEv(
) extends Evaluatable[MaybeJULong](ci)
with InfosetCachedEvaluatable[MaybeJULong] {
- override def runtimeDependencies = Vector(this.lengthInBitsEv,
this.minLengthInBitsEv)
+ override val runtimeDependencies = Array(this.lengthInBitsEv,
this.minLengthInBitsEv)
/**
* Note: use of MaybeJULong type. New Maybe type added which can be stored in
@@ -242,7 +242,7 @@ class UnparseTargetLengthInCharactersEv(
) extends Evaluatable[MaybeJULong](ci)
with InfosetCachedEvaluatable[MaybeJULong] {
- override def runtimeDependencies = Vector(this.lengthEv, charsetEv)
+ override val runtimeDependencies = Array(this.lengthEv, charsetEv)
/**
* Note: use of MaybeJULong type. New Maybe type added which can be stored in
@@ -268,17 +268,17 @@ class UnparseTargetLengthInCharactersEv(
class OccursCountEv(expr: CompiledExpression[JLong], ci:
DPathElementCompileInfo)
extends EvaluatableExpression[JLong](expr, ci)
with InfosetCachedEvaluatable[JLong] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class OutputNewLineEv(expr: CompiledExpression[String], ci: DPathCompileInfo)
extends EvaluatableConvertedExpression[String, String](expr,
OutputNewLineCooker, ci)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class ChoiceDispatchKeyEv(expr: CompiledExpression[String], ci:
DPathCompileInfo)
extends EvaluatableConvertedExpression[String, String](expr,
ChoiceDispatchKeyCooker, ci)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEncoding.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEncoding.scala
index b850c4d27..2d366dfc7 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEncoding.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEncoding.scala
@@ -58,7 +58,7 @@ abstract class EncodingEvBase(
tci
)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override protected def compute(state: ParseOrUnparseState): String = {
// compute via the cooker first
@@ -85,7 +85,7 @@ abstract class CharsetEvBase(encodingEv: EncodingEvBase, tci:
DPathCompileInfo)
extends Evaluatable[BitsCharset](tci)
with InfosetCachedEvaluatable[BitsCharset] {
- override def runtimeDependencies = Seq(encodingEv)
+ override val runtimeDependencies = Array(encodingEv)
private def checkCharset(state: ParseOrUnparseState, bitsCharset:
BitsCharset): Unit = {
if (bitsCharset.bitWidthOfACodeUnit != 8) {
@@ -120,7 +120,7 @@ class FillByteEv(fillByteRaw: String, charsetEv: CharsetEv,
tci: DPathCompileInf
extends Evaluatable[Integer](tci)
with InfosetCachedEvaluatable[Integer] {
- override def runtimeDependencies = Seq(charsetEv)
+ override val runtimeDependencies = Array(charsetEv)
private val maybeSingleRawByteValue: MaybeInt = {
val RawByte = """\%\#r([0-9a-fA-F]{2})\;""".r
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEscapeSchemes.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEscapeSchemes.scala
index 4aab38cf2..9e22fc57e 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEscapeSchemes.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvEscapeSchemes.scala
@@ -33,13 +33,13 @@ import
org.apache.daffodil.runtime1.processors.unparsers.UState
class EscapeCharEv(expr: CompiledExpression[String], ci: DPathCompileInfo)
extends EvaluatableConvertedExpression[String, String](expr,
EscapeCharacterCooker, ci)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class EscapeEscapeCharEv(expr: CompiledExpression[String], ci:
DPathCompileInfo)
extends EvaluatableConvertedExpression[String, String](expr,
EscapeEscapeCharacterCooker, ci)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class ExtraEscapedCharsEv(expr: CompiledExpression[String], ci:
DPathCompileInfo)
extends EvaluatableConvertedExpression[String, Seq[String]](
@@ -48,7 +48,7 @@ class ExtraEscapedCharsEv(expr: CompiledExpression[String],
ci: DPathCompileInfo
ci
)
with InfosetCachedEvaluatable[Seq[String]] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
trait EscapeSchemeCommonEv {
@@ -103,7 +103,7 @@ class EscapeSchemeCharParseEv(
ci: DPathCompileInfo
) extends EscapeSchemeParseEv(ci) {
- override def runtimeDependencies = Vector(escapeChar) ++
optEscapeEscapeChar.toList
+ override val runtimeDependencies = Array(escapeChar) ++
optEscapeEscapeChar.toList
def compute(state: ParseOrUnparseState) = {
val escChar = escapeChar.evaluate(state).charAt(0)
@@ -119,8 +119,8 @@ class EscapeSchemeCharUnparseEv(
ci: DPathCompileInfo
) extends EscapeSchemeUnparseEv(ci) {
- override def runtimeDependencies =
- Vector(escapeChar) ++ optEscapeEscapeChar.toList ++
extraEscapedChars.toList
+ override val runtimeDependencies =
+ Array(escapeChar) ++ optEscapeEscapeChar.toList ++ extraEscapedChars.toList
def compute(state: ParseOrUnparseState) = {
val escChar = escapeChar.evaluate(state).charAt(0)
@@ -142,7 +142,7 @@ class EscapeSchemeBlockParseEv(
ci: DPathCompileInfo
) extends EscapeSchemeParseEv(ci) {
- override def runtimeDependencies = optEscapeEscapeChar.toList
+ override val runtimeDependencies = optEscapeEscapeChar.toList.toArray
val bs = EscapeBlockStartCooker.convertConstant(blockStart, ci, forUnparse =
false)
val be = EscapeBlockEndCooker.convertConstant(blockEnd, ci, forUnparse =
false)
@@ -162,7 +162,8 @@ class EscapeSchemeBlockUnparseEv(
ci: DPathCompileInfo
) extends EscapeSchemeUnparseEv(ci) {
- override def runtimeDependencies = optEscapeEscapeChar.toList ++
extraEscapedChars.toList
+ override val runtimeDependencies =
+ (optEscapeEscapeChar.toList ++ extraEscapedChars.toList).toArray
val bs = EscapeBlockStartCooker.convertConstant(blockStart, ci, forUnparse =
true)
val be = EscapeBlockEndCooker.convertConstant(blockEnd, ci, forUnparse =
true)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvFieldDFA.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvFieldDFA.scala
index 682cab1e0..8e24964fe 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvFieldDFA.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvFieldDFA.scala
@@ -26,7 +26,7 @@ class FieldDFAParseEv(val escapeSchemeEv:
Maybe[EscapeSchemeParseEv], ci: DPathC
extends Evaluatable[DFAField](ci)
with InfosetCachedEvaluatable[DFAField] {
- override def runtimeDependencies = escapeSchemeEv.toList
+ override val runtimeDependencies = escapeSchemeEv.toList.toArray
def compute(state: ParseOrUnparseState) = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvTextNumber.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvTextNumber.scala
index fdd11774c..3eb8a1489 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvTextNumber.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/EvTextNumber.scala
@@ -45,7 +45,7 @@ class TextStandardDecimalSeparatorEv(expr:
CompiledExpression[String], tci: DPat
tci
)
with InfosetCachedEvaluatable[List[String]] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class TextStandardGroupingSeparatorEv(expr: CompiledExpression[String], tci:
DPathCompileInfo)
@@ -55,7 +55,7 @@ class TextStandardGroupingSeparatorEv(expr:
CompiledExpression[String], tci: DPa
tci
)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class TextStandardExponentRepEv(expr: CompiledExpression[String], tci:
DPathCompileInfo)
@@ -65,7 +65,7 @@ class TextStandardExponentRepEv(expr:
CompiledExpression[String], tci: DPathComp
tci
)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
class TextNumberFormatEv(
@@ -86,8 +86,8 @@ class TextNumberFormatEv(
) extends Evaluatable[DecimalFormat](tci)
with InfosetCachedEvaluatable[DecimalFormat] {
- override def runtimeDependencies =
- (decimalSepEv.toList ++ groupingSepEv.toList ++
exponentRepEv.toList).toVector
+ override val runtimeDependencies =
+ (decimalSepEv.toList ++ groupingSepEv.toList ++
exponentRepEv.toList).toArray
private def checkUnique(
decimalSep: MaybeChar,
@@ -245,7 +245,7 @@ class TextBooleanTrueRepEv(
tci
)
with InfosetCachedEvaluatable[List[String]] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override final protected def compute(state: ParseOrUnparseState):
List[String] = {
if (mustBeSameLength) {
@@ -279,5 +279,5 @@ class TextBooleanFalseRepEv(expr:
CompiledExpression[String], tci: DPathCompileI
tci
)
with InfosetCachedEvaluatable[List[String]] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/Evaluatable.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/Evaluatable.scala
index 9fef3a22e..4e30c335c 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/Evaluatable.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/Evaluatable.scala
@@ -175,7 +175,7 @@ abstract class Evaluatable[+T <: AnyRef](
* Important - Evalutables MUST declare all evaluatables they depend on. But
only those
* they directly depend on. (Not the dependents of the dependents...)
*/
- def runtimeDependencies: Seq[Evaluatable[AnyRef]]
+ val runtimeDependencies: Array[Evaluatable[AnyRef]]
/**
* Been compiled yet?
@@ -453,7 +453,7 @@ abstract class EvaluatableExpression[ExprType <: AnyRef](
) extends Evaluatable[ExprType](ci)
with ExprEvalMixin[ExprType] {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override final def toBriefXML(depth: Int = -1) =
"<EvaluatableExpression eName='" + ci.diagnosticDebugName + "' expr=" +
expr
@@ -475,7 +475,7 @@ trait EvaluatableConvertedExpressionMixin[ExprType <:
AnyRef, +ConvertedType <:
protected def converter: Converter[ExprType, ConvertedType]
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array[Evaluatable[AnyRef]]()
override final def toBriefXML(depth: Int = -1) =
if (this.isConstant) this.constValue.toString else expr.toBriefXML(depth)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/PackedBinaryTraits.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/PackedBinaryTraits.scala
index cc05f382d..a29163c3c 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/PackedBinaryTraits.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/PackedBinaryTraits.scala
@@ -93,7 +93,7 @@ abstract class PackedBinaryDecimalBaseParser(
) extends PrimParser
with PackedBinaryConversion[JBigDecimal]
with PackedBinaryLengthCheck {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def getBitLength(s: ParseOrUnparseState): Int
@@ -138,7 +138,7 @@ abstract class PackedBinaryIntegerBaseParser(
) extends PrimParser
with PackedBinaryConversion[JBigInteger]
with PackedBinaryLengthCheck {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def getBitLength(s: ParseOrUnparseState): Int
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/ProcessorBases.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/ProcessorBases.scala
index 1e5ba98df..7558c3946 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/ProcessorBases.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/ProcessorBases.scala
@@ -51,7 +51,7 @@ trait Processor extends ToBriefXMLImpl with Serializable {
// things common to both unparser and parser go here.
def context: RuntimeData
override def childProcessors: Vector[Processor]
- def runtimeDependencies: Vector[Evaluatable[AnyRef]]
+ val runtimeDependencies: Array[Evaluatable[AnyRef]]
var isInitialized: Boolean = false
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/VariableMap1.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/VariableMap1.scala
index f33174c7e..7d8cb037e 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/VariableMap1.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/VariableMap1.scala
@@ -121,7 +121,7 @@ class VariableInstance private (val rd:
VariableRuntimeData) extends Serializabl
}
override def toString: String =
- "VariableInstance(%s,%s,%s,%s)".format(state, value, rd,
rd.maybeDefaultValueExpr)
+ s"VariableInstance($state,$value,$rd,${rd.maybeDefaultValueExpr})"
def copy(
state: VariableState = state,
@@ -164,8 +164,7 @@ class VariableHasNoValue(qname: NamedQName, context:
VariableRuntimeData)
extends VariableException(
qname,
context,
- "Variable map (runtime): variable %s has no value. It was not set, and has
no default value."
- .format(qname)
+ s"Variable map (runtime): variable $qname has no value. It was not set,
and has no default value."
)
with RetryableException
@@ -173,7 +172,7 @@ class VariableSuspended(qname: NamedQName, context:
VariableRuntimeData)
extends VariableException(
qname,
context,
- "Variable map (runtime): variable %s is currently suspended".format(qname)
+ s"Variable map (runtime): variable $qname is currently suspended"
)
with RetryableException
@@ -186,8 +185,7 @@ class VariableCircularDefinition(qname: NamedQName,
context: VariableRuntimeData
extends VariableException(
qname,
context,
- "Variable map (runtime): variable %s is part of a circular definition with
other variables"
- .format(qname)
+ s"Variable map (runtime): variable $qname is part of a circular definition
with other variables"
)
/**
@@ -367,15 +365,11 @@ class VariableMap private (
vrd.direction match {
case VariableDirection.ParseOnly if (!state.isInstanceOf[PState]) =>
state.SDE(
- "Attempting to read variable %s which is marked as parseOnly during
unparsing".format(
- varQName
- )
+ s"Attempting to read variable $varQName which is marked as parseOnly
during unparsing"
)
case VariableDirection.UnparseOnly if (!state.isInstanceOf[UState]) =>
state.SDE(
- "Attempting to read variable %s which is marked as unparseOnly
during parsing".format(
- varQName
- )
+ s"Attempting to read variable $varQName which is marked as
unparseOnly during parsing"
)
case _ => // Do nothing
}
@@ -538,8 +532,7 @@ class VariableMap private (
case 1 => Some(vTable(candidates.head.vmapIndex))
case _ => {
val msg =
- "External variable binding %s is ambiguous. A namespace is
required to resolve the ambiguity. Found variables: %s"
- .format(bindingQName,
candidates.map(_.globalQName.toString).mkString(", "))
+ s"External variable binding $bindingQName is ambiguous. A
namespace is required to resolve the ambiguity. Found variables:
${candidates.map(_.globalQName.toString).mkString(", ")}"
throw new ExternalVariableException(msg)
}
}
@@ -570,11 +563,8 @@ class VariableMap private (
variable.rd.primType.fromXMLString(newValue)
} catch {
case e: InvalidPrimitiveDataException => {
- val msg = "Value for variable %s is not a valid %s:
%s".format(
- variable.rd.globalQName,
- variable.rd.primType.globalQName,
- newValue
- )
+ val msg =
+ s"Value for variable ${variable.rd.globalQName} is not a
valid ${variable.rd.primType.globalQName}: $newValue"
throw new ExternalVariableException(msg)
}
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/AssertPatternParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/AssertPatternParsers.scala
index cacb745fc..a944c4337 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/AssertPatternParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/AssertPatternParsers.scala
@@ -73,7 +73,7 @@ class AssertPatternParser(
override val failureType: FailureType
) extends PrimParser
with AssertParserMixin {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def toBriefXML(depthLimit: Int = -1) = {
val kindString = if (discrim) "Discriminator" else "Assertion"
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryBooleanParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryBooleanParsers.scala
index a4a30de0b..c2b6eb152 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryBooleanParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryBooleanParsers.scala
@@ -93,7 +93,7 @@ class BinaryBooleanParser(
lengthKind: LengthKind
) extends BinaryBooleanParserBase(binaryBooleanTrueRep, binaryBooleanFalseRep,
lengthUnits) {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
override def getBitLength(state: PState): Int = {
val nBytesAsJLong = lengthEv.evaluate(state)
@@ -113,7 +113,7 @@ class BinaryBooleanBitLimitLengthParser(
) extends BinaryBooleanParserBase(binaryBooleanTrueRep, binaryBooleanFalseRep,
lengthUnits)
with BitLengthFromBitLimitMixin {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(state: PState): Int = {
getLengthInBits(state).toInt
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryNumberParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryNumberParsers.scala
index e129a4925..790b35c9d 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryNumberParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BinaryNumberParsers.scala
@@ -31,7 +31,7 @@ import
org.apache.daffodil.runtime1.processors.ParseOrUnparseState
import org.apache.daffodil.runtime1.processors.unparsers.UState
class BinaryFloatParser(override val context: ElementRuntimeData) extends
PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(start: PState): Unit = {
val dis = start.dataInputStream
@@ -47,7 +47,7 @@ class BinaryFloatParser(override val context:
ElementRuntimeData) extends PrimPa
}
class BinaryDoubleParser(override val context: ElementRuntimeData) extends
PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(start: PState): Unit = {
val dis = start.dataInputStream
@@ -92,7 +92,7 @@ abstract class BinaryDecimalParserBase(
binaryDecimalVirtualPoint: Int
) extends PrimParser
with BinaryNumberCheckWidth {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def getBitLength(s: ParseOrUnparseState): Int
@@ -138,7 +138,7 @@ abstract class BinaryIntegerBaseParser(
override val context: ElementRuntimeData
) extends PrimParser
with BinaryNumberCheckWidth {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def getBitLength(s: ParseOrUnparseState): Int
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BlobLengthParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BlobLengthParsers.scala
index 5dacd2a8d..eb2e1979d 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BlobLengthParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/BlobLengthParsers.scala
@@ -105,7 +105,7 @@ sealed abstract class BlobLengthParser(override val
context: ElementRuntimeData)
final class BlobSpecifiedLengthParser(erd: ElementRuntimeData, lengthEv:
LengthInBitsEv)
extends BlobLengthParser(erd) {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
override def getLengthInBits(pstate: PState): Long = {
lengthEv.evaluate(pstate).get
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ConvertTextStandardNumberParser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ConvertTextStandardNumberParser.scala
index 609e2a6e5..671c238c7 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ConvertTextStandardNumberParser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ConvertTextStandardNumberParser.scala
@@ -43,7 +43,7 @@ case class ConvertTextCombinatorParser(
converterParser: Parser
) extends CombinatorParser(rd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(valueParser, converterParser)
@@ -166,7 +166,7 @@ case class ConvertTextStandardNumberParser(
) extends TextPrimParser
with TextDecimalVirtualPointMixin {
- override def runtimeDependencies = Vector(textNumberFormatEv)
+ override val runtimeDependencies = Array(textNumberFormatEv)
private val primNumeric =
context.optPrimType.get.asInstanceOf[NodeInfo.PrimType.PrimNumeric]
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimitedParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimitedParsers.scala
index 6d3c739f4..8d196c5c8 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimitedParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimitedParsers.scala
@@ -50,7 +50,7 @@ class StringDelimitedParser(
) extends TextPrimParser
with CaptureParsingValueLength {
- override def runtimeDependencies = Vector(fieldDFAEv,
context.encInfo.charsetEv)
+ override val runtimeDependencies = Array(fieldDFAEv,
context.encInfo.charsetEv)
override val charsetEv = context.encInfo.charsetEv
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimiterParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimiterParsers.scala
index 6dd5caa9a..6ab9b03e2 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimiterParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/DelimiterParsers.scala
@@ -51,7 +51,7 @@ class DelimiterTextParser(
mustMatchNonZeroData: Boolean
) extends TextPrimParser {
- override def runtimeDependencies = rd.encodingInfo.runtimeDependencies
+ override val runtimeDependencies = rd.encodingInfo.runtimeDependencies
override def context = rd
override val nom = delimiterType.toString
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementCombinator1.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementCombinator1.scala
index f6ab4d3b3..a42187fb1 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementCombinator1.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementCombinator1.scala
@@ -44,7 +44,7 @@ abstract class ElementParserBase(
eRepTypeParser: Maybe[Parser]
) extends CombinatorParser(erd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def move(pstate: PState): Unit // implement for different kinds of "moving
over to next thing"
def parseBegin(pstate: PState): Unit
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementKindParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementKindParsers.scala
index 1f9934df1..876898871 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementKindParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ElementKindParsers.scala
@@ -34,7 +34,7 @@ import org.apache.daffodil.runtime1.processors.TermRuntimeData
class ComplexTypeParser(rd: RuntimeData, bodyParser: Parser) extends
CombinatorParser(rd) {
override def nom = "ComplexType"
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(bodyParser)
@@ -61,7 +61,7 @@ class DelimiterStackParser(
override def childProcessors = Vector(bodyParser)
- override def runtimeDependencies = delimiters.toVector
+ override val runtimeDependencies = delimiters.toArray
def parse(start: PState): Unit = {
@@ -105,7 +105,7 @@ class DynamicEscapeSchemeParser(
override def childProcessors = Vector(bodyParser)
- override def runtimeDependencies = Vector(escapeScheme)
+ override val runtimeDependencies = Array(escapeScheme)
def parse(start: PState): Unit = {
// evaluate the dynamic escape scheme in the correct scope. the resulting
@@ -131,7 +131,7 @@ class DynamicEscapeSchemeParser(
*/
class ChoiceBranchEmptyParser(val context: RuntimeData) extends
PrimParserNoData {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(state: PState): Unit = {
// do nothing
@@ -150,7 +150,7 @@ abstract class ChoiceDispatchCombinatorParserBase(
override def nom = "ChoiceDispatch"
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors =
dispatchBranchKeyMap.values.iterator.asScala.map(_._1).toVector ++
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ExpressionEvaluatingParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ExpressionEvaluatingParsers.scala
index 4d53bdf15..cf096b007 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ExpressionEvaluatingParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ExpressionEvaluatingParsers.scala
@@ -42,7 +42,7 @@ abstract class ExpressionEvaluationParser(
override val context: RuntimeData = contextParam
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector()
@@ -90,7 +90,7 @@ final class NewVariableInstanceStartParser(vrd:
VariableRuntimeData, trd: TermRu
override def context = trd
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(start: PState): Unit = {
val nvi = start.newVariableInstance(vrd)
@@ -111,7 +111,7 @@ final class NewVariableInstanceEndParser(vrd:
VariableRuntimeData, trd: TermRunt
extends PrimParser {
override def context = trd
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(start: PState) = {
start.removeVariableInstance(vrd)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/FramingParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/FramingParsers.scala
index 0ced38c37..686550d1f 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/FramingParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/FramingParsers.scala
@@ -23,7 +23,7 @@ import org.apache.daffodil.runtime1.processors.TextProcessor
class SkipRegionParser(skipInBits: Int, override val context: TermRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(pstate: PState) = {
val dis = pstate.dataInputStream
@@ -34,7 +34,7 @@ class SkipRegionParser(skipInBits: Int, override val context:
TermRuntimeData)
class AlignmentFillParser(alignmentInBits: Int, override val context:
TermRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(pstate: PState): Unit = {
val dis = pstate.dataInputStream
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HexBinaryLengthParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HexBinaryLengthParsers.scala
index 7c9f50efc..b6c5b51fa 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HexBinaryLengthParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HexBinaryLengthParsers.scala
@@ -75,7 +75,7 @@ sealed abstract class HexBinaryLengthParser(override val
context: ElementRuntime
final class HexBinarySpecifiedLengthParser(erd: ElementRuntimeData, lengthEv:
LengthInBitsEv)
extends HexBinaryLengthParser(erd) {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
override def getLengthInBits(pstate: PState): Long = {
lengthEv.evaluate(pstate).get
@@ -86,7 +86,7 @@ final class HexBinarySpecifiedLengthParser(erd:
ElementRuntimeData, lengthEv: Le
final class HexBinaryEndOfBitLimitParser(erd: ElementRuntimeData)
extends HexBinaryLengthParser(erd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getLengthInBits(pstate: PState): Long = {
pstate.bitLimit0b.get - pstate.bitPos0b
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HiddenGroupCombinatorParser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HiddenGroupCombinatorParser.scala
index 86a0a59bd..b79bea9eb 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HiddenGroupCombinatorParser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/HiddenGroupCombinatorParser.scala
@@ -30,7 +30,7 @@ class HiddenGroupCombinatorParser(ctxt:
ModelGroupRuntimeData, bodyParser: Parse
override def childProcessors = Vector(bodyParser)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(start: PState): Unit = {
try {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/InitiatedContentParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/InitiatedContentParsers.scala
index 468067165..010dd05d4 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/InitiatedContentParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/InitiatedContentParsers.scala
@@ -24,7 +24,7 @@ final class
InitiatedContentDiscrimOnIndexGreaterThanMinParser(
min: Int,
override val context: ElementRuntimeData
) extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
final def parse(start: PState): Unit = {
if (start.arrayIterationPos > min)
@@ -34,7 +34,7 @@ final class
InitiatedContentDiscrimOnIndexGreaterThanMinParser(
final class InitiatedContentDiscrimChoiceParser(override val context:
TermRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
final def parse(start: PState): Unit = {
start.resolvePointOfUncertainty()
@@ -44,7 +44,7 @@ final class InitiatedContentDiscrimChoiceParser(override val
context: TermRuntim
final class InitiatedContentDiscrimChoiceOnlyOnFirstIndexParser(
override val context: TermRuntimeData
) extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
final def parse(start: PState): Unit = {
if (start.arrayIterationPos == 1)
@@ -56,7 +56,7 @@ final class
InitiatedContentDiscrimChoiceAndIndexGreaterThanMinParser(
min: Int,
override val context: ElementRuntimeData
) extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
final def parse(start: PState): Unit = {
// Resolves PoUs associated with arrays with some minimum number of
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilEmptyCombinatorParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilEmptyCombinatorParsers.scala
index 4f92a0204..5a75cc46b 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilEmptyCombinatorParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilEmptyCombinatorParsers.scala
@@ -24,7 +24,7 @@ abstract class NilOrValueParser(ctxt: TermRuntimeData,
nilParser: Parser, valueP
extends CombinatorParser(ctxt) {
override def childProcessors = Vector(nilParser, valueParser)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(pstate: PState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilParsers.scala
index faaa285ba..3eef0468a 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NilParsers.scala
@@ -28,7 +28,7 @@ abstract class LiteralNilOfSpecifiedLengthParserBase(erd:
ElementRuntimeData)
private val eName = erd.name
- override def runtimeDependencies = Vector(erd.encInfo.charsetEv)
+ override val runtimeDependencies = Array(erd.encInfo.charsetEv)
override val context = erd
override val charsetEv = erd.encInfo.charsetEv
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NonBaseTenTextNumberParser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NonBaseTenTextNumberParser.scala
index 16acb04f1..c744647fe 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NonBaseTenTextNumberParser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/NonBaseTenTextNumberParser.scala
@@ -26,7 +26,7 @@ import
org.apache.daffodil.runtime1.processors.ElementRuntimeData
class ConvertNonBaseTenTextNumberParser(override val context:
ElementRuntimeData, base: Int)
extends TextPrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
private val primNumeric =
context.optPrimType.get.asInstanceOf[NodeInfo.PrimType.PrimNumeric]
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/Parser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/Parser.scala
index 6e978e37a..c2d21bd6c 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/Parser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/Parser.scala
@@ -212,7 +212,7 @@ trait TextPrimParser extends PrimParser with TextProcessor
* optimized out.
*/
final class NadaParser(override val context: RuntimeData) extends
PrimParserNoData {
- override def runtimeDependencies: Vector[Evaluatable[AnyRef]] = Vector()
+ override val runtimeDependencies: Array[Evaluatable[AnyRef]] = Array()
override def isEmpty = true
@@ -232,7 +232,7 @@ final class SeqCompParser(
val childParsers: Array[Parser],
testAssert: Array[Parser]
) extends CombinatorParser(context) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = childParsers.toVector
override def nom = "seq"
@@ -265,7 +265,7 @@ final class SeqCompParser(
class ChoiceParser(ctxt: RuntimeData, val childParsers: Array[Parser])
extends CombinatorParser(ctxt) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = childParsers.toVector
override def nom = "choice"
@@ -325,7 +325,7 @@ class ChoiceParser(ctxt: RuntimeData, val childParsers:
Array[Parser])
}
case class DummyParser(override val context: TermRuntimeData) extends
PrimParserNoData {
- override def runtimeDependencies: Vector[Evaluatable[AnyRef]] = Vector()
+ override val runtimeDependencies: Array[Evaluatable[AnyRef]] = Array()
def parse(pstate: PState): Unit =
pstate.SDE("Parser for " + context + " is not yet implemented.")
@@ -349,5 +349,5 @@ case class NotParsableParser(context: ElementRuntimeData)
extends PrimParserNoDa
}
override def childProcessors = Vector()
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/PrimitivesDateTime1.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/PrimitivesDateTime1.scala
index 88002568e..ef45640b8 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/PrimitivesDateTime1.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/PrimitivesDateTime1.scala
@@ -41,7 +41,7 @@ case class ConvertTextCalendarParser(
dateTimeFormatterEv: DateTimeFormatterEv
) extends TextPrimParser {
- override def runtimeDependencies = Vector(calendarEv, dateTimeFormatterEv)
+ override val runtimeDependencies = Array(calendarEv, dateTimeFormatterEv)
def parse(start: PState): Unit = {
val node = start.simpleElement
@@ -135,7 +135,7 @@ case class ConvertBinaryCalendarSecMilliParser(
lengthInBits: Int
) extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def parse(start: PState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/RepTypeParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/RepTypeParsers.scala
index 6c39bff8f..de38bc2a2 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/RepTypeParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/RepTypeParsers.scala
@@ -100,7 +100,7 @@ class RepTypeParser(
with WithDetachedParser {
override def childProcessors = Vector(repTypeParser)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(pstate: PState): Unit = {
val repValue =
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SeparatedSequenceParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SeparatedSequenceParsers.scala
index 8ff39edb0..a6ff7c04e 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SeparatedSequenceParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SeparatedSequenceParsers.scala
@@ -131,7 +131,7 @@ final class OrderedSeparatedSequenceParser(
override val childParsers: Array[SequenceChildParser]
) extends SequenceParserBase(rd, isOrdered = true) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = (sep +: childParsers).toVector
}
@@ -142,6 +142,6 @@ final class UnorderedSeparatedSequenceParser(
override val childParsers: Array[SequenceChildParser]
) extends SequenceParserBase(rd, isOrdered = false) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = (sep +: childParsers).toVector
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SequenceChildBases.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SequenceChildBases.scala
index cce424fdf..fc079317c 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SequenceChildBases.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SequenceChildBases.scala
@@ -202,7 +202,7 @@ abstract class SequenceChildParser(
override def childProcessors: Vector[Processor] = Vector(childParser)
- override def runtimeDependencies: Vector[Evaluatable[AnyRef]] = Vector()
+ override val runtimeDependencies: Array[Evaluatable[AnyRef]] = Array()
final override def parse(pstate: PState): Unit =
Assert.usageError("Not to be called on sequence child parsers")
@@ -473,7 +473,7 @@ abstract class OccursCountExpressionParser(
final override def pouStatus = PoUStatus.NoPoU
- final override def runtimeDependencies = Vector(occursCountEv)
+ final override val runtimeDependencies = Array(occursCountEv)
final override def isBoundedMax = true
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SpecifiedLengthParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SpecifiedLengthParsers.scala
index 2f3ee1f5d..8f1dc79d8 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SpecifiedLengthParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/SpecifiedLengthParsers.scala
@@ -38,7 +38,7 @@ sealed abstract class SpecifiedLengthParserBase(eParser:
Parser, erd: RuntimeDat
extends CombinatorParser(erd)
with CaptureParsingValueLength {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(eParser)
@@ -283,7 +283,7 @@ final class SpecifiedLengthPrefixedCharactersParser(
class CaptureStartOfContentLengthParser(override val context:
ElementRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(state: PState): Unit = {
val dis = state.dataInputStream
@@ -295,7 +295,7 @@ class CaptureStartOfContentLengthParser(override val
context: ElementRuntimeData
class CaptureEndOfContentLengthParser(override val context: ElementRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(state: PState): Unit = {
val dis = state.dataInputStream
@@ -307,7 +307,7 @@ class CaptureEndOfContentLengthParser(override val context:
ElementRuntimeData)
class CaptureStartOfValueLengthParser(override val context: ElementRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(state: PState): Unit = {
val dis = state.dataInputStream
@@ -319,7 +319,7 @@ class CaptureStartOfValueLengthParser(override val context:
ElementRuntimeData)
class CaptureEndOfValueLengthParser(override val context: ElementRuntimeData)
extends PrimParser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def parse(state: PState): Unit = {
val dis = state.dataInputStream
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/StringLengthParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/StringLengthParsers.scala
index 08e28190e..119379d67 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/StringLengthParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/StringLengthParsers.scala
@@ -40,7 +40,7 @@ final class StringOfSpecifiedLengthParser(
) extends TextPrimParser
with StringOfSpecifiedLengthMixin {
- override def runtimeDependencies = Vector(erd.encInfo.charsetEv)
+ override val runtimeDependencies = Array(erd.encInfo.charsetEv)
override lazy val charsetEv = erd.encInfo.charsetEv
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/TextBooleanParser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/TextBooleanParser.scala
index 0a0371620..2e8a1f2de 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/TextBooleanParser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/TextBooleanParser.scala
@@ -31,7 +31,7 @@ case class ConvertTextBooleanParser(
ignoreCase: Boolean
) extends TextPrimParser {
- override def runtimeDependencies = Vector(textBooleanTrueRepEv,
textBooleanFalseRepEv)
+ override val runtimeDependencies = Array(textBooleanTrueRepEv,
textBooleanFalseRepEv)
private def matches(str1: String, str2: String): Boolean = {
if (ignoreCase) str1.equalsIgnoreCase(str2) else str1 == str2
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/UnseparatedSequenceParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/UnseparatedSequenceParsers.scala
index ebb82983c..03bf4b76a 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/UnseparatedSequenceParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/UnseparatedSequenceParsers.scala
@@ -83,7 +83,7 @@ class OrderedUnseparatedSequenceParser(
override val childParsers: Array[SequenceChildParser]
) extends SequenceParserBase(rd, isOrdered = true) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors: Vector[Processor] = childParsers.toVector
}
@@ -92,7 +92,7 @@ class UnorderedUnseparatedSequenceParser(
rd: SequenceRuntimeData,
override val childParsers: Array[SequenceChildParser]
) extends SequenceParserBase(rd, isOrdered = false) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors: Vector[Processor] = childParsers.toVector
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ZonedTextParsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ZonedTextParsers.scala
index e9b8bf338..6cfec53c5 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ZonedTextParsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/parsers/ZonedTextParsers.scala
@@ -37,7 +37,7 @@ case class ConvertZonedCombinatorParser(
converterParser: Parser
) extends CombinatorParser(rd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(valueParser, converterParser)
@@ -58,7 +58,7 @@ case class ConvertZonedNumberParser(
) extends TextPrimParser
with TextDecimalVirtualPointMixin {
- override def runtimeDependencies = Vector(textNumberFormatEv)
+ override val runtimeDependencies = Array(textNumberFormatEv)
private val primNumeric =
context.optPrimType.get.asInstanceOf[NodeInfo.PrimType.PrimNumeric]
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/UState.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/UState.scala
index d64a1710a..27a438187 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/UState.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/UState.scala
@@ -626,21 +626,21 @@ final class UStateMain private (
* that is what has gone wrong.
*/
override def inspectOrError = {
- val m = inspectMaybe
- if (m.isEmpty)
+ if (inspect)
+ inspectAccessor
+ else
Assert.invariantFailed(
"An InfosetEvent was required for unparsing, but no InfosetEvent was
available."
)
- m.get
}
override def advanceOrError = {
- val m = advanceMaybe
- if (m.isEmpty)
+ if (advance)
+ advanceAccessor
+ else
Assert.invariantFailed(
"An InfosetEvent was required for unparsing, but no InfosetEvent was
available."
)
- m.get
}
override def isInspectArrayEnd = {
@@ -668,24 +668,24 @@ final class UStateMain private (
override val arrayIterationIndexStack = MStackOfLong()
arrayIterationIndexStack.push(1L)
override def moveOverOneArrayIterationIndexOnly() =
- arrayIterationIndexStack.push(arrayIterationIndexStack.pop() + 1)
+ arrayIterationIndexStack.setTop(arrayIterationIndexStack.top + 1)
override def arrayIterationPos = arrayIterationIndexStack.top
override val occursIndexStack = MStackOfLong()
occursIndexStack.push(1L)
- override def moveOverOneOccursIndexOnly() =
occursIndexStack.push(occursIndexStack.pop() + 1)
+ override def moveOverOneOccursIndexOnly() =
occursIndexStack.setTop(occursIndexStack.top + 1)
override def occursPos = occursIndexStack.top
override val groupIndexStack = MStackOfLong()
groupIndexStack.push(1L)
- override def moveOverOneGroupIndexOnly() =
groupIndexStack.push(groupIndexStack.pop() + 1)
+ override def moveOverOneGroupIndexOnly() =
groupIndexStack.setTop(groupIndexStack.top + 1)
override def groupPos = groupIndexStack.top
// TODO: it doesn't look anything is actually reading the value of childindex
// stack. Can we get rid of it?
override val childIndexStack = MStackOfLong()
childIndexStack.push(1L)
- override def moveOverOneElementChildOnly() =
childIndexStack.push(childIndexStack.pop() + 1)
+ override def moveOverOneElementChildOnly() =
childIndexStack.setTop(childIndexStack.top + 1)
override def childPos = childIndexStack.top
override lazy val escapeSchemeEVCache = new
MStackOfMaybe[EscapeSchemeUnparserHelper]
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/Unparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/Unparser.scala
index 18c998ca8..592544ff0 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/Unparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/unparsers/Unparser.scala
@@ -30,7 +30,7 @@ sealed trait Unparser extends Processor {
protected def unparse(ustate: UState): Unit
- final def unparse1(ustate: UState, ignore: AnyRef = null) = {
+ final def unparse1(ustate: UState) = {
Assert.invariant(isInitialized)
val savedProc = ustate.maybeProcessor
ustate.setProcessor(this)
@@ -134,7 +134,7 @@ trait SuspendableUnparser extends PrimUnparser {
final class ErrorUnparser(override val context: TermRuntimeData = null)
extends PrimUnparserNoData {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def unparse(ustate: UState): Unit = {
Assert.abort("Error Unparser")
@@ -149,7 +149,7 @@ final class SeqCompUnparser(context: RuntimeData, val
childUnparsers: Array[Unpa
extends CombinatorUnparser(context)
with ToBriefXMLImpl {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = childUnparsers.toVector
@@ -174,7 +174,7 @@ case class DummyUnparser(primitiveName: String) extends
PrimUnparserNoData {
override def context = null
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def isEmpty = true
@@ -202,5 +202,5 @@ case class NotUnparsableUnparser(override val context:
ElementRuntimeData)
}
override def childProcessors = Vector()
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BCDUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BCDUnparsers.scala
index 0c47178d0..b3712f0e6 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BCDUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BCDUnparsers.scala
@@ -47,7 +47,7 @@ class BCDIntegerRuntimeLengthUnparser(
) extends BCDIntegerBaseUnparser(e)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
final class BCDIntegerDelimitedUnparser(e: ElementRuntimeData)
@@ -59,7 +59,7 @@ final class BCDIntegerDelimitedUnparser(e: ElementRuntimeData)
final class BCDIntegerMinimumLengthUnparser(e: ElementRuntimeData)
extends BCDIntegerBaseUnparser(e) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
val number = getNumberToPut(s.asInstanceOf[UState])
@@ -91,7 +91,7 @@ class BCDDecimalRuntimeLengthUnparser(
) extends BCDDecimalBaseUnparser(e, binaryDecimalVirtualPoint)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
final class BCDDecimalDelimitedUnparser(e: ElementRuntimeData,
binaryDecimalVirtualPoint: Int)
@@ -105,7 +105,7 @@ final class BCDDecimalMinimumLengthUnparser(
binaryDecimalVirtualPoint: Int
) extends BCDDecimalBaseUnparser(e, binaryDecimalVirtualPoint) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
val number = getNumberToPut(s.asInstanceOf[UState])
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryBooleanUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryBooleanUnparsers.scala
index 4c79467a3..2dc346735 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryBooleanUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryBooleanUnparsers.scala
@@ -116,7 +116,7 @@ class BinaryBooleanUnparser(
lengthUnits
) {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
override def getBitLength(s: ParseOrUnparseState): Int = {
val nBytesAsJLong = lengthEv.evaluate(s)
@@ -140,7 +140,7 @@ class BinaryBooleanMinimumLengthUnparser(
lengthUnits
) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = 32
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryNumberUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryNumberUnparsers.scala
index 6b8a1708c..456973d23 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryNumberUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BinaryNumberUnparsers.scala
@@ -112,7 +112,7 @@ class BinaryIntegerKnownLengthUnparser(
) extends BinaryIntegerBaseUnparser(e)
with HasKnownLengthInBits {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
@@ -123,7 +123,7 @@ class BinaryIntegerRuntimeLengthUnparser(
) extends BinaryIntegerBaseUnparser(e)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
class BinaryIntegerMinimumLengthUnparser(
@@ -133,7 +133,7 @@ class BinaryIntegerMinimumLengthUnparser(
private val primNumeric =
e.optPrimType.get.asInstanceOf[NodeInfo.PrimType.PrimNumeric]
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
if (maybeNBits.isDefined) {
@@ -152,7 +152,7 @@ class BinaryIntegerMinimumLengthUnparser(
class BinaryFloatUnparser(e: ElementRuntimeData) extends
BinaryNumberBaseUnparser(e) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState) = 32
@@ -169,7 +169,7 @@ class BinaryFloatUnparser(e: ElementRuntimeData) extends
BinaryNumberBaseUnparse
class BinaryDoubleUnparser(e: ElementRuntimeData) extends
BinaryNumberBaseUnparser(e) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState) = 64
@@ -191,7 +191,7 @@ class BinaryDecimalKnownLengthUnparser(
) extends BinaryDecimalUnparserBase(e, signed, binaryDecimalVirtualPoint)
with HasKnownLengthInBits {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
@@ -204,7 +204,7 @@ class BinaryDecimalRuntimeLengthUnparser(
) extends BinaryDecimalUnparserBase(e, signed, binaryDecimalVirtualPoint)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
class BinaryDecimalMinimumLengthUnparser(
@@ -213,7 +213,7 @@ class BinaryDecimalMinimumLengthUnparser(
binaryDecimalVirtualPoint: Int
) extends BinaryDecimalUnparserBase(e, signed, binaryDecimalVirtualPoint) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
// type is xs:decimal, the length is determined by the minimum number of
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BlobLengthUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BlobLengthUnparser.scala
index 107f3a8c9..ad8fd4796 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BlobLengthUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/BlobLengthUnparser.scala
@@ -28,7 +28,7 @@ import org.apache.daffodil.runtime1.processors.unparsers.*
abstract class BlobUnparserBase(override val context: ElementRuntimeData)
extends PrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def getLengthInBits(state: UState): Long
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ChoiceAndOtherVariousUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ChoiceAndOtherVariousUnparsers.scala
index f6c9aac8b..9cfff9e97 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ChoiceAndOtherVariousUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ChoiceAndOtherVariousUnparsers.scala
@@ -66,7 +66,7 @@ case class ChoiceBranchMap(
*/
class ChoiceBranchEmptyUnparser(val context: RuntimeData) extends
PrimUnparserNoData {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def unparse(state: UState): Unit = {
// do nothing
@@ -81,7 +81,7 @@ class ChoiceCombinatorUnparser(
with ToBriefXMLImpl {
override def nom = "Choice"
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = choiceBranchMap.childProcessors
@@ -160,8 +160,8 @@ class DelimiterStackUnparser(
override def childProcessors = Vector(bodyUnparser)
- override def runtimeDependencies =
- (initiatorOpt.toList ++ separatorOpt.toList ++
terminatorOpt.toList).toVector
+ override val runtimeDependencies =
+ (initiatorOpt.toList ++ separatorOpt.toList ++
terminatorOpt.toList).toArray
def unparse(state: UState): Unit = {
// Evaluate Delimiters
@@ -194,7 +194,7 @@ class DynamicEscapeSchemeUnparser(
override def childProcessors = Vector(bodyUnparser)
- override def runtimeDependencies = Vector(escapeScheme)
+ override val runtimeDependencies = Array(escapeScheme)
def unparse(state: UState): Unit = {
// evaluate the dynamic escape scheme in the correct scope. the resulting
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertBinaryCalendarUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertBinaryCalendarUnparser.scala
index 4b53edd92..4b4f4b8c8 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertBinaryCalendarUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertBinaryCalendarUnparser.scala
@@ -40,7 +40,7 @@ case class ConvertBinaryCalendarSecMilliUnparser(
/**
* Primitive unparsers must override runtimeDependencies
*/
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def putNumber(
dos: DataOutputStream,
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertNonBaseTenTextNumberUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertNonBaseTenTextNumberUnparser.scala
index ab5ac3857..34eb953c1 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertNonBaseTenTextNumberUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertNonBaseTenTextNumberUnparser.scala
@@ -29,7 +29,7 @@ case class ConvertNonBaseTenTextNumberUnparser(
base: Int
) extends TextPrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextBooleanUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextBooleanUnparser.scala
index a5f57f6d0..a3ef6262b 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextBooleanUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextBooleanUnparser.scala
@@ -35,7 +35,7 @@ case class ConvertTextBooleanUnparser(
/**
* Primitive unparsers must override runtimeDependencies
*/
- override def runtimeDependencies = Vector(textBooleanTrueRepEv,
textBooleanFalseRepEv)
+ override val runtimeDependencies = Array(textBooleanTrueRepEv,
textBooleanFalseRepEv)
def unparse(state: UState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextCalendarUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextCalendarUnparser.scala
index 386ab5cf7..b570a6eb2 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextCalendarUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextCalendarUnparser.scala
@@ -37,7 +37,7 @@ case class ConvertTextCalendarUnparser(
/**
* Primitive unparsers must override runtimeDependencies
*/
- override def runtimeDependencies = Vector(calendarEv, dateTimeFormatterEv)
+ override val runtimeDependencies = Array(calendarEv, dateTimeFormatterEv)
def unparse(state: UState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextStandardNumberUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextStandardNumberUnparser.scala
index 278fe2ac8..f9277bd11 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextStandardNumberUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertTextStandardNumberUnparser.scala
@@ -34,7 +34,7 @@ case class ConvertTextCombinatorUnparser(
converterUnparser: Unparser
) extends CombinatorUnparser(rd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(converterUnparser, valueUnparser)
@@ -56,7 +56,7 @@ case class ConvertTextNumberUnparser(
with TextDecimalVirtualPointMixin
with ToBriefXMLImpl {
- override def runtimeDependencies = Vector(textNumberFormatEv)
+ override val runtimeDependencies = Array(textNumberFormatEv)
override def unparse(state: UState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertZonedNumberUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertZonedNumberUnparser.scala
index 86070f465..5936dff2b 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertZonedNumberUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ConvertZonedNumberUnparser.scala
@@ -30,7 +30,7 @@ case class ConvertZonedCombinatorUnparser(
converterUnparser: Unparser
) extends CombinatorUnparser(rd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(converterUnparser, valueUnparser)
@@ -52,7 +52,7 @@ case class ConvertZonedNumberUnparser(
with TextDecimalVirtualPointMixin
with ToBriefXMLImpl {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState): Unit = {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimitedUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimitedUnparsers.scala
index 53a7ad846..bbb681444 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimitedUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimitedUnparsers.scala
@@ -40,7 +40,7 @@ sealed class StringDelimitedUnparser(
isDelimRequired: Boolean
) extends TextPrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
val fieldDFA = CreateFieldDFA()
val textUnparser = new TextDelimitedUnparser(context)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimiterUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimiterUnparsers.scala
index 95f64f296..b91e4ce33 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimiterUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/DelimiterUnparsers.scala
@@ -35,7 +35,7 @@ class DelimiterTextUnparser(
private def erd = context
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override lazy val nom = {
if (delimiterType == DelimiterTextType.Initiator) "InitiatorUnparser"
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ElementUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ElementUnparser.scala
index 7c5c2e5a9..2aeb77c82 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ElementUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ElementUnparser.scala
@@ -55,14 +55,13 @@ class ElementUnspecifiedLengthUnparser(
with RegularElementUnparserStartEndStrategy
with RepMoveMixin {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array[Evaluatable[AnyRef]]()
}
sealed trait RepMoveMixin {
def move(start: UState): Unit = {
- val childIndex = start.childIndexStack.pop()
- start.childIndexStack.push(childIndex + 1)
+ start.childIndexStack.setTop(start.childIndexStack.top + 1)
}
}
@@ -79,15 +78,14 @@ class ElementUnparserInputValueCalc(erd:
ElementRuntimeData, setVarUnparsers: Ar
extends ElementUnparserBase(erd, setVarUnparsers, Nope, Nope, Nope, Nope)
with RegularElementUnparserStartEndStrategy {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
/**
* Move over in the element children, but not in the group.
* This avoids separators for this IVC element.
*/
override def move(state: UState): Unit = {
- val childIndex = state.childIndexStack.pop()
- state.childIndexStack.push(childIndex + 1)
+ state.childIndexStack.setTop(state.childIndexStack.top + 1)
}
}
@@ -108,7 +106,7 @@ class ElementOVCUnspecifiedLengthUnparser(
with OVCStartEndStrategy
with RepMoveMixin {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
@@ -298,7 +296,7 @@ class ElementSpecifiedLengthUnparser(
with RegularElementUnparserStartEndStrategy
with ElementSpecifiedLengthMixin {
- override def runtimeDependencies = maybeTargetLengthEv.toList.toVector
+ override val runtimeDependencies = maybeTargetLengthEv.toList.toArray
override def runContentUnparser(state: UState): Unit = {
computeTargetLength(
@@ -357,7 +355,7 @@ class ElementOVCSpecifiedLengthUnparser(
with OVCStartEndStrategy
with ElementSpecifiedLengthMixin {
- override def runtimeDependencies = maybeTargetLengthEv.toList.toVector
+ override val runtimeDependencies = maybeTargetLengthEv.toList.toArray
private def suspendableExpression =
new ElementOVCSpecifiedLengthUnparserSuspendableExpression(this, expr)
@@ -396,7 +394,7 @@ sealed trait ElementUnparserStartEndStrategy {
protected def erd: ElementRuntimeData
- def runtimeDependencies: Vector[Evaluatable[AnyRef]]
+ val runtimeDependencies: Array[Evaluatable[AnyRef]]
}
sealed trait RegularElementUnparserStartEndStrategy extends
ElementUnparserStartEndStrategy {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ExpressionEvaluatingUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ExpressionEvaluatingUnparsers.scala
index 5fe097ef0..180b96f71 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ExpressionEvaluatingUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/ExpressionEvaluatingUnparsers.scala
@@ -60,7 +60,7 @@ final class SetVariableUnparser(
referencingContext: NonTermRuntimeData
) extends PrimUnparserNoData {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector()
@@ -95,7 +95,7 @@ class NewVariableInstanceStartUnparser(vrd:
VariableRuntimeData, trd: TermRuntim
extends PrimUnparserNoData {
override def context = trd
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector()
@@ -120,7 +120,7 @@ class NewVariableInstanceEndUnparser(vrd:
VariableRuntimeData, trd: TermRuntimeD
extends PrimUnparserNoData {
override def context = trd
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector()
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/FramingUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/FramingUnparsers.scala
index 0db0c34db..3e229ff1f 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/FramingUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/FramingUnparsers.scala
@@ -26,7 +26,7 @@ import org.apache.daffodil.runtime1.processors.unparsers.*
class SkipRegionUnparser(skipInBits: Int, override val context:
TermRuntimeData)
extends AlignmentPrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState) = {
val dos = state.getDataOutputStream
@@ -73,7 +73,7 @@ class AlignmentFillUnparser(alignmentInBits: Int, override
val context: TermRunt
extends AlignmentPrimUnparser
with SuspendableUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def suspendableOperation =
new AlignmentFillUnparserSuspendableOperation(alignmentInBits, context)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HexBinaryLengthUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HexBinaryLengthUnparser.scala
index db1e201ac..b2e645d2e 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HexBinaryLengthUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HexBinaryLengthUnparser.scala
@@ -27,7 +27,7 @@ import org.apache.daffodil.runtime1.processors.unparsers.*
abstract class HexBinaryUnparserBase(override val context: ElementRuntimeData)
extends PrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def getLengthInBits(state: UState): Long
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HiddenGroupCombinatorUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HiddenGroupCombinatorUnparser.scala
index 23bd57841..070e78729 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HiddenGroupCombinatorUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/HiddenGroupCombinatorUnparser.scala
@@ -31,7 +31,7 @@ class HiddenGroupCombinatorUnparser(ctxt:
ModelGroupRuntimeData, bodyUnparser: U
override def childProcessors = Vector(bodyUnparser)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
def unparse(start: UState): Unit = {
try {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/IBM4690PackedDecimalUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/IBM4690PackedDecimalUnparsers.scala
index 9f732208d..222b6e61a 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/IBM4690PackedDecimalUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/IBM4690PackedDecimalUnparsers.scala
@@ -50,7 +50,7 @@ class IBM4690PackedIntegerRuntimeLengthUnparser(
) extends IBM4690PackedIntegerBaseUnparser(e)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
final class IBM4690PackedIntegerDelimitedUnparser(e: ElementRuntimeData)
@@ -62,7 +62,7 @@ final class IBM4690PackedIntegerDelimitedUnparser(e:
ElementRuntimeData)
final class IBM4690PackedIntegerMinimumLengthUnparser(e: ElementRuntimeData)
extends IBM4690PackedIntegerBaseUnparser(e) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
val number = getNumberToPut(s.asInstanceOf[UState])
@@ -101,7 +101,7 @@ class IBM4690PackedDecimalRuntimeLengthUnparser(
) extends IBM4690PackedDecimalBaseUnparser(e, binaryDecimalVirtualPoint,
decimalSigned)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
final class IBM4690PackedDecimalDelimitedUnparser(
@@ -119,7 +119,7 @@ final class IBM4690PackedDecimalMinimumLengthUnparser(
decimalSigned: YesNo
) extends IBM4690PackedDecimalBaseUnparser(e, binaryDecimalVirtualPoint,
decimalSigned) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
val number = getNumberToPut(s.asInstanceOf[UState])
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NadaUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NadaUnparser.scala
index 8a94ab13a..b831beff0 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NadaUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NadaUnparser.scala
@@ -27,7 +27,7 @@ class NadaUnparser(override val context: RuntimeData) extends
PrimUnparser {
override def toString = "Nada"
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(start: UState) = {
Assert.abort("NadaUnparsers are all supposed to optimize out!")
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilEmptyCombinatorUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilEmptyCombinatorUnparsers.scala
index e22c6102b..1d31e39d1 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilEmptyCombinatorUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilEmptyCombinatorUnparsers.scala
@@ -28,7 +28,7 @@ case class SimpleNilOrValueUnparser(
valueUnparser: Unparser
) extends CombinatorUnparser(ctxt) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(nilUnparser, valueUnparser)
@@ -54,7 +54,7 @@ case class ComplexNilOrContentUnparser(
contentUnparser: Unparser
) extends CombinatorUnparser(ctxt) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(nilUnparser, contentUnparser)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilUnparsers.scala
index 862b97af1..b9b2302d9 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/NilUnparsers.scala
@@ -26,7 +26,7 @@ class LiteralValueNilOfSpecifiedLengthUnparser(
isForPattern: Boolean
) extends StringNoTruncateUnparser(erd) {
- override def runtimeDependencies = Vector(slEv)
+ override val runtimeDependencies = Array(slEv)
override protected def contentString(state: UState) = {
slEv.evaluate(state)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedBinaryUnparserTraits.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedBinaryUnparserTraits.scala
index 7c53bc172..62104d326 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedBinaryUnparserTraits.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedBinaryUnparserTraits.scala
@@ -41,7 +41,7 @@ abstract class PackedBinaryBaseUnparser(override val context:
ElementRuntimeData
extends PrimUnparser
with PackedBinaryConversion {
- override def runtimeDependencies: Vector[Evaluatable[AnyRef]] = Vector()
+ override val runtimeDependencies: Array[Evaluatable[AnyRef]] = Array()
protected def getBitLength(s: ParseOrUnparseState): Int
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedDecimalUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedDecimalUnparsers.scala
index 3feb90cb9..f3b5c8c7c 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedDecimalUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/PackedDecimalUnparsers.scala
@@ -55,7 +55,7 @@ class PackedIntegerRuntimeLengthUnparser(
) extends PackedIntegerBaseUnparser(e, packedSignCodes)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
final class PackedIntegerDelimitedUnparser(
@@ -71,7 +71,7 @@ final class PackedIntegerMinimumLengthUnparser(
packedSignCodes: PackedSignCodes
) extends PackedIntegerBaseUnparser(e, packedSignCodes) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
val number = getNumberToPut(s.asInstanceOf[UState])
@@ -121,7 +121,7 @@ class PackedDecimalRuntimeLengthUnparser(
)
with HasRuntimeExplicitLength {
- override def runtimeDependencies = Vector(lengthEv)
+ override val runtimeDependencies = Array(lengthEv)
}
final class PackedDecimalDelimitedUnparser(
@@ -151,7 +151,7 @@ final class PackedDecimalMinimumLengthUnparser(
decimalSigned
) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def getBitLength(s: ParseOrUnparseState): Int = {
val number = getNumberToPut(s.asInstanceOf[UState])
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/RepTypeUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/RepTypeUnparsers.scala
index f0c3d809b..e642088ea 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/RepTypeUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/RepTypeUnparsers.scala
@@ -36,7 +36,7 @@ class RepTypeUnparser(
override def childProcessors = Vector(repTypeUnparser)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
protected def unparse(ustate: UState): Unit = {
Assert.invariant(ustate.currentInfosetNodeMaybe.isDefined)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SeparatedSequenceUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SeparatedSequenceUnparsers.scala
index 111bf8546..7c451f1dd 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SeparatedSequenceUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SeparatedSequenceUnparsers.scala
@@ -125,7 +125,7 @@ class OrderedSeparatedSequenceUnparser(
// have been optimized away
Assert.invariant(childUnparsers.length > 0)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = childUnparsers.toVector
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SequenceChildUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SequenceChildUnparsers.scala
index beecd53a7..b1e7ac96f 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SequenceChildUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SequenceChildUnparsers.scala
@@ -40,7 +40,7 @@ abstract class SequenceChildUnparser(
val trd: TermRuntimeData
) extends CombinatorUnparser(srd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
@@ -67,7 +67,7 @@ abstract class RepeatingChildUnparser(
childUnparser.unparse1(state)
}
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def toString = "RepUnparser(" + childUnparser.toString + ")"
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLength2.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLength2.scala
index 6974e3f3f..549f7a3c0 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLength2.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLength2.scala
@@ -210,7 +210,7 @@ class SimpleTypeRetryUnparser(
) extends PrimUnparser
with SuspendableUnparser {
- override final def runtimeDependencies =
maybeUnparserTargetLengthInBitsEv.toSeq.toVector
+ override final val runtimeDependencies =
maybeUnparserTargetLengthInBitsEv.toList.toArray
final override def childProcessors = Vector(vUnparser)
@@ -225,7 +225,7 @@ class SimpleTypeRetryUnparser(
class CaptureStartOfContentLengthUnparser(override val context:
ElementRuntimeData)
extends PrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState): Unit = {
val dos = state.getDataOutputStream
@@ -243,7 +243,7 @@ class CaptureEndOfContentLengthUnparser(
maybeFixedLengthInBits: MaybeULong
) extends PrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState): Unit = {
val dos = state.getDataOutputStream
@@ -274,7 +274,7 @@ class CaptureEndOfContentLengthUnparser(
class CaptureStartOfValueLengthUnparser(override val context:
ElementRuntimeData)
extends PrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState): Unit = {
val dos = state.getDataOutputStream
@@ -290,7 +290,7 @@ class CaptureStartOfValueLengthUnparser(override val
context: ElementRuntimeData
class CaptureEndOfValueLengthUnparser(override val context: ElementRuntimeData)
extends PrimUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def unparse(state: UState): Unit = {
val dos = state.getDataOutputStream
@@ -479,7 +479,7 @@ class ElementUnusedUnparser(
) extends PrimUnparser
with SuspendableUnparser {
- override def runtimeDependencies = Vector(targetLengthEv)
+ override val runtimeDependencies = Array(targetLengthEv)
override def suspendableOperation =
new ElementUnusedUnparserSuspendableOperation(
@@ -583,7 +583,7 @@ class ChoiceUnusedUnparser(
) extends PrimUnparser
with SuspendableUnparser {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def suspendableOperation = suspendableOp
}
@@ -677,7 +677,7 @@ class OnlyPaddingUnparser(
) extends TextPrimUnparser
with SuspendableUnparser {
- override def runtimeDependencies = Vector(targetLengthEv)
+ override val runtimeDependencies = Array(targetLengthEv)
override def suspendableOperation =
new OnlyPaddingUnparserSuspendableOperation(
@@ -734,7 +734,7 @@ class NilLiteralCharacterUnparser(
) extends TextPrimUnparser
with SuspendableUnparser {
- override def runtimeDependencies = Vector(targetLengthEv)
+ override val runtimeDependencies = Array(targetLengthEv)
override def suspendableOperation = new
NilLiteralCharacterUnparserSuspendableOperation(
context,
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLengthUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLengthUnparsers.scala
index 44af8e887..0f9b8c0ea 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLengthUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SpecifiedLengthUnparsers.scala
@@ -37,7 +37,7 @@ final class SpecifiedLengthExplicitImplicitUnparser(
targetLengthInBitsEv: UnparseTargetLengthInBitsEv
) extends CombinatorUnparser(erd) {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(eUnparser)
@@ -141,7 +141,7 @@ class SpecifiedLengthPrefixedUnparser(
) extends CombinatorUnparser(erd)
with CalculatedPrefixedLengthUnparserMixin {
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = Vector(prefixedLengthUnparser, eUnparser)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StreamSplitterMixin.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StreamSplitterMixin.scala
index 3f3f81cac..51cda47ca 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StreamSplitterMixin.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StreamSplitterMixin.scala
@@ -88,7 +88,7 @@ class RegionSplitUnparser(override val context:
TermRuntimeData)
override def childProcessors: Vector[Processor] = Vector()
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override lazy val suspendableOperation = new
RegionSplitSuspendableOperation(context)
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLengthUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLengthUnparsers.scala
index 223b28df6..49e1b31af 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLengthUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLengthUnparsers.scala
@@ -46,7 +46,7 @@ sealed abstract class StringSpecifiedLengthUnparserBase(val
erd: ElementRuntimeD
class StringNoTruncateUnparser(erd: ElementRuntimeData)
extends StringSpecifiedLengthUnparserBase(erd) {
- override def runtimeDependencies: Vector[Evaluatable[AnyRef]] = Vector()
+ override val runtimeDependencies: Array[Evaluatable[AnyRef]] = Array()
override def unparse(state: UState): Unit = {
val dos = state.getDataOutputStream
@@ -120,7 +120,7 @@ class StringMaybeTruncateBitsUnparser(
charsetEv: CharsetEv
) extends StringSpecifiedLengthUnparserTruncateBase(stringTruncationType, erd)
{
- override def runtimeDependencies = Vector(targetLengthInBitsEv, charsetEv)
+ override val runtimeDependencies = Array(targetLengthInBitsEv, charsetEv)
private def getLengthInBits(str: String, state: UState): (Long, Long) = {
val cs = charsetEv.evaluate(state)
@@ -257,7 +257,7 @@ class StringMaybeTruncateCharactersUnparser(
erd: ElementRuntimeData
) extends StringSpecifiedLengthUnparserTruncateBase(stringTruncationType, erd)
{
- override def runtimeDependencies = Vector(lengthInCharactersEv)
+ override val runtimeDependencies = Array(lengthInCharactersEv)
override def unparse(state: UState): Unit = {
val dos = state.getDataOutputStream
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLiteralForUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLiteralForUnparser.scala
index aeae0f4a2..a3611b512 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLiteralForUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/StringLiteralForUnparser.scala
@@ -33,7 +33,7 @@ class NilStringLiteralForUnparserEv(
) extends Evaluatable[String](tci)
with InfosetCachedEvaluatable[String] {
- override def runtimeDependencies = maybeOutputNewLineEv.toList
+ override val runtimeDependencies = maybeOutputNewLineEv.toList.toArray
override protected def compute(state: ParseOrUnparseState): String = {
val endMarker = "__daffodil_stringLiteralForUnparser_endMarker__"
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SuppressableSeparatorUnparser.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SuppressableSeparatorUnparser.scala
index eeba3c2e6..691002394 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SuppressableSeparatorUnparser.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/SuppressableSeparatorUnparser.scala
@@ -205,7 +205,7 @@ final class SuppressableSeparatorUnparser private (
override def childProcessors: Vector[Processor] = Vector(sepUnparser)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
}
object SuppressableSeparatorUnparser {
diff --git
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/UnseparatedSequenceUnparsers.scala
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/UnseparatedSequenceUnparsers.scala
index d2bab9596..8b4488a88 100644
---
a/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/UnseparatedSequenceUnparsers.scala
+++
b/daffodil-core/src/main/scala/org/apache/daffodil/unparsers/runtime1/UnseparatedSequenceUnparsers.scala
@@ -62,14 +62,14 @@ class OrderedUnseparatedSequenceUnparser(
// have been optimized away
Assert.invariant(childUnparsers.length > 0)
- override def runtimeDependencies = Vector()
+ override val runtimeDependencies = Array()
override def childProcessors = childUnparsers.toVector
/**
* Unparses one iteration of an array/optional element
*/
- protected def unparseOne(
+ inline protected def unparseOne(
unparser: SequenceChildUnparser,
trd: TermRuntimeData,
state: UState