CSharp examples for System.Collections.Generic:List
Return the enumerable as a List of T, copying if required.
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information. using System.Linq; using System.Diagnostics.Contracts; using System.Collections.ObjectModel; using System.Collections.Generic; using System;/*from w w w.ja va 2 s .com*/ public class Main{ /// <summary> /// Return the enumerable as a List of T, copying if required. Optimized for common case where it is an List of T /// or a ListWrapperCollection of T. Avoid mutating the return value. /// </summary> public static List<T> AsList<T>(this IEnumerable<T> enumerable) { Contract.Assert(enumerable != null); List<T> list = enumerable as List<T>; if (list != null) { return list; } ListWrapperCollection<T> listWrapper = enumerable as ListWrapperCollection<T>; if (listWrapper != null) { return listWrapper.ItemsList; } return new List<T>(enumerable); } }