45b0b08b1f620b46ee65079f2701694861621816
1#ifndef TAG_H
2#define TAG_H
3
4#include "object.h"
5
6extern const char *tag_type;
7
8struct tag {
9 struct object object;
10 struct object *tagged;
11 char *tag;
12 timestamp_t date;
13};
14#define lookup_tag(r, o) lookup_tag_##r(o)
15extern struct tag *lookup_tag_the_repository(const struct object_id *oid);
16#define parse_tag_buffer(r, i, d, s) parse_tag_buffer_##r(i, d, s)
17extern int parse_tag_buffer_the_repository(struct tag *item, const void *data, unsigned long size);
18extern int parse_tag(struct tag *item);
19extern void release_tag_memory(struct tag *t);
20#define deref_tag(r, o, w, l) deref_tag_##r(o, w, l)
21extern struct object *deref_tag_the_repository(struct object *, const char *, int);
22extern struct object *deref_tag_noverify(struct object *);
23extern int gpg_verify_tag(const struct object_id *oid,
24 const char *name_to_report, unsigned flags);
25
26#endif /* TAG_H */