/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/transform.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2008-09-20 17:41:09 UTC
  • mfrom: (3363.12.9 paths2ids)
  • Revision ID: pqm@pqm.ubuntu.com-20080920174109-rrml3htu12o56j1h
Support path2ids better for PreviewTree

Show diffs side-by-side

added added

removed removed

Lines of Context:
1525
1525
    def __iter__(self):
1526
1526
        return iter(self.all_file_ids())
1527
1527
 
1528
 
    def paths2ids(self, specific_files, trees=None, require_versioned=False):
1529
 
        """See Tree.paths2ids"""
1530
 
        to_find = set(specific_files)
1531
 
        result = set()
1532
 
        for (file_id, paths, changed, versioned, parent, name, kind,
1533
 
             executable) in self._transform.iter_changes():
1534
 
            if paths[1] in to_find:
1535
 
                result.add(file_id)
1536
 
                to_find.remove(paths[1])
1537
 
        result.update(self._transform._tree.paths2ids(to_find,
1538
 
                      trees=[], require_versioned=require_versioned))
1539
 
        return result
 
1528
    def has_id(self, file_id):
 
1529
        if file_id in self._transform._r_new_id:
 
1530
            return True
 
1531
        elif file_id in self._transform._removed_id:
 
1532
            return False
 
1533
        else:
 
1534
            return self._transform._tree.has_id(file_id)
1540
1535
 
1541
1536
    def _path2trans_id(self, path):
1542
1537
        segments = splitpath(path)
1567
1562
        children.update(self._by_parent.get(trans_id, []))
1568
1563
        return children
1569
1564
 
 
1565
    def iter_children(self, file_id):
 
1566
        trans_id = self._transform.trans_id_file_id(file_id)
 
1567
        for child_trans_id in self._all_children(trans_id):
 
1568
            yield self._transform.final_file_id(child_trans_id)
 
1569
 
1570
1570
    def _make_inv_entries(self, ordered_entries, specific_file_ids):
1571
1571
        for trans_id, parent_file_id in ordered_entries:
1572
1572
            file_id = self._transform.final_file_id(trans_id)