Git.TreeSourceA Git Tree object.
A Tree object ties on or more Blob.t objects into a directory structure. In addition, a tree object can refer to other tree objects, thus creating a directory hierarchy.
Type of type node.
Type of entry. It describes the name name, the type perm and the reference to the node node.
entry ~name perm node is the entry to node with the name name and the mode perm.
The equal function for entry.
Type of tree is a list of file names and modes along with refs to the associated blob and/or tree objects.
v entries ties all entries into one tree object. It does not remove duplicate but re-order the given list such as:
Tree.digest (Tree.v [ { name= a; _ }; { name= b; _ }] ) ;;
- : hash = 8d14531846b95bfa3564b58ccfb7913a034323b8
Tree.digest (Tree.v [ { name= b; _ }; { name= a; _ }] ) ;;
- : hash = 8d14531846b95bfa3564b58ccfb7913a034323b8The equal function for t.
add entry tree returns a tree containing all elements of tree, plus entry. If entry was already in tree, tree is unchanged.
remove ~name tree returns a tree containing all elements of tree, except one with the name name. If any entries of the given tree don't have the name name, tree is returned unchanged.
hashes tree returns the list of all node references of the given tree.
to_list tree returns the list of all entries of the given tree.
iter f tree applies f in turn to all elements of s.