b.w.InterDirStateTree(InterTree) : class documentation

Part of bzrlib.workingtree_4 View In Hierarchy

Fast path optimiser for changes_from with dirstate trees.

This is used only when both trees are in the dirstate working file, and the source is any parent within the dirstate, and the destination is the current working tree of the same dirstate.

Method __init__ Construct a default InterObject instance. Please use 'get'.
Static Method make_source_parent_tree Change the source tree into a parent of the target.
Class Method make_source_parent_tree_python_dirstate Undocumented
Class Method make_source_parent_tree_compiled_dirstate Undocumented
Method iter_changes Return the changes from source to target.
Static Method is_compatible Undocumented
Class Method _test_mutable_trees_to_test_trees Undocumented

Inherited from InterTree:

Method compare Return the changes from source to target.
Method file_content_matches Check if two files are the same in the source and target trees.
Method _changes_from_entries Generate a iter_changes tuple between source_entry and target_entry.
Method _get_entry Get an inventory entry from a tree, with missing entries as None.
Method _handle_precise_ids Fill out a partial iter_changes to be consistent.

Inherited from InterObject (via InterTree):

Class Method get Retrieve a Inter worker object for these objects.
Method lock_read Take out a logical read lock.
Method lock_write Take out a logical write lock.
Class Method register_optimiser Register an InterObject optimiser.
Method unlock Release the locks on source and target.
Class Method unregister_optimiser Unregister an InterObject optimiser.
Method _double_lock Take out two locks, rolling back the first if the second throws.
def __init__(self, source, target):
Construct a default InterObject instance. Please use 'get'.

Only subclasses of InterObject should call InterObject.__init__ - clients should call InterFOO.get where FOO is the base type of the objects they are interacting between. I.e. InterVersionedFile or InterRepository. get() is a convenience class method which will create an optimised InterFOO if possible.

@staticmethod
def make_source_parent_tree(source, target):
Change the source tree into a parent of the target.
@classmethod
def make_source_parent_tree_python_dirstate(klass, test_case, source, target):
Undocumented
@classmethod
def make_source_parent_tree_compiled_dirstate(klass, test_case, source, target):
Undocumented
@classmethod
def _test_mutable_trees_to_test_trees(klass, test_case, source, target):
Undocumented
def iter_changes(self, include_unchanged=False, specific_files=None, pb=None, extra_trees=, require_versioned=True, want_unversioned=False):
Return the changes from source to target.
Parametersspecific_filesAn optional list of file paths to restrict the comparison to. When mapping filenames to ids, all matches in all trees (including optional extra_trees) are used, and all children of matched directories are included.
include_unchangedAn optional boolean requesting the inclusion of unchanged entries in the result.
extra_treesAn optional list of additional trees to use when mapping the contents of specific_files (paths) to file_ids.
require_versionedIf True, all files in specific_files must be versioned in one of source, target, extra_trees or PathsNotVersionedError is raised.
want_unversionedShould unversioned files be returned in the output. An unversioned file is defined as one with (False, False) for the versioned pair.
ReturnsAn iterator that yields tuples. See InterTree.iter_changes for details.
@staticmethod
def is_compatible(source, target):
Undocumented
API Documentation for Bazaar, generated by pydoctor at 2022-06-16 00:25:16.