public CloneableList <TValue> Clone() // shallow copy! { CloneableList <TValue> clone = new CloneableList <TValue>(); foreach (TValue v in this) { clone.Add(v); } return(clone); }
public CloneableList <TValue> GetAllValues() { CloneableList <TValue> toReturn = new CloneableList <TValue>(); foreach (List <TValue> values in this.Values) { foreach (TValue value in values) { toReturn.Add(value); } } return(toReturn); }