tfpt review "/shelveset:ExplicitIfaces;REDMOND\tomat" Comment : Generalizes clr_member to support calls to an explicit implementation of an interface method as well as a base class method hidden by a "new slot" method.
1) interfaces
public interface I {
int Foo();
}
public interface J {
int Foo();
}
class C : I, J {
int I.Foo() { return 1; }
int J.Foo() { return 2; }
}
C.new.foo # => undefined method `foo'
C.new.clr_member(I, :foo).call # => 1
C.new.clr_member(J, :foo).call # => 2
2) new slot methods
public class B {
public int Foo() {
return 1;
}
}
public class C : B {
public new int Foo() {
return 2;
}
}
c = C.new
p c.foo # => 2
p c.clr_member(B, :foo).call # => 1
Tomas
ExplicitIfaces.diff
Description: ExplicitIfaces.diff
_______________________________________________ Ironruby-core mailing list [email protected] http://rubyforge.org/mailman/listinfo/ironruby-core
