Github user mbeckerle commented on a diff in the pull request:
https://github.com/apache/incubator-daffodil/pull/5#discussion_r150685971
--- Diff:
daffodil-core/src/main/scala/edu/illinois/ncsa/daffodil/dsom/ModelGroup.scala
---
@@ -115,118 +170,47 @@ abstract class ModelGroup(xmlArg: Node, parentArg:
SchemaComponent, position: In
def modelGroupRuntimeData: ModelGroupRuntimeData
- final lazy val gRefNonDefault: Option[ChainPropProvider] = groupRef.map
{ _.nonDefaultFormatChain }
- final lazy val gRefDefault: Option[ChainPropProvider] = groupRef.map {
_.defaultFormatChain }
-
- final def nonDefaultPropertySources = LV('nonDefaultPropertySources) {
- val seq = (gRefNonDefault.toSeq ++
Seq(this.nonDefaultFormatChain)).distinct
- checkNonOverlap(seq)
- seq
- }.value
-
- final def defaultPropertySources = LV('defaultPropertySources) {
- val seq = (gRefDefault.toSeq ++ Seq(this.defaultFormatChain)).distinct
- seq
- }.value
+ protected final lazy val prettyBaseName = xml.label
- protected final lazy val prettyBaseName = xmlArg.label
+ def xmlChildren: Seq[Node]
- protected def xmlChildren: Seq[Node]
-
- private def goodXmlChildren = LV('goodXMLChildren) { xmlChildren.flatMap
{ removeNonInteresting(_) } }.value
- private lazy val positions = List.range(1, goodXmlChildren.length + 1)
// range is exclusive on 2nd arg. So +1.
- private lazy val pairs = goodXmlChildren zip positions
-
- final lazy val sequenceChildren = groupMembers.collect { case s:
Sequence => s }
- final lazy val choiceChildren = groupMembers.collect { case s: Choice =>
s }
+ final lazy val sequenceChildren = groupMembers.collect { case s:
SequenceBase => s }
+ final lazy val choiceChildren = groupMembers.collect { case s:
ChoiceBase => s }
final lazy val groupRefChildren = groupMembers.collect { case s:
GroupRef => s }
- final def group = this
-
- final lazy val groupMembers = {
- pairs.flatMap {
- case (n, i) =>
- termFactory(n, this, i)
- }
- }
+ def group = this
final override lazy val termChildren = groupMembers
--- End diff --
Not just a renaming. termChildren generalizes for Elements and ModelGroups.
---