private void AddFileToList(System.String file) { System.Collections.Immutable.IImmutableSet <System.String> res; System.Collections.Immutable.IImmutableSet <System.String> original; while (!myFilePathName.Contains(file)) { do { original = myFilePathName; res = System.Threading.Interlocked.CompareExchange <System.Collections.Immutable.IImmutableSet <System.String> >(ref myFilePathName, myFilePathName.Add(file), original); } while (!myFilePathName.Contains(file)); } }
private static void AddRemoveLoadTestHelper <T>(System.Collections.Immutable.IImmutableSet <T> set, T[] data) { Assert.NotNull(set); Assert.NotNull(data); foreach (T value in data) { var newSet = set.Add(value); Assert.NotSame(set, newSet); set = newSet; } foreach (T value in data) { Assert.True(set.Contains(value)); } foreach (T value in data) { var newSet = set.Remove(value); Assert.NotSame(set, newSet); set = newSet; } }