1 public class RuleBuilder<T> where T : class {}
2 
3 public interface IDynamicObject {
4     RuleBuilder<T> GetRule<T>() where T : class;
5 }
6 
7 public class RubyMethod : IDynamicObject {
IDynamicObject.GetRule()8     RuleBuilder<T> IDynamicObject.GetRule<T>() /* where T : class */ {
9         return new RuleBuilder<T>();
10     }
11 }
12 
13 public class T {
Main()14 	public static void Main ()
15 	{
16 	}
17 }
18