/// <summary> /// Adds data to SubGraph and data /// </summary> /// <param name="item"></param> /// <returns></returns> public virtual ICollection <TItem> Add(IEnumerable <TItem> elements) { var worker = new WalkerWorker <TItem, TEdge> (this.Sink); foreach (var item in elements) { if (item is TEdge) { if (!Source.Contains((TEdge)item)) { Source.Add((TEdge)item); } } else if (!Source.Contains(item)) { Source.Add(item); } worker.Add(item); } CommitAdd(worker); return(worker.Changes); }
/// <summary> /// Adds data to SubGraph and data /// </summary> /// <param name="item"></param> /// <returns></returns> public virtual ICollection <TItem> Add(TItem item) { var worker = new WalkerWorker <TItem, TEdge> (this.Sink); if (item is TEdge) { if (!Source.Contains((TEdge)item)) { Source.Add((TEdge)item); } } else if (!Source.Contains(item)) { Source.Add(item); } worker.Add(item); CommitAdd(worker); return(worker.Changes); }