cinap_lenrekadd hg and python4bb9e2215 years agoHistory
34 lines · 1.7 KB · TeX
RawDownload
\section{\module{pickletools} --- Tools for pickle developers.} \declaremodule{standard}{pickletools}\modulesynopsis{Contains extensive comments about the pickle protocols and pickle-machine opcodes, as well as some useful functions.} \versionadded{2.3} This module contains various constants relating to the intimatedetails of the \refmodule{pickle} module, some lengthy comments aboutthe implementation, and a few useful functions for analyzing pickleddata.  The contents of this module are useful for Python coredevelopers who are working on the \module{pickle} and \module{cPickle}implementations; ordinary users of the \module{pickle} module probablywon't find the \module{pickletools} module relevant. \begin{funcdesc}{dis}{pickle\optional{, out=None, memo=None, indentlevel=4}}Outputs a symbolic disassembly of the pickle to the file-like object\var{out}, defaulting to \code{sys.stdout}.  \var{pickle} can be astring or a file-like object.  \var{memo} can be a Python dictionarythat will be used as the pickle's memo; it can be used to performdisassemblies across multiple pickles created by the same pickler.Successive levels, indicated by \code{MARK} opcodes in the stream, areindented by \var{indentlevel} spaces.\end{funcdesc} \begin{funcdesc}{genops}{pickle}Provides an iterator over all of the opcodes in a pickle, returning asequence of \code{(\var{opcode}, \var{arg}, \var{pos})} triples.\var{opcode} is an instance of an \class{OpcodeInfo} class; \var{arg} is the decoded value, as a Python object, of the opcode's argument; \var{pos} is the position at which this opcode is located.\var{pickle} can be a string or a file-like object.\end{funcdesc}