コード例 #1
0
        // TODO : Needs additional pattern detection
        // CustomStructEnumerator does not implement IDisposable
        // No try-finally-Dispose is generated.
        //public void ForEachOnGenericCustomStructEnumerator<T>(CustomStructEnumerator<T> e)
        //{
        //	foreach (T item in e) {
        //		Console.WriteLine(item);
        //	}
        //}

        public void ForEachOnCustomClassEnumeratorWithIDisposable(CustomClassEnumeratorWithIDisposable e)
        {
            foreach (object item in e)
            {
                Console.WriteLine(item);
            }
        }
コード例 #2
0
 public void ForEachOnGenericCustomClassEnumeratorWithIDisposable <T>(CustomClassEnumeratorWithIDisposable <T> e)
 {
     foreach (T item in e)
     {
         Console.WriteLine(item);
     }
 }
コード例 #3
0
 public static T NoForeachCallWithSideEffect <T>(CustomClassEnumeratorWithIDisposable <T> items)
 {
     Console.WriteLine("NoForeachCallWithSideEffect:");
     using (CustomClassEnumeratorWithIDisposable <T> enumerator = items.GetEnumerator()) {
         while (enumerator.MoveNext())
         {
             T result = enumerator.Current;
         }
         return(CallWithSideEffect <T>());
     }
 }