[Ironruby-core] Is it possible to yield C# code?

Tomas Matousek Tomas.Matousek at microsoft.com
Tue Nov 30 12:26:44 EST 2010

It is not possible today, it might be possible in future :)

BTW, I would suggest to use Action<string> instead of defining your own delegate type.


-----Original Message-----
From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Jonas Elfström
Sent: Monday, November 29, 2010 2:52 PM
To: ironruby-core at rubyforge.org
Subject: [Ironruby-core] Is it possible to yield C# code?

I'm sorry if this is the wrong list. Please direct me if so.

This is not really something I'm losing sleep over but still I'm a fair bit curious to know if it's possible to yield code that's not Ruby from IronRuby. Is it?

The following C# gives me a wrong number of arguments (1 for 0) exception.

delegate void del(string s);

var rt = Ruby.CreateRuntime();
var eng = rt.GetEngine("rb");
            class YieldTest
              def test
                yield 'From IronRuby'
object test = eng.Runtime.Globals.GetVariable("YieldTest");
dynamic t = eng.Operations.CreateInstance(test);
t.test((del)(s => Console.WriteLine(s)));

See http://stackoverflow.com/questions/4189955/calling-ironruby-from-c-with-a-delegate

If this is not possible, is it then a kind of integration that is planned for future releases of IronRuby?

Jonas Elfström
Ironruby-core mailing list
Ironruby-core at rubyforge.org

More information about the Ironruby-core mailing list