[Ironruby-core] getting the runtime type

Ryan Riley ryan.riley at panesofglass.org
Sun Nov 29 14:39:52 EST 2009

Is the current best practice for this to create a custom class for any Ruby
types that need CLR integration, or should we use
I suppose it depends on your use case, but I would think the latter is
probably the best option. Thoughts?

Ryan Riley

Email: ryan.riley at panesofglass.org
LinkedIn: http://www.linkedin.com/in/ryanriley
Blog: http://wizardsofsmart.net/
Website: http://panesofglass.org/

On Sun, Nov 29, 2009 at 8:00 AM, Jimmy Schementi <
Jimmy.Schementi at microsoft.com> wrote:

> Every Ruby class is not mapped to a unique CLR type (they are all
> IronRuby.Builtins.RubyObject unless you subclass a CLR type or implement and
> interface). So doing the IronPython ClrMetaClass equivalent would require a
> speciic feature in IronRuby to give more control of the underlying CLR type
> -- IronPython has already added this in the form of "__clrtype__".
> This work is not planned for 1.0, but definitely leaves a usability hole in
> our CLR integration. The work-around is to create a empty C# class, and then
> subclass it from Ruby -- there will be a unique CLR class generated for this
> Ruby class. Things like CLR attributes need to go on the C# class.
> ~Jimmy
> Sent from my phone
> On Nov 29, 2009, at 4:07 AM, "Ivan Porto Carrero" <ivan at flanders.co.nz>
> wrote:
> Hi
> I'd like to get the runtime type of a ruby class
> The IronPython guys can do something like this (python substituted for
> ruby)
> require 'clr'
> class Person < Struct.new(:id, :name, :age)
> end
> they can then do clr.ClrType(Person).FullName
> Something equivalent to that doesn't exist yet for ironruby does it?
> When I do Person.to_clr_type it returns nil
> and other objects give me their base types
> Person.GetType => IronRuby.Builtins.RubyObject
> I'm actually trying to get the ironpython ClrMetaClass from Harry Pierson
> written in ironruby.
> ---
> Met vriendelijke groeten - Best regards - Salutations
> Ivan Porto Carrero
> Blog: <http://flanders.co.nz>http://flanders.co.nz
> Google Wave: <portocarrero.ivan at googlewave.com>
> portocarrero.ivan at googlewave.com
> Twitter: <http://twitter.com/casualjim>http://twitter.com/casualjim
> Author of IronRuby in Action ( <http://manning.com/carrero>
> http://manning.com/carrero)
>  _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20091129/2d04c1b6/attachment-0001.html>

More information about the Ironruby-core mailing list