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”);
eng.Execute(@"
class YieldTest
def test
yield ‘From IronRuby’
end
end
");
object test = eng.Runtime.Globals.GetVariable(“YieldTest”);
dynamic t = eng.Operations.CreateInstance(test);
t.test((del)(s => Console.WriteLine(s)));

See

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

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

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

Tomas