Merge pull request #3563 from lewurm/interpreter
[mono.git] / mcs / tests / gtest-120.cs
1 using System;
2
3 public interface ISequenced<T>
4 {
5         bool Equals (ISequenced<T> that);
6 }
7
8 public class SequencedHasher <S,W>
9         where S : ISequenced<W>
10 {
11         public bool Equals (S i1, S i2)
12         {
13                 return i1 == null ? i2 == null : i1.Equals (i2);
14         }
15 }
16
17 public class Sequenced<T> : ISequenced<T>
18 {
19         public bool Equals (ISequenced<T> that)
20         {
21                 return false;
22         }
23 }
24
25 class X
26 {
27         public static void Main ()
28         {
29                 Sequenced<int> s = new Sequenced<int> ();
30                 SequencedHasher<Sequenced<int>,int> hasher = new SequencedHasher<Sequenced<int>,int> ();
31                 hasher.Equals (s, s);
32         }
33 }