IInvoke.cs 608 B

1234567891011121314151617181920212223242526272829303132333435
  1. using System;
  2. namespace ET
  3. {
  4. public interface IInvoke
  5. {
  6. Type Type { get; }
  7. }
  8. public abstract class AInvokeHandler<A>: IInvoke where A: struct
  9. {
  10. public Type Type
  11. {
  12. get
  13. {
  14. return typeof (A);
  15. }
  16. }
  17. public abstract void Handle(A a);
  18. }
  19. public abstract class AInvokeHandler<A, T>: IInvoke where A: struct
  20. {
  21. public Type Type
  22. {
  23. get
  24. {
  25. return typeof (A);
  26. }
  27. }
  28. public abstract T Handle(A a);
  29. }
  30. }