mbeckerle commented on a change in pull request #259: Incremental progress on 
schema compilation space/speed issue.
URL: https://github.com/apache/incubator-daffodil/pull/259#discussion_r301236902
 
 

 ##########
 File path: 
daffodil-core/src/main/scala/org/apache/daffodil/dsom/DFDLEscapeScheme.scala
 ##########
 @@ -84,7 +84,8 @@ final class DFDLEscapeScheme(node: Node, decl: 
AnnotatedSchemaComponent, defES:
 
   final def escapeCharacterEv = LV('escapeCharacterEv) {
     val qn = this.qNameForProperty("escapeCharacter")
-    val expr = ExpressionCompilers.String.compileProperty(qn, 
NodeInfo.NonEmptyString, escapeCharacterRaw, this, dpathCompileInfo)
+    val expr = ExpressionCompilers.String.compileProperty(qn, 
NodeInfo.NonEmptyString, escapeCharacterRaw, this,
+      defES.pointOfUse.dpathCompileInfo)
 
 Review comment:
   Add doc. This use of the back pointer pointOfUse is *not* a problem to be 
remedied, or at least is not a first-order concern for improving the schema 
compiler. The expressions that are the escapeCharacter and 
escapeEscapeCharacter, like all expressions, have to have the DPathCompileInfo 
of the term where they apply, because they can contain relative paths, and 
those relative paths affect compilation of the expression. So an escape scheme 
object is effectively part of the state of the term which has that escape 
scheme. 
   
   We could share more here if we instead just made the compileInfo  of the 
expressions passed in, rather than copying the whole object. 

----------------------------------------------------------------
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:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to