2 using System
.Collections
.Generic
;
4 public class TestClass
<T1
> : SequencedBase
<T1
>, IIndexedSorted
<T1
>
8 TestClass
<T1
> tt
= null;
12 public void Foo
<U
> (IEnumerable
<U
> items
)
16 public class Nested
: ICloneable
18 public object Clone ()
25 public abstract class SequencedBase
<T2
> : DirectedCollectionBase
<T2
>, IDirectedCollectionValue
<T2
>
30 public abstract class DirectedCollectionBase
<T3
> : CollectionBase
<T3
>, IDirectedCollectionValue
<T3
>
32 IEnumerator
<T3
> IEnumerable
<T3
>.GetEnumerator ()
37 System
.Collections
.IEnumerator System
.Collections
.IEnumerable
.GetEnumerator ()
43 public abstract class CollectionBase
<T4
> : CollectionValueBase
<T4
>
47 public abstract class CollectionValueBase
<T5
> : EnumerableBase
<T5
>, ICollectionValue
<T5
>
51 public abstract class EnumerableBase
<T6
> : IEnumerable
<T6
>
53 IEnumerator
<T6
> IEnumerable
<T6
>.GetEnumerator ()
58 System
.Collections
.IEnumerator System
.Collections
.IEnumerable
.GetEnumerator ()
64 public interface IDirectedCollectionValue
<T7
> : ICollectionValue
<T7
>, IDirectedEnumerable
<T7
>
68 public interface ICollectionValue
<T8
> : IEnumerable
<T8
>
72 public interface IIndexedSorted
<T9
> : ISorted
<T9
>, IIndexed
<T9
>
76 public interface ISorted
<T10
> : ISequenced
<T10
>
80 public interface ISequenced
<T11
> : IDirectedCollectionValue
<T11
>
84 public interface IDirectedEnumerable
<T12
> : IEnumerable
<T12
>
88 public interface IIndexed
<T13
> : ISequenced
<T13
>
94 public static void Main ()
96 var c
= new TestClass
<string> ();