multifile
index
/usr/lib/python1.5/multifile.py
 

# A class that makes each part of a multipart message "feel" like an
# ordinary file, as long as you use fp.readline().  Allows recursive
# use, for nested multipart messages.  Probably best used together
# with module mimetools.
#
# Suggested use:
#
# real_fp = open(...)
# fp = MultiFile(real_fp)
#
# "read some lines from fp"
# fp.push(separator)
# while 1:
#       "read lines from fp until it returns an empty string" (A)
#       if not fp.next(): break
# fp.pop()
# "read remaining lines from fp until it returns an empty string"
#
# The latter sequence may be used recursively at (A).
# It is also allowed to use multiple push()...pop() sequences.
#
# If seekable is given as 0, the class code will not do the bookeeping
# it normally attempts in order to make seeks relative to the beginning of the
# current file part.  This may be useful when using MultiFile with a non-
# seekable stream object.

   
Modules
                        
string
sys

   
Classes
                        
MultiFile

   
class MultiFile
              
__init__(self, fp, seekable=1)
end_marker(self, str)
is_data(self, line)
next(self)
pop(self)
push(self, sep)
read(self)
readline(self)
readlines(self)
section_divider(self, str)
seek(self, pos, whence=0)
tell(self)

   
Constants
                        
Error = 'multifile.Error'