Github user stevedlawrence commented on a diff in the pull request:

    https://github.com/apache/incubator-daffodil/pull/12#discussion_r154103501
  
    --- Diff: 
daffodil-runtime1/src/main/scala/edu/illinois/ncsa/daffodil/processors/EvByteOrder.scala
 ---
    @@ -60,22 +59,27 @@ class Ok private () extends Serializable {
     }
     object Ok extends Ok()
     
    -class CheckByteAndBitOrderEv(t: TermRuntimeData, bitOrder: BitOrder, 
maybeByteOrder: Maybe[ByteOrderEv])
    +class CheckByteAndBitOrderEv(t: TermRuntimeData, bitOrder: BitOrder)
       extends Evaluatable[Ok](t)
       with InfosetCachedEvaluatable[Ok] { // can't use unit here, not <: AnyRef
     
    -  override lazy val runtimeDependencies = maybeByteOrder.toList
    +  override lazy val runtimeDependencies = Nil
     
    -  final protected def compute(state: ParseOrUnparseState): Ok = {
    -    if (maybeByteOrder.isEmpty) return Ok
    -    val byteOrderEv = maybeByteOrder.get
    -    val byteOrder = byteOrderEv.evaluate(state)
    -    bitOrder match {
    -      case BitOrder.MostSignificantBitFirst => // ok
    -      case BitOrder.LeastSignificantBitFirst =>
    -        if (byteOrder =:= ByteOrder.BigEndian) {
    -          t.schemaDefinitionError("Bit order 'leastSignificantBitFirst' 
requires byte order 'littleEndian', but byte order was '%s'.", byteOrder)
    +  override final protected def compute(state: ParseOrUnparseState): Ok = {
    +    t match {
    +      case erd: ElementRuntimeData => {
    +        if (erd.maybeByteOrderEv.isEmpty) return Ok
    --- End diff --
    
    Should avoid using return. I guess this was here originally, but since your 
modifying this code, it would be good to fix.


---

Reply via email to