They won’t probably work exactly the same way as IronRuby mangling
though. So if you need this for CLR interop you should use
IronRuby::Clr::Name class.
Tomas
From: [email protected]
[mailto:[email protected]] On Behalf Of Orion E.
Sent: Monday, January 18, 2010 12:41 PM
To: [email protected]
Subject: Re: [Ironruby-core] Accessing classes defined in IronRuby.dll
from within IronRuby (IronRuby 1.0RC1)
Thanks for that Tomas.
I ended up copy/pasting the String#camelize and #underscore methods from
rails as they were only a couple of lines long. This is probably less
error prone than importing types from the IronRuby dll in the long run
anyway 
Cheers.
On Mon, Jan 18, 2010 at 7:35 PM, Tomas M.
<[email protected]mailto:[email protected]>
wrote:
BTW, if you really needed to get to IronRuby.dll’s types you can use
this workaround:
Utils = System::Type.get_type(‘IronRuby.Runtime.RubyUtils, IronRuby’).to_class
=> IronRuby::Runtime::RubyUtils
Utils.try_unmangle_name(“foo_bar”)
=> ‘FooBar’
Tomas
From:
[email protected]mailto:[email protected]
[mailto:[email protected]mailto:[email protected]]
On Behalf Of Tomas M.
Sent: Sunday, January 17, 2010 10:24 PM
To: [email protected]mailto:[email protected]
Subject: Re: [Ironruby-core] Accessing classes defined in IronRuby.dll
from within IronRuby (IronRuby 1.0RC1)
IronRuby is a module already defined in standard library. It gives you
access to a bunch of useful APIs, including name mangling:
IronRuby.singleton_methods
=> [“configuration”, “globals”, “load”, “loaded_assemblies”,
“loaded_scripts”, “require”, ‘create_runtime’, ‘create_engine’,
‘create_ruby_setup’, ‘get_engine’, ‘require_file’,
‘get_execution_context’]
IronRuby.constants
=> [“Clr”, “Print”]
IronRuby::Clr.constants
=> [“BigInteger”, “FlagEnumeration”, “Float”, “Integer”,
“MultiDimensionalArray”, “String”, “Name”, “Scope”]
IronRuby::Clr::Name.singleton_methods(false)
=> [“clr_to_ruby”, “mangle”, “ruby_to_clr”, “unmangle”]
include IronRuby::Clr
Name.mangle(“FooBar”)
=> “foo_bar”
Name.unmangle(“my_foo”)
=> “MyFoo”
Re loading IronRuby.dll - the problem is that IronRuby is also a
namespace in IronRuby.dll so there is a name conflict we don’t probably
handle the best we could. Loading IronRuby.dll shouldn’t be a common
scenario though. The best place for IronRuby specific functionality is
in the IronRuby module. If you’re missing some let us know.
Tomas
From:
[email protected]mailto:[email protected]
[mailto:[email protected]mailto:[email protected]]
On Behalf Of Orion E.
Sent: Sunday, January 17, 2010 8:29 PM
To: [email protected]mailto:[email protected]
Subject: Re: [Ironruby-core] Accessing classes defined in IronRuby.dll
from within IronRuby (IronRuby 1.0RC1)
I am doing load_assembly ‘IronRuby’, and it didn’t work (the example is
copy/pasted pretty much verbatim). Not sure if that means your version
of IR is different to mine, or what?
Cheers,
On Mon, Jan 18, 2010 at 3:56 PM, Jimmy S.
<[email protected]mailto:[email protected]>
wrote:
load_assembly ‘IronRuby’ will do the trick.