Jan-Jaap van der Geer píše v St 10. 02. 2010 v 02:34 -0800:
Jan Hudec <bulb ucw cz> wrote:This looks like another use-case for extension methods in a day.I'd like to see them as well.
It might be useful, in some cases. It should be noted that extension methods can only access class' public members.
namespace Moo { bool less_or_equal(IComparable this lhs, IComparable rhs) { return !rhs.less_than(lhs); } }The C# syntax is actually a little bit different: You need to swap the type and "this": namespace Moo { bool less_or_equal(this IComparable lhs, IComparable rhs) { return !rhs.less_than(lhs); } } I feel like we should follow C# regarding that. In C# the method must be static and must be placed in a static class as well.
I disagree with that. The C# way feels like an ugly hack to me.
How about something like this:
public class extension Gtk.Entry {
public void some_additional_stuff () {
// do something
}
}
or similarly:
public interface extension IComparable {
public bool less_or_equal (IComparable rhs) {
return !rhs.less_than (this);
}
}
Attachment:
signature.asc
Description: Toto je digitálně podepsaná část zprávy