Maybe we could add a BuiltinFunctionBuild which provided this functionality.  
Then as long as the creator holds onto the BFB they can continue to mutate the 
function w/o allowing anyone else to.

From: users-boun...@lists.ironpython.com 
[mailto:users-boun...@lists.ironpython.com] On Behalf Of Curt Hagenlocher
Sent: Monday, March 23, 2009 3:43 PM
To: Discussion of IronPython
Subject: Re: [IronPython] Creating Dynamic Assemblies from IronPython 2.6

I seem to recall that in Seo's original code, MakeOrAdd was used to build up 
the overloads over time as user code asked for additional method signatures for 
the same method name.  This could presumably be simulated by replacing the 
method group in Python with a new method group that contained all the original 
infos plus the new one.
On Mon, Mar 23, 2009 at 11:11 AM, Dino Viehland 
<di...@microsoft.com<mailto:di...@microsoft.com>> wrote:
Do you actually need MakeOrAdd or would the factory that takes multiple method 
infos be good enough?

I'm just reluctant to open up the ability to modify any built-in function.

> -----Original Message-----
> From: 
> users-boun...@lists.ironpython.com<mailto:users-boun...@lists.ironpython.com> 
> [mailto:users-<mailto:users->
> boun...@lists.ironpython.com<mailto:boun...@lists.ironpython.com>] On Behalf 
> Of Jeff Hardy
> Sent: Saturday, March 21, 2009 1:17 PM
> To: Discussion of IronPython
> Subject: Re: [IronPython] Creating Dynamic Assemblies from IronPython
> 2.6
>
> Hi Dino,
> I'm updating Seo's old ctypes.py to work with 2.6, so unfortuantely
> it's a little more complex than just one method. I could probably use
> a delegate that takes an object[], but BuiltinFunction contains that
> code already, and it is a lot more optimized than I could manage. Plus
> it's less code for me to write :).
>
> - Jeff
>
> On Sat, Mar 21, 2009 at 11:45 AM, Dino Viehland 
> <di...@microsoft.com<mailto:di...@microsoft.com>>
> wrote:
> > If you only have 1 method and don't need overload resolution I'd
> suggest making a delegate using System.Delegate.CreateDelegate.
> Otherwise this could be made public.
> >
> _______________________________________________
> Users mailing list
> Users@lists.ironpython.com<mailto:Users@lists.ironpython.com>
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
_______________________________________________
Users mailing list
Users@lists.ironpython.com<mailto:Users@lists.ironpython.com>
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

_______________________________________________
Users mailing list
Users@lists.ironpython.com
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to