def readstring(self, lines): lines = Atom.FileLineIterator(lines.split(os.linesep)) try: while True: line = lines.next() atm = MmpFile._AtomHolder(self) if atm.fromMmp(line): self.lines.append(atm) line = lines.next() if atm.mmpBonds(line): x = MmpFile._Line() x.fromMmp(line) self.lines.append(x) else: lines.backup() else: x = MmpFile._Line() x.fromMmp(line) self.lines.append(x) except StopIteration: pass