home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / lib / python-support / private / pysupport.pyc (.txt) < prev   
Encoding:
Python Compiled Bytecode  |  2009-04-20  |  2.4 KB  |  73 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. import os
  5. py_supported = [
  6.     'python2.5',
  7.     'python2.6']
  8. py_installed = _[1]
  9. py_supported_short = [ a.replace('python', '') for a in py_supported ]
  10. py_oldversions = [
  11.     'python2.1',
  12.     'python2.2',
  13.     'python2.3',
  14.     'python2.4']
  15.  
  16. def version_cmp(ver1, ver2):
  17.     v1 = [ int(i) for i in ver1.split('.') ]
  18.     v2 = [ int(i) for i in ver2.split('.') ]
  19.     return cmp(v1, v2)
  20.  
  21.  
  22. class version_list:
  23.     
  24.     def __init__(self, version_info):
  25.         self.verlist = []
  26.         dummylist = []
  27.         for item in version_info.rstrip('\n').split(','):
  28.             v = [ i.strip() for i in item.split('-') ]
  29.             if len(v) > 1:
  30.                 if v[1]:
  31.                     dummylist.append(v[1])
  32.                 else:
  33.                     v[1] = py_supported_short[-1]
  34.                     dummylist.append('100')
  35.                 for ver in py_supported_short:
  36.                     
  37.                     try:
  38.                         if version_cmp(ver, v[0]) >= 0 and version_cmp(ver, v[1]) <= 0:
  39.                             self.verlist.append(ver)
  40.                     continue
  41.                     except ValueError:
  42.                         continue
  43.                     
  44.  
  45.                 
  46.             None<EXCEPTION MATCH>ValueError
  47.             dummylist.append(v[0])
  48.             if v[0] in py_supported_short:
  49.                 self.verlist.append(v[0])
  50.                 continue
  51.         
  52.         self.verlist.sort(version_cmp)
  53.         dummylist.sort(version_cmp)
  54.         self.min = dummylist[0]
  55.         if self.min == '0':
  56.             self.min = None
  57.         
  58.         self.max = dummylist[-1]
  59.         if self.max == '100':
  60.             self.max = None
  61.         
  62.         self.pylist = [ 'python' + i for i in self.verlist ]
  63.  
  64.     
  65.     def __iter__(self):
  66.         return iter(self.pylist)
  67.  
  68.     
  69.     def __contains__(self, item):
  70.         return item in self.pylist
  71.  
  72.  
  73.