[IronPython] List<Python Class>
Paul Turbett
sls at iinet.net.au
Sat May 3 07:50:58 CEST 2008
No, not really. I recently looked into serializing IPY class instances
from C# in a hosting environment. I got it to work using some custom
serialization code. Look into ISerializationSurrogate - I made a class
that derives from it to make a custom Python object serializer. The
python engine still needs the python class type to be define and
"compiled" to be able to re-build the objects. It's a bit curly and
ugly, and I'm still not sure what gotchas are lying in wait :)
L8r, Paul
Matthew Barnard wrote:
> Ahhh interesting. It doesn't look good for remoting then ;)
>
>
> On Fri, May 2, 2008 at 10:17 PM, Curt Hagenlocher
> <curt at hagenlocher.org <mailto:curt at hagenlocher.org>> wrote:
>
> Well in the example I gave, the type of class foo would genrally
> be something like IronPython.NewTypes.System.Object_1$2. There's
> not going to be any "native" CLR code to which you can pass a
> List<IronPython.NewTypes.System.Object_1$2>, and if you're passing
> the data to other Python code, you may as well do it as a Python
> list or tuple. It's the "dynamic" thing to do :).
>
> List<IronPython.NewTypes.System.Object_1$2> isn't even type-safe
> for Python classes because IronPython maintains a cache of
> generated types and will reuse a type it has previously generated
> for any new class you define that's compatible with a
> previously-defined class.
>
>
> On Fri, May 2, 2008 at 9:58 PM, Matthew Barnard
> <m.stephen.barnard at gmail.com <mailto:m.stephen.barnard at gmail.com>>
> wrote:
>
> Thanks Curt, in C# I use generics (list & dict) containing
> class instances quite often. Is there a caveat to the dynamic
> typing that I'm missing?
>
>
>
> On Fri, May 2, 2008 at 7:52 PM, Curt Hagenlocher
> <curt at hagenlocher.org <mailto:curt at hagenlocher.org>> wrote:
>
> This will get you a CLR type directly from your class object:
>
> class foo(object):
> pass
> theType = clr.GetClrType(foo)
>
> What use do you have for creating a generic with the
> resulting (dynamically-generated) type?
>
> On Fri, May 2, 2008 at 6:30 PM, Matthew Barnard
> <m.stephen.barnard at gmail.com
> <mailto:m.stephen.barnard at gmail.com>> wrote:
>
> Is the following the only way to create a generic
> containing a python class?
>
>
> from System.Collections.Generic import List
> from System import Type
>
> class Foo:
> >>class stuff<<
>
> l = List[Type.GetType(Foo())]()
>
>
> I assume this is the nature of dynamic typing, but is
> there a way to get the type from the classobj, and not
> an instance?
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> <mailto:Users at lists.ironpython.com>
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com <mailto:Users at lists.ironpython.com>
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
>
>
>
> --
> ___________________________
> Matthew Barnard
> 602 540 0652
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com <mailto:Users at lists.ironpython.com>
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com <mailto:Users at lists.ironpython.com>
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
>
>
>
> --
> ___________________________
> Matthew Barnard
> 602 540 0652
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20080503/d742ae82/attachment.html>
More information about the Ironpython-users
mailing list