Hi,
On the Names page in IronRuby.net:
http://www.ironruby.net/Documentation/.NET/Names I think there is a
mistake.
Bullet #4 says you must implement virtual methods with their rubyesque
name. I tried using the CLR name and it seems to work great as well.
FYI,
Shay.
Shay F.
http://www.ironshay.com
Follow me: http://twitter.com/ironshay
However, it is right when overriding CLR static methods.
Shay.
Shay F.
http://www.ironshay.com
Follow me: http://twitter.com/ironshay
Can you give an example? I’m not sure what do you mean by “overriding”
static methods.
Tomas
Sure.
C#:
public class Something
{
public static Create()
{
Console.WriteLine(“Creating Something”);
return new Something();
}
public Something()
{
}
}
IR:
class SomeSomething < Something
def self.create
puts “Creating SomeSomething!”
super
end
end
SomeSomething.create
prints "Creating SomeSomething!
Creating Something"
If the IR method was named self.Create (with a capital C), the next will
happen:
SomeSomething.create
prints “Creating Something”
Thanks,
Shay.
Shay F.
http://www.ironshay.com
Follow me: http://twitter.com/ironshay
I see what you mean. I wouldn’t call this “overriding” because these two
methods are completely unrelated. So it’s like you defined two Ruby
methods Create and create.
On the other hand, when a virtual method is overridden the override is
bound to the virtual one.
Tomas