mbeckerle commented on a change in pull request #316: Assortment of changes to
improve performance
URL: https://github.com/apache/incubator-daffodil/pull/316#discussion_r370626372
##########
File path:
daffodil-runtime1/src/main/scala/org/apache/daffodil/infoset/InfosetImpl.scala
##########
@@ -903,7 +903,7 @@ sealed trait DIElement
*/
final def maybeIsNilled: MaybeBoolean = {
if (!_isNilledSet) MaybeBoolean.Nope
- MaybeBoolean(_isNilled)
+ else MaybeBoolean(_isNilled)
Review comment:
So this distinction of MaybeBoolean.Nope vs. true/false I can see it being
needed for implementing unparser default values, or possibly even parser
default values.
It may have been put in, in anticipation of those features.
Also the expression language currently has no way to provide a "nil" value
for a nillable element. This is likely a shortcoming.
Were that to be added, we would need exactly this mechanism to detect
completion of unparser expression evaluation.
I think we should leave this functionality in place for now. Albeit, it was
broken.
----------------------------------------------------------------
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