mirror of
https://github.com/git/git
synced 2024-08-25 02:35:46 +00:00
![Denton Liu](/assets/img/avatar_default.png)
There has been a push to remove extern from function declarations. Remove some instances of "extern" for function declarations which are caught by Coccinelle. Note that Coccinelle has some difficulty with processing functions with `__attribute__` or varargs so some `extern` declarations are left behind to be dealt with in a future patch. This was the Coccinelle patch used: @@ type T; identifier f; @@ - extern T f(...); and it was run with: $ git ls-files \*.{c,h} | grep -v ^compat/ | xargs spatch --sp-file contrib/coccinelle/noextern.cocci --in-place Files under `compat/` are intentionally excluded as some are directly copied from external sources and we should avoid churning them as much as possible. Signed-off-by: Denton Liu <liu.denton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
62 lines
1.4 KiB
C
62 lines
1.4 KiB
C
#ifndef DECORATE_H
|
|
#define DECORATE_H
|
|
|
|
/*
|
|
* A data structure that associates Git objects to void pointers. See
|
|
* t/helper/test-example-decorate.c for a demonstration of how to use these
|
|
* functions.
|
|
*/
|
|
|
|
/*
|
|
* An entry in the data structure.
|
|
*/
|
|
struct decoration_entry {
|
|
const struct object *base;
|
|
void *decoration;
|
|
};
|
|
|
|
/*
|
|
* The data structure.
|
|
*
|
|
* This data structure must be zero-initialized.
|
|
*/
|
|
struct decoration {
|
|
/*
|
|
* Not used by the decoration mechanism. Clients may use this for
|
|
* whatever they want.
|
|
*/
|
|
const char *name;
|
|
|
|
/*
|
|
* The capacity of "entries".
|
|
*/
|
|
unsigned int size;
|
|
|
|
/*
|
|
* The number of real Git objects (that is, entries with non-NULL
|
|
* "base").
|
|
*/
|
|
unsigned int nr;
|
|
|
|
/*
|
|
* The entries. This is an array of size "size", containing nr entries
|
|
* with non-NULL "base" and (size - nr) entries with NULL "base".
|
|
*/
|
|
struct decoration_entry *entries;
|
|
};
|
|
|
|
/*
|
|
* Add an association from the given object to the given pointer (which may be
|
|
* NULL), returning the previously associated pointer. If there is no previous
|
|
* association, this function returns NULL.
|
|
*/
|
|
void *add_decoration(struct decoration *n, const struct object *obj, void *decoration);
|
|
|
|
/*
|
|
* Return the pointer associated to the given object. If there is no
|
|
* association, this function returns NULL.
|
|
*/
|
|
void *lookup_decoration(struct decoration *n, const struct object *obj);
|
|
|
|
#endif
|