public void ReindexQuery(Func <object, object, ulong, object, ulong> func, object data) { if (this.root == null) { return; } foreach (var item in leaves) { item.Value.Update(this); } var staticIndex = this.staticIndex; Node staticRoot = staticIndex != null ? staticIndex.root : null; MarkContext context = new MarkContext(this, staticRoot, func, data); this.root.MarkSubtree(this, staticRoot, func); // ref context); if (staticIndex != null && staticRoot == null) { CollideStatic(staticIndex, func, data); } IncrementStamp(); }
public void ReindexQuery(Func<object, object, ulong, object, ulong> func, object data) { if (this.root == null) return; foreach (var item in leaves) item.Value.Update(this); var staticIndex = this.staticIndex; Node staticRoot = staticIndex != null ? staticIndex.root : null; MarkContext context = new MarkContext(this, staticRoot, func, data); this.root.MarkSubtree(this, staticRoot, func);// ref context); if (staticIndex != null && staticRoot == null) CollideStatic(staticIndex, func, data); IncrementStamp(); }