ScriptScope from IDictionary + function definitions = NotImplementedException

Hi all!

I’m running ruby script from C# in my project. It’s a very useful
feature to
initialize ScriptScope with an IDictionary, (it’s much faster to fill a
dictionary, than making scope.SetVariable calls).

The problem is, that if I define functions in my script, then a
NotImplementedException is thrown.

A simple example is here: No description - C# Paste
It fails at engine.Execute(script, scope). However, when I create my
scope
with no dictionary, or just pass no scope to Execute, everything works
fine.

Is it an issue to be fixed in the future?
I need to set, and change many context variables for my scripts at
running
time, so I have to work out this problem somehow.
I’m using IronRuby 1.1.

Thanks:
Anton

I’ve just added support for string dictionaries. It’s committed to the
github repo.

Tomas

From: [email protected]
[mailto:[email protected]] On Behalf Of Anton F.
Sent: Tuesday, November 16, 2010 10:05 AM
To: [email protected]
Subject: [Ironruby-core] ScriptScope from IDictionary + function
definitions = NotImplementedException

Hi all!

I’m running ruby script from C# in my project. It’s a very useful
feature to initialize ScriptScope with an IDictionary, (it’s much faster
to fill a dictionary, than making scope.SetVariable calls).

The problem is, that if I define functions in my script, then a
NotImplementedException is thrown.

A simple example is here: No description - C# Paste
It fails at engine.Execute(script, scope). However, when I create my
scope with no dictionary, or just pass no scope to Execute, everything
works fine.

Is it an issue to be fixed in the future?
I need to set, and change many context variables for my scripts at
running time, so I have to work out this problem somehow.
I’m using IronRuby 1.1.

Thanks:
Anton

Very nice, Thanks!

There is another error related to scopes, here is a code to reproduce
it:
http://paste.dprogramming.com/dpw8o44y
It throws NullReferenceException for me. When I executed the commented
lines
(using no scope), no exception was thrown.

Anton

2010/11/21 Tomas M. [email protected]