using System.Collections; using System.Collections.Generic; using System.Linq; namespace Umbraco.Core.Composing { /// /// Provides a base class for builder collections. /// /// The type of the items. public abstract class BuilderCollectionBase : IBuilderCollection { private readonly TItem[] _items; /// /// Initializes a new instance of the with items. /// /// The items. protected BuilderCollectionBase(IEnumerable items) { _items = items.ToArray(); } /// public int Count => _items.Length; /// /// Gets an enumerator. /// public IEnumerator GetEnumerator() { return ((IEnumerable) _items).GetEnumerator(); } /// /// Gets an enumerator. /// IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } }