Merge branch 'sb/object-store-lookup'
lookup_commit_reference() and friends have been updated to find in-core object for a specific in-core repository instance. * sb/object-store-lookup: (32 commits) commit.c: allow lookup_commit_reference to handle arbitrary repositories commit.c: allow lookup_commit_reference_gently to handle arbitrary repositories tag.c: allow deref_tag to handle arbitrary repositories object.c: allow parse_object to handle arbitrary repositories object.c: allow parse_object_buffer to handle arbitrary repositories commit.c: allow get_cached_commit_buffer to handle arbitrary repositories commit.c: allow set_commit_buffer to handle arbitrary repositories commit.c: migrate the commit buffer to the parsed object store commit-slabs: remove realloc counter outside of slab struct commit.c: allow parse_commit_buffer to handle arbitrary repositories tag: allow parse_tag_buffer to handle arbitrary repositories tag: allow lookup_tag to handle arbitrary repositories commit: allow lookup_commit to handle arbitrary repositories tree: allow lookup_tree to handle arbitrary repositories blob: allow lookup_blob to handle arbitrary repositories object: allow lookup_object to handle arbitrary repositories object: allow object_as_type to handle arbitrary repositories tag: add repository argument to deref_tag tag: add repository argument to parse_tag_buffer tag: add repository argument to lookup_tag ...
This commit is contained in:
18
commit.h
18
commit.h
@ -63,9 +63,11 @@ enum decoration_type {
|
||||
void add_name_decoration(enum decoration_type type, const char *name, struct object *obj);
|
||||
const struct name_decoration *get_name_decoration(const struct object *obj);
|
||||
|
||||
struct commit *lookup_commit(const struct object_id *oid);
|
||||
struct commit *lookup_commit_reference(const struct object_id *oid);
|
||||
struct commit *lookup_commit_reference_gently(const struct object_id *oid,
|
||||
struct commit *lookup_commit(struct repository *r, const struct object_id *oid);
|
||||
struct commit *lookup_commit_reference(struct repository *r,
|
||||
const struct object_id *oid);
|
||||
struct commit *lookup_commit_reference_gently(struct repository *r,
|
||||
const struct object_id *oid,
|
||||
int quiet);
|
||||
struct commit *lookup_commit_reference_by_name(const char *name);
|
||||
|
||||
@ -76,7 +78,7 @@ struct commit *lookup_commit_reference_by_name(const char *name);
|
||||
*/
|
||||
struct commit *lookup_commit_or_die(const struct object_id *oid, const char *ref_name);
|
||||
|
||||
int parse_commit_buffer(struct commit *item, const void *buffer, unsigned long size, int check_graph);
|
||||
int parse_commit_buffer(struct repository *r, struct commit *item, const void *buffer, unsigned long size, int check_graph);
|
||||
int parse_commit_internal(struct commit *item, int quiet_on_missing, int use_commit_graph);
|
||||
int parse_commit_gently(struct commit *item, int quiet_on_missing);
|
||||
static inline int parse_commit(struct commit *item)
|
||||
@ -85,17 +87,21 @@ static inline int parse_commit(struct commit *item)
|
||||
}
|
||||
void parse_commit_or_die(struct commit *item);
|
||||
|
||||
struct buffer_slab;
|
||||
struct buffer_slab *allocate_commit_buffer_slab(void);
|
||||
void free_commit_buffer_slab(struct buffer_slab *bs);
|
||||
|
||||
/*
|
||||
* Associate an object buffer with the commit. The ownership of the
|
||||
* memory is handed over to the commit, and must be free()-able.
|
||||
*/
|
||||
void set_commit_buffer(struct commit *, void *buffer, unsigned long size);
|
||||
void set_commit_buffer(struct repository *r, struct commit *, void *buffer, unsigned long size);
|
||||
|
||||
/*
|
||||
* Get any cached object buffer associated with the commit. Returns NULL
|
||||
* if none. The resulting memory should not be freed.
|
||||
*/
|
||||
const void *get_cached_commit_buffer(const struct commit *, unsigned long *size);
|
||||
const void *get_cached_commit_buffer(struct repository *, const struct commit *, unsigned long *size);
|
||||
|
||||
/*
|
||||
* Get the commit's object contents, either from cache or by reading the object
|
||||
|
Reference in New Issue
Block a user