[Ironruby-core] RubyModule CreateAnonymousModule - NotImplementedException

Peter Bacon Darwin bacondarwin at googlemail.com
Sat Sep 27 12:08:55 EDT 2008

The documentation says that the block version of the code creates the
anonymous module and then passes this new module to the block via a dynamic
call to Module#module_eval.
The following code is a quick hack (that may work!!) but really we should be
hitting a DynamicSite to invoke the module_eval.

        // Ruby constructor:
        public static object CreateAnonymousModule([NotNull]BlockParam/*!*/
block, RubyClass/*!*/ self) {
            RubyModule module =
            return RubyUtils.EvaluateInModule(module, block);

Disclaimer: I haven't tried this at all.

-----Original Message-----
From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Ben Hall
Sent: Saturday,27 September 27, 2008 13:54
To: ironruby-core at rubyforge.org
Subject: [Ironruby-core] RubyModule CreateAnonymousModule -


Just been playing around with IronRuby, however I am hitting an issue
with RubyModule.CreateAnonymousModule() - basically, it hasn't been
implemented yet :)

// Ruby constructor:
public static RubyModule/*!*/
CreateAnonymousModule([NotNull]BlockParam/*!*/ block, RubyClass/*!*/
self) {
  // TODO:
  throw new NotImplementedException();

You have implemented another method:
public static RubyModule/*!*/ CreateAnonymousModule(RubyClass/*!*/ self) {
   return self.ExecutionContext.DefineModule(SymbolId.Empty);

But I don't know how to to implement with relation to the block.  Is
it just not supported yet?

If you could provide me with any help that would be great, its really
blocking me at the moment.

Ironruby-core mailing list
Ironruby-core at rubyforge.org

More information about the Ironruby-core mailing list