home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_2123 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  1.9 KB  |  71 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4.  
  5. class ContainerIO:
  6.     
  7.     def __init__(self, file, offset, length):
  8.         self.fh = file
  9.         self.pos = 0
  10.         self.offset = offset
  11.         self.length = length
  12.         self.fh.seek(offset)
  13.  
  14.     
  15.     def isatty(self):
  16.         return 0
  17.  
  18.     
  19.     def seek(self, offset, mode = 0):
  20.         if mode == 1:
  21.             self.pos = self.pos + offset
  22.         elif mode == 2:
  23.             self.pos = self.length + offset
  24.         else:
  25.             self.pos = offset
  26.         self.pos = max(0, min(self.pos, self.length))
  27.         self.fh.seek(self.offset + self.pos)
  28.  
  29.     
  30.     def tell(self):
  31.         return self.pos
  32.  
  33.     
  34.     def read(self, n = 0):
  35.         if n:
  36.             n = min(n, self.length - self.pos)
  37.         else:
  38.             n = self.length - self.pos
  39.         if not n:
  40.             return ''
  41.         self.pos = self.pos + n
  42.         return self.fh.read(n)
  43.  
  44.     
  45.     def readline(self):
  46.         s = ''
  47.         while None:
  48.             c = self.read(1)
  49.             if not c:
  50.                 break
  51.             
  52.             s = s + c
  53.             if c == '\n':
  54.                 break
  55.                 continue
  56.             continue
  57.             return s
  58.  
  59.     
  60.     def readlines(self):
  61.         l = []
  62.         while None:
  63.             s = self.readline()
  64.             if not s:
  65.                 break
  66.             
  67.             continue
  68.             return l
  69.  
  70.  
  71.