diff options
author | Vicent Marti <tanoku@gmail.com> | 2010-07-10 11:50:16 -0700 |
---|---|---|
committer | Vicent Marti <tanoku@gmail.com> | 2010-07-15 23:39:22 +0200 |
commit | 40721f6b1297f2a48aeb5c9a3ac095767b1153bf (patch) | |
tree | 8be856d8f8c8aab89f093583f091979aa2a4b8e3 /src/revobject.c | |
parent | b231ef3acdcf396dba5f83f89488be7519da551a (diff) | |
download | libgit2-40721f6b1297f2a48aeb5c9a3ac095767b1153bf.tar.gz |
Changed revpool's object table to support arbitrary objects
git_revpool_object now has a type identifier for each object
type in a revpool (commits, trees, blobs, etc).
Trees can now be stored in the revision pool.
git_revpool_tableit now supports filtering objects by their
type when iterating through the object table.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
Diffstat (limited to 'src/revobject.c')
-rw-r--r-- | src/revobject.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/revobject.c b/src/revobject.c index 32d5e6464..47d75e047 100644 --- a/src/revobject.c +++ b/src/revobject.c @@ -197,3 +197,14 @@ git_revpool_object *git_revpool_tableit_next(git_revpool_tableit *it) return next->object; } + +git_revpool_object *git_revpool_tableit_nextfilter(git_revpool_tableit *it, git_otype type) +{ + git_revpool_object *obj; + + do { + obj = git_revpool_tableit_next(it); + } while (obj != NULL && obj->type != type); + + return obj; +} |