|
|
@ -24,14 +24,10 @@ using ICSharpCode.SharpDevelop.Dom; |
|
|
|
|
|
|
|
|
|
|
|
namespace ICSharpCode.PackageManagement.EnvDTE |
|
|
|
namespace ICSharpCode.PackageManagement.EnvDTE |
|
|
|
{ |
|
|
|
{ |
|
|
|
public class CodeElementsList<T> : MarshalByRefObject, global::EnvDTE.CodeElements, IList<T> |
|
|
|
public class CodeElementsList<T> : MarshalByRefObject, global::EnvDTE.CodeElements |
|
|
|
where T : global::EnvDTE.CodeElement |
|
|
|
where T : global::EnvDTE.CodeElement |
|
|
|
{ |
|
|
|
{ |
|
|
|
List<T> elements = new List<T>(); |
|
|
|
readonly List<T> elements = new List<T>(); |
|
|
|
|
|
|
|
|
|
|
|
public CodeElementsList() |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int Count { |
|
|
|
public int Count { |
|
|
|
get { return elements.Count; } |
|
|
|
get { return elements.Count; } |
|
|
@ -60,58 +56,16 @@ namespace ICSharpCode.PackageManagement.EnvDTE |
|
|
|
return elements.Single(item => item.Name == name); |
|
|
|
return elements.Single(item => item.Name == name); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public T this[int index] { |
|
|
|
internal void Add(T element) |
|
|
|
get { return elements[index]; } |
|
|
|
|
|
|
|
set { elements[index] = value; } |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool ICollection<T>.IsReadOnly { |
|
|
|
|
|
|
|
get { return false; } |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int IndexOf(T item) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
return elements.IndexOf(item); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void Insert(int index, T item) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
elements.Insert(index, item); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void RemoveAt(int index) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
elements.RemoveAt(index); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void Add(T item) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
elements.Add(item); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void Clear() |
|
|
|
|
|
|
|
{ |
|
|
|
{ |
|
|
|
elements.Clear(); |
|
|
|
elements.Add(element); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public bool Contains(T item) |
|
|
|
internal void AddRange(IEnumerable<T> items) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return elements.Contains(item); |
|
|
|
foreach (T element in items) { |
|
|
|
} |
|
|
|
Add(element); |
|
|
|
|
|
|
|
} |
|
|
|
public void CopyTo(T[] array, int arrayIndex) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
elements.CopyTo(array, arrayIndex); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public bool Remove(T item) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
return elements.Remove(item); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IEnumerator<T> IEnumerable<T>.GetEnumerator() |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
return elements.GetEnumerator(); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|