Skip to content

Commit

Permalink
Fix Deprecated Early Initializers
Browse files Browse the repository at this point in the history
- use companion objects and pass the values into classes instead

DAFFODIL-2152
  • Loading branch information
olabusayoT committed Feb 7, 2025
1 parent 4e705e2 commit 923338d
Show file tree
Hide file tree
Showing 24 changed files with 284 additions and 319 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2686,26 +2686,48 @@ case class FNTwoArgsExprInferedArgType(
resultType: NodeInfo.Kind,
arg1Type: NodeInfo.Kind,
arg2Type: NodeInfo.Kind,
constructor: List[(CompiledDPath, NodeInfo.Kind)] => RecipeOp
) extends {
private val constructor_ : List[CompiledDPath] => RecipeOp =
(subExprs: List[CompiledDPath]) => {
Assert.invariant(subExprs.length == args.length)
val types = args.map(_.targetType)
val typedSubExprs = subExprs.zip(types)
constructor(typedSubExprs)
}
}
with FNTwoArgsExprBase(
constructor: List[(CompiledDPath, NodeInfo.Kind)] => RecipeOp,
constructorForTypedSubExprs: List[CompiledDPath] => RecipeOp
) extends FNTwoArgsExprBase(
nameAsParsed,
fnQName,
args,
resultType,
arg1Type,
arg2Type,
constructor_
constructorForTypedSubExprs
)

object FNTwoArgsExprInferedArgType {
def apply(
nameAsParsed: String,
fnQName: RefQName,
args: List[Expression],
resultType: NodeInfo.Kind,
arg1Type: NodeInfo.Kind,
arg2Type: NodeInfo.Kind,
constructor: List[(CompiledDPath, NodeInfo.Kind)] => RecipeOp
): FNTwoArgsExprInferedArgType = {
val constructorForTypedSubExprs: List[CompiledDPath] => RecipeOp =
(subExprs: List[CompiledDPath]) => {
Assert.invariant(subExprs.length == args.length)
val types = args.map(_.targetType)
val typedSubExprs = subExprs.zip(types)
constructor(typedSubExprs)

Check warning on line 2716 in daffodil-core/src/main/scala/org/apache/daffodil/core/dpath/Expression.scala

View check run for this annotation

Codecov / codecov/patch

daffodil-core/src/main/scala/org/apache/daffodil/core/dpath/Expression.scala#L2714-L2716

Added lines #L2714 - L2716 were not covered by tests
}
FNTwoArgsExprInferedArgType(

Check warning on line 2718 in daffodil-core/src/main/scala/org/apache/daffodil/core/dpath/Expression.scala

View check run for this annotation

Codecov / codecov/patch

daffodil-core/src/main/scala/org/apache/daffodil/core/dpath/Expression.scala#L2718

Added line #L2718 was not covered by tests
nameAsParsed,
fnQName,
args,
resultType,
arg1Type,
arg2Type,
constructor,
constructorForTypedSubExprs
)
}
}

sealed abstract class LengthExprBase(
nameAsParsed: String,
fnQName: RefQName,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,26 +23,22 @@ import org.apache.daffodil.lib.schema.annotation.props.gen.BitOrder
* Base 4 aka Quarternary
*/

object BitsCharsetBase4LSBF
extends {
override val name = "X-DFDL-BASE4-LSBF"
override val bitWidthOfACodeUnit = 2
override val decodeString = "0123"
override val replacementCharCode = 0x0
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetBase4LSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-BASE4-LSBF"
override lazy val bitWidthOfACodeUnit = 2
override lazy val decodeString = "0123"
override lazy val replacementCharCode = 0x0
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}

final class BitsCharsetBase4LSBFDefinition extends BitsCharsetDefinition(BitsCharsetBase4LSBF)

object BitsCharsetBase4MSBF
extends {
override val name = "X-DFDL-BASE4-MSBF"
override val bitWidthOfACodeUnit = 2
override val decodeString = "0123"
override val replacementCharCode = 0x0
override val requiredBitOrder = BitOrder.MostSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetBase4MSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-BASE4-MSBF"
override lazy val bitWidthOfACodeUnit = 2
override lazy val decodeString = "0123"
override lazy val replacementCharCode = 0x0
override lazy val requiredBitOrder = BitOrder.MostSignificantBitFirst
}

final class BitsCharsetBase4MSBFDefinition extends BitsCharsetDefinition(BitsCharsetBase4MSBF)
Original file line number Diff line number Diff line change
Expand Up @@ -23,30 +23,26 @@ import org.apache.daffodil.lib.schema.annotation.props.gen.BitOrder
* X-DFDL-BITS-LSBF occupies only 1 bit with each
* code unit.
*/
object BitsCharsetBinaryLSBF
extends {
override val name = "X-DFDL-BITS-LSBF"
override val bitWidthOfACodeUnit = 1
override val decodeString = "01"
override val replacementCharCode = 0x0
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetBinaryLSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-BITS-LSBF"
override lazy val bitWidthOfACodeUnit = 1
override lazy val decodeString = "01"
override lazy val replacementCharCode = 0x0
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}

final class BitsCharsetBinaryLSBFDefinition extends BitsCharsetDefinition(BitsCharsetBinaryLSBF)

/**
* X-DFDL-BITS-MSBF occupies only 1 bit with each
* code unit.
*/
object BitsCharsetBinaryMSBF
extends {
override val name = "X-DFDL-BITS-MSBF"
override val bitWidthOfACodeUnit = 1
override val decodeString = "01"
override val replacementCharCode = 0x0
override val requiredBitOrder = BitOrder.MostSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetBinaryMSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-BITS-MSBF"
override lazy val bitWidthOfACodeUnit = 1
override lazy val decodeString = "01"
override lazy val replacementCharCode = 0x0
override lazy val requiredBitOrder = BitOrder.MostSignificantBitFirst
}

final class BitsCharsetBinaryMSBFDefinition extends BitsCharsetDefinition(BitsCharsetBinaryMSBF)
Original file line number Diff line number Diff line change
Expand Up @@ -23,30 +23,26 @@ import org.apache.daffodil.lib.schema.annotation.props.gen.BitOrder
* X-DFDL-HEX-LSBF occupies only 4 bits with each
* code unit.
*/
object BitsCharsetHexLSBF
extends {
override val name = "X-DFDL-HEX-LSBF"
override val bitWidthOfACodeUnit = 4
override val decodeString = """0123456789ABCDEF"""
override val replacementCharCode = 0x00
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetHexLSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-HEX-LSBF"
override lazy val bitWidthOfACodeUnit = 4
override lazy val decodeString = """0123456789ABCDEF"""
override lazy val replacementCharCode = 0x00
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}

final class BitsCharsetHexLSBFDefinition extends BitsCharsetDefinition(BitsCharsetHexLSBF)

/**
* X-DFDL-HEX-MSBF occupies only 4 bits with each
* code unit.
*/
object BitsCharsetHexMSBF
extends {
override val name = "X-DFDL-HEX-MSBF"
override val bitWidthOfACodeUnit = 4
override val decodeString = """0123456789ABCDEF"""
override val replacementCharCode = 0x00
override val requiredBitOrder = BitOrder.MostSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetHexMSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-HEX-MSBF"
override lazy val bitWidthOfACodeUnit = 4
override lazy val decodeString = """0123456789ABCDEF"""
override lazy val replacementCharCode = 0x00
override lazy val requiredBitOrder = BitOrder.MostSignificantBitFirst
}

final class BitsCharsetHexMSBFDefinition extends BitsCharsetDefinition(BitsCharsetHexMSBF)
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,9 @@ package org.apache.daffodil.io.processors.charset
import org.apache.daffodil.io.FormatInfo
import org.apache.daffodil.io.InputSourceDataInputStream

object BitsCharsetIBM037
extends {
override val name = "IBM037"
}
with BitsCharsetJava {
object BitsCharsetIBM037 extends BitsCharsetJava {

lazy val name = "IBM037"

val decodeStringTable =
"\u0000\u0001\u0002\u0003\u009C\u0009\u0086\u007F\u0097\u008D\u008E\u000B\u000C\u000D\u000E\u000F" +
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,9 @@ package org.apache.daffodil.io.processors.charset
import org.apache.daffodil.io.FormatInfo
import org.apache.daffodil.io.InputSourceDataInputStream

object BitsCharsetISO88591
extends {
override val name = "ISO-8859-1"
}
with BitsCharsetJava {
object BitsCharsetISO88591 extends BitsCharsetJava {

override lazy val name = "ISO-8859-1"

override def newDecoder() = new BitsCharsetDecoderISO88591()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,13 @@ import org.apache.daffodil.lib.schema.annotation.props.gen.BitOrder
* X-DFDL-ISO-88591-8-BIT-PACKED-LSB-FIRST occupies only 8 bits with each
* code unit.
*/
object BitsCharsetISO885918BitPackedLSBF
extends {
override val name = "X-DFDL-ISO-88591-8-BIT-PACKED-LSB-FIRST"
override val bitWidthOfACodeUnit = 8
override val decodeString = (0 to 255).map { _.toChar }.mkString
override val replacementCharCode = 0x3f
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetISO885918BitPackedLSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-ISO-88591-8-BIT-PACKED-LSB-FIRST"
override lazy val bitWidthOfACodeUnit = 8
override lazy val decodeString = (0 to 255).map { _.toChar }.mkString
override lazy val replacementCharCode = 0x3f
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}

final class BitsCharsetISO885918BitPackedLSBFDefinition
extends BitsCharsetDefinition(BitsCharsetISO885918BitPackedLSBF)
Expand All @@ -40,15 +38,13 @@ final class BitsCharsetISO885918BitPackedLSBFDefinition
* X-DFDL-ISO-88591-8-BIT-PACKED-MSB-FIRST occupies only 8 bits with each
* code unit.
*/
object BitsCharsetISO885918BitPackedMSBF
extends {
override val name = "X-DFDL-ISO-88591-8-BIT-PACKED-MSB-FIRST"
override val bitWidthOfACodeUnit = 8
override val decodeString = (0 to 255).map { _.toChar }.mkString
override val replacementCharCode = 0x3f
override val requiredBitOrder = BitOrder.MostSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetISO885918BitPackedMSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-ISO-88591-8-BIT-PACKED-MSB-FIRST"
override lazy val bitWidthOfACodeUnit = 8
override lazy val decodeString = (0 to 255).map { _.toChar }.mkString
override lazy val replacementCharCode = 0x3f
override lazy val requiredBitOrder = BitOrder.MostSignificantBitFirst
}

final class BitsCharsetISO885918BitPackedMSBFDefinition
extends BitsCharsetDefinition(BitsCharsetISO885918BitPackedMSBF)
Original file line number Diff line number Diff line change
Expand Up @@ -23,30 +23,26 @@ import org.apache.daffodil.lib.schema.annotation.props.gen.BitOrder
* X-DFDL-OCTAL-LSBF occupies only 3 bits with each
* code unit.
*/
object BitsCharsetOctalLSBF
extends {
override val name = "X-DFDL-OCTAL-LSBF"
override val bitWidthOfACodeUnit = 3
override val decodeString = "01234567"
override val replacementCharCode = 0x0
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetOctalLSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-OCTAL-LSBF"
override lazy val bitWidthOfACodeUnit = 3
override lazy val decodeString = "01234567"
override lazy val replacementCharCode = 0x0
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}

final class BitsCharsetOctalLSBFDefinition extends BitsCharsetDefinition(BitsCharsetOctalLSBF)

/**
* X-DFDL-OCTAL-MSBF occupies only 3 bits with each
* code unit.
*/
object BitsCharsetOctalMSBF
extends {
override val name = "X-DFDL-OCTAL-MSBF"
override val bitWidthOfACodeUnit = 3
override val decodeString = "01234567"
override val replacementCharCode = 0x0
override val requiredBitOrder = BitOrder.MostSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetOctalMSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-OCTAL-MSBF"
override lazy val bitWidthOfACodeUnit = 3
override lazy val decodeString = "01234567"
override lazy val replacementCharCode = 0x0
override lazy val requiredBitOrder = BitOrder.MostSignificantBitFirst
}

final class BitsCharsetOctalMSBFDefinition extends BitsCharsetDefinition(BitsCharsetOctalMSBF)
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,8 @@ package org.apache.daffodil.io.processors.charset
import org.apache.daffodil.io.FormatInfo
import org.apache.daffodil.io.InputSourceDataInputStream

object BitsCharsetUSASCII
extends {
override val name = "US-ASCII"
}
with BitsCharsetJava {
object BitsCharsetUSASCII extends BitsCharsetJava {
override lazy val name = "US-ASCII"

override def newDecoder() = new BitsCharsetDecoderUSASCII()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,13 @@ import org.apache.daffodil.lib.util.MaybeInt
* X-DFDL-5-BIT-PACKED-LSBF occupies only 5 bits with each
* code unit.
*/
object BitsCharset5BitPackedLSBF
extends {
override val name = "X-DFDL-5-BIT-PACKED-LSBF"
override val bitWidthOfACodeUnit = 5
override val decodeString = """01234567ABCDEFGHJKLMNPQRSTUVWXYZ"""
override val replacementCharCode = 0x1d
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize {
object BitsCharset5BitPackedLSBF extends BitsCharsetNonByteSize {

override lazy val name = "X-DFDL-5-BIT-PACKED-LSBF"
override lazy val bitWidthOfACodeUnit = 5
override lazy val decodeString = """01234567ABCDEFGHJKLMNPQRSTUVWXYZ"""
override lazy val replacementCharCode = 0x1d
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst

override def charToCode(char: Char) = {
if (char == 'I') MaybeInt(1)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,14 @@ import org.apache.daffodil.lib.schema.annotation.props.gen.BitOrder
* X-DFDL-US-ASCII-6-BIT-PACKED occupies only 6 bits with each
* code unit.
*/
object BitsCharsetUSASCII6BitPackedLSBF
extends {
override val name = "X-DFDL-US-ASCII-6-BIT-PACKED-LSB-FIRST"
override val bitWidthOfACodeUnit = 6
override val decodeString =
"""@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ !"#$%&'()*+,-./0123456789:;<=>?"""
override val replacementCharCode = 0x1f
override val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetUSASCII6BitPackedLSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-US-ASCII-6-BIT-PACKED-LSB-FIRST"
override lazy val bitWidthOfACodeUnit = 6
override lazy val decodeString =
"""@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ !"#$%&'()*+,-./0123456789:;<=>?"""
override lazy val replacementCharCode = 0x1f
override lazy val requiredBitOrder = BitOrder.LeastSignificantBitFirst
}

final class BitsCharsetUSASCII6BitPackedLSBFDefinition
extends BitsCharsetDefinition(BitsCharsetUSASCII6BitPackedLSBF)
Expand All @@ -43,16 +41,14 @@ final class BitsCharsetUSASCII6BitPackedDefinition
Some("X-DFDL-US-ASCII-6-BIT-PACKED")
)

object BitsCharsetUSASCII6BitPackedMSBF
extends {
override val name = "X-DFDL-US-ASCII-6-BIT-PACKED-MSB-FIRST"
override val bitWidthOfACodeUnit = 6
override val decodeString =
"""@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ !"#$%&'()*+,-./0123456789:;<=>?"""
override val replacementCharCode = 0x1f
override val requiredBitOrder = BitOrder.MostSignificantBitFirst
}
with BitsCharsetNonByteSize
object BitsCharsetUSASCII6BitPackedMSBF extends BitsCharsetNonByteSize {
override lazy val name = "X-DFDL-US-ASCII-6-BIT-PACKED-MSB-FIRST"
override lazy val bitWidthOfACodeUnit = 6
override lazy val decodeString =
"""@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ !"#$%&'()*+,-./0123456789:;<=>?"""
override lazy val replacementCharCode = 0x1f
override lazy val requiredBitOrder = BitOrder.MostSignificantBitFirst
}

final class BitsCharsetUSASCII6BitPackedMSBFDefinition
extends BitsCharsetDefinition(BitsCharsetUSASCII6BitPackedMSBF)
Loading

0 comments on commit 923338d

Please sign in to comment.