/// <summary> /// Allews descendant implementation to continue traversing memory by indexing values ar accesing their fields. /// </summary> /// <param name="parentIndex">Index of the parent.</param> /// <param name="values">The values.</param> /// <param name="isMust">if set to <c>true</c> is must.</param> public override void ProcessValues(MemoryIndex parentIndex, IEnumerable <Value> values, bool isMust) { HashSet <ValueLocation> targetSet = mayLocationProcess; if (isMust && values.Count() == 1) { targetSet = mustLocationProcess; } LastValueVisitor = new ReadIndexVisitor(parentIndex, indexSegment, targetSet); LastValueVisitor.VisitValues(values); }
/// <summary> /// Allews descendant implementation to continue traversing memory by indexing values ar accesing their fields. /// </summary> /// <param name="parentIndex">Index of the parent.</param> /// <param name="values">The values.</param> /// <param name="isMust">if set to <c>true</c> is must.</param> public override void ProcessValues(MemoryIndex parentIndex, IEnumerable <Value> values, bool isMust) { ReadIndexVisitor visitor = new ReadIndexVisitor(parentIndex, indexSegment, collector.mustLocationProcess); visitor.VisitValues(values); }