aboutsummaryrefslogtreecommitdiffstats
path: root/tree_walker.go
Commit message (Collapse)AuthorAgeFilesLines
* TreeWalker optimizationMáximo Cuadros2016-08-301-3/+5
|
* storage: Add object type hint parameter to ObjectStorage.Get. (#69)Santiago M. Mola2016-08-291-5/+10
| | | | | | | Some storage backends can optimize object lookup if they get the object type that is expected. So we the signature of the Get method is now Get(Hash, ObjectType). Added generic tests for storage backends.
* ForEach review and Commit.Tree err returnMáximo Cuadros2016-08-221-23/+0
|
* Remote.Fetch multiple RefSpec supportMáximo Cuadros2016-08-221-0/+23
|
* core: *Iter.ForEach methodMáximo Cuadros2016-08-151-0/+2
|
* documentationMáximo Cuadros2016-05-191-6/+6
|
* Added Object interface for Commit, Tree, Blob and TagJoshua Sjoding2016-03-081-11/+5
| | | | | | | | | | | | | * New Object interface is distinct from core.Object * New Object interface is used in places where returned object could be of any type * Object is implemented by Commit, Tree, Blob, File and Tag * Added Repository.Object function for retrieving objects of any type * Tag.Object now returns Object instead of core.Object * Tag target hash is now publicly accessible * Renamed Tag.Type field to Tag.TargetType, making it distinct from Tag.Type function * Fixed infinite recursive loop in TagIter.Close * TreeWalker.Next now returns Object instead of core.Object * Removed some duplicate test setup code
* New iteration behavior via FileIter and TreeWalkerJoshua Sjoding2016-02-171-0/+110
Instead of returning a channel of files, Tree.Files() now returns a FileIter with these qualities: * It returns files in the original order of the repository (relying on a * new Tree.OrderedNames property) * It can return errors encountered when retrieving files and trees from * underlying storage * It can be Closed without having to drain the entire channel * It defers the heavy lifting to a new TreeWalker type * Its behavior is a little more consistent with other Iter types * It's a little less prone to memory leaks This update includes a new TreeWalker type that will iterate through all of the entries of a tree and its descendant subtrees. It does the dirty work that Tree.walkEntries() used to do, but with a public API. A new TreeIter type is also included that just walks through subtrees. This could be useful for performing a directory search while ignoring files/blobs altogether.