private void TraverseDefinitionCells(ScopeTree.ScopeTreeVisitor visitor) { visitor(base.Scope); foreach (IRIFDataScope peerDataCell in m_peerDataCells) { visitor(peerDataCell); } }
internal override void Traverse(ScopeTree.ScopeTreeVisitor visitor, IRIFDataScope outerScope, bool visitOuterScope) { bool flag = outerScope == base.Scope; if (visitOuterScope || !flag) { visitor(base.Scope); } if (!flag && m_parentScope != null) { m_parentScope.Traverse(visitor, outerScope, visitOuterScope); } }
internal override void Traverse(ScopeTree.ScopeTreeVisitor visitor, IRIFDataScope outerScope, bool visitOuterScope) { bool flag = HasCell(outerScope); if (visitOuterScope || !flag) { TraverseDefinitionCells(visitor); } if (!flag) { if (m_parentRowScope != null) { m_parentRowScope.Traverse(visitor, outerScope, visitOuterScope); } if (m_parentColumnScope != null) { m_parentColumnScope.Traverse(visitor, outerScope, visitOuterScope); } } }
public abstract void Traverse(ScopeTree.ScopeTreeVisitor visitor, IRIFDataScope outerScope, bool visitOuterScope);