stevedlawrence commented on a change in pull request #316: Assortment of 
changes to improve performance
URL: https://github.com/apache/incubator-daffodil/pull/316#discussion_r370627620
 
 

 ##########
 File path: 
daffodil-runtime1/src/main/scala/org/apache/daffodil/processors/Evaluatable.scala
 ##########
 @@ -285,7 +285,17 @@ abstract class Evaluatable[+T <: AnyRef](protected val 
ci: DPathCompileInfo, qNa
   /**
    * Preferred for use in the runtime.
    */
-  @inline final def maybeConstant = constValue_.asInstanceOf[Maybe[T]]
+  @inline final def maybeConstant = {
 
 Review comment:
   Are you sure? ``maybeConst_`` is defined as a ``Maybe[AnyRef]``. Although we 
know it will always be a ``Maybe[T]``, it's a var and could theoretcially be 
changed to something other than a ``Maybe[T]``. Seems like the 
``unsafeFromMaybeAnyRef`` is more like what we need, which is somewhat similar 
to the new code.
   
   Re: DataValuePrimitiveNullable, Evaluatables can result in things that are 
not DataValues, so I'm not sure we could do that.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to