No, that's the right class. Apparently, it's been changed a bit since ~late October when we branched off the 2.0 source.
On Tue, Apr 14, 2009 at 11:58 AM, Alex News <[email protected]> wrote: > Well I am either suffering from severe user error, or it is not in the > suggested locations. The best I could find was > Microsoft.Scripting.Actions.Dynamic. It implements IDynamicObject. > It does not have the aforementioned TryGetMember function to override, > but does have a GetMember function to override. > > > On Tue, Apr 14, 2009 at 2:31 PM, Dino Viehland <[email protected]> > wrote: > > I think it might be just “Dynamic” in 2.0. > > > > > > > > From: [email protected] > > [mailto:[email protected]] On Behalf Of Curt > Hagenlocher > > Sent: Tuesday, April 14, 2009 11:05 AM > > To: Discussion of IronPython > > Subject: Re: [IronPython] **kwargs and __getattr__ handling in csharp > > functions and classes? > > > > > > > > It should be Microsoft.Scripting.DynamicObject in 2.0. > > > > On Tue, Apr 14, 2009 at 11:02 AM, Alex News <[email protected]> wrote: > > > > Current IronPython = 2.01? I have Microsoft.Scripting.Core > > referenced, and can't find DynamicObject. There is an > > Microsoft.Scripting.Actions.IDynamicObject, and a > > Microsoft.Scripting.Runtime.IOldDynamicObject. I'm sure I'm missing > > something very basic. > > > > We are using .net 2.0.50727 SP1 > > > > > > > > On Tue, Apr 14, 2009 at 12:12 PM, Curt Hagenlocher <[email protected] > > > > wrote: > >> In current versions of IronPython, DynamicObject is in > >> Microsoft.Scripting.Core as Microsoft.Scripting.DynamicObject. In .NET > >> 4.0 > >> System.Core, the same class will be called System.Dynamic.DynamicObject. > >> (I > >> just noticed this naming discrepancy today, and I think we should > probably > >> move it to at least Microsoft.Dynamic for the 2.6 release.) > >> > >> On Tue, Apr 14, 2009 at 8:31 AM, Alex News <[email protected]> wrote: > >>> > >>> Much appreciated, I will give that a try. In what namespace is > >>> DynamicObject declared? (I assume the required assemblies are already > >>> referenced if I'm pulling in IronPython). > >>> > >>> Thanks again, > >>> Alex > >>> > >>> > >>> On Tue, Apr 14, 2009 at 11:16 AM, Dino Viehland <[email protected]> > >>> wrote: > >>> > For kwargs you need to decorate the function w/ a ParamDictionary > >>> > attribute such as: > >>> > > >>> > public void __init__(CodeContext/*!*/ context, object o, > >>> > [ParamDictionary] IAttributesCollection kwArgs) > >>> > > >>> > For __getattr__ IronPython will recognize a special name > >>> > "GetBoundMember" method such as: > >>> > > >>> > using System; > >>> > using System.Runtime.CompilerServices; > >>> > > >>> > public class Foo { > >>> > [SpecialName] > >>> > public object GetBoundMember (string name) { > >>> > return name; > >>> > } > >>> > } > >>> > > >>> > > >>> > You can also do "GetCustomMember" which is like __getattribute__. > But > >>> > for this one what you really want to do is inherit directly from the > >>> > DynamicObject class and override TryGetMember. Then it'll work not > >>> > only w/ > >>> > Python but w/ other DLR based languages as well (e.g. C#, > >>> > VB.NET<http://vb.net/> > , > >>> > IronRuby, > >>> > etc...). > >>> > > >>> > > >>> >> -----Original Message----- > >>> >> From: [email protected] [mailto:users- > >>> >> [email protected]] On Behalf Of Alex News > >>> >> Sent: Tuesday, April 14, 2009 7:32 AM > >>> >> To: [email protected] > >>> >> Subject: [IronPython] **kwargs and __getattr__ handling in csharp > >>> >> functions and classes? > >>> >> > >>> >> I would like to write some functions and classes in csharp that > >>> >> interact nicely python. I would like to write a function that can > >>> >> respond to keyword arguments, and a class that can dynamically > resolve > >>> >> __getattr__. > >>> >> > >>> >> For the function I tried creating a function that takes a > >>> >> IronPython.Runtime.PythonDictionary, but did not work. For a class > I > >>> >> tried creating a function that have a method __getattr__, but that > >>> >> failed too. > >>> >> > >>> >> I see there is a IronPython.Runtime.PythonFunction and some other > >>> >> interesting classes in the Runtime, but it is not apparent exactly > how > >>> >> I could use them. > >>> >> > >>> >> I can, luckily, fudge much of what I want to do by creating small > >>> >> python classes and functions in python to proxy the values to > >>> >> underlying csharp classes. However thing would be cleaner if I > could > >>> >> do it directly in csharp. > >>> >> > >>> >> Thanks in advance for any suggestions. > >>> >> > >>> >> Alex > >>> >> _______________________________________________ > >>> >> Users mailing list > >>> >> [email protected] > >>> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > >>> > > >>> > _______________________________________________ > >>> > Users mailing list > >>> > [email protected] > >>> > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > >>> > > >>> _______________________________________________ > >>> Users mailing list > >>> [email protected] > >>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > >> > >> > >> _______________________________________________ > >> Users mailing list > >> [email protected] > >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > >> > >> > > _______________________________________________ > > Users mailing list > > [email protected] > > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > > > > > > > > _______________________________________________ > > Users mailing list > > [email protected] > > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > > > > > _______________________________________________ > Users mailing list > [email protected] > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >
_______________________________________________ Users mailing list [email protected] http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
