homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author valhallasw
Recipients valhallasw
Date 2012年02月24日.23:38:05
SpamBayes Score 3.9838812e-09
Marked as misclassified No
Message-id <1330126686.15.0.366051703347.issue14118@psf.upfronthosting.co.za>
In-reply-to
Content
While working on #6784, I've looked at _pickle.c and found it quite... daunting: 6500 lines and 185kB. I have been working on a bit of cleanup, and I'd like some comments on this.
I'm working on adapting
_pickle.c into the following structure:
_pickle.c takes care of the module initialization
_pickle/*.c are helper files for this (global functions/definitions)
_pickle/PicklerObject contains all files that relate to the Pickler
class - initialization, all functions, etc, and
_pickle/PicklerObject/picklers/*.c contains all pickling functions,
split out into groups (corresponding to pickletools.StackObjects)
This should end in a tree where every .c module lists the relevant dependencies (and as such should be compilable on itself).
Currently, I'm at the point where PicklerObject roughly has the structure I want (although not every file is compilable on itself yet). As such, I feel this is the right moment to ask if it would be seen as an useful improvement in trunk, and to see if anyone has suggestions for improvements.
hg repos: https://bitbucket.org/valhallasw/cpython/src/0810ffadffa3/Modules/_pickle/PicklerObject (_pickle_clean branch)
History
Date User Action Args
2012年02月24日 23:38:06valhallaswsetrecipients: + valhallasw
2012年02月24日 23:38:06valhallaswsetmessageid: <1330126686.15.0.366051703347.issue14118@psf.upfronthosting.co.za>
2012年02月24日 23:38:05valhallaswlinkissue14118 messages
2012年02月24日 23:38:05valhallaswcreate

AltStyle によって変換されたページ (->オリジナル) /