| 334 | return self.code |
| 335 | |
| 336 | def get_source(self, fullname=None): |
| 337 | fullname = self._fix_name(fullname) |
| 338 | if self.source is None: |
| 339 | mod_type = self.etc[2] |
| 340 | if mod_type==imp.PY_SOURCE: |
| 341 | self._reopen() |
| 342 | try: |
| 343 | self.source = self.file.read() |
| 344 | finally: |
| 345 | self.file.close() |
| 346 | elif mod_type==imp.PY_COMPILED: |
| 347 | if os.path.exists(self.filename[:-1]): |
| 348 | with open(self.filename[:-1], 'r') as f: |
| 349 | self.source = f.read() |
| 350 | elif mod_type==imp.PKG_DIRECTORY: |
| 351 | self.source = self._get_delegate().get_source() |
| 352 | return self.source |
| 353 | |
| 354 | def _get_delegate(self): |
| 355 | finder = ImpImporter(self.filename) |