list = new ArrayList ();
}
- public virtual int Count {
+ public int Count {
get { return FullList.Count; }
}
get { return true; }
}
- public virtual bool IsSynchronized {
+ public bool IsSynchronized {
get { return false; }
}
- public Match this [int i] {
+ public virtual Match this [int i] {
get {
if (i < 0 || !TryToGet (i))
throw new ArgumentOutOfRangeException ("i");
}
}
- public virtual object SyncRoot {
+ public object SyncRoot {
get { return list; }
}
- public virtual void CopyTo (Array array, int index)
+ public void CopyTo (Array array, int index)
{
FullList.CopyTo (array, index);
}
- public virtual IEnumerator GetEnumerator ()
+ public IEnumerator GetEnumerator ()
{
// If !current.Success, the list is fully populated. So, just use it.
return current.Success ? new Enumerator (this) : list.GetEnumerator ();