6a160c91875398c39940883baab4452880397956
   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};
  14extern struct tag *lookup_tag(struct repository *r, const struct object_id *oid);
  15#define parse_tag_buffer(r, i, d, s) parse_tag_buffer_##r(i, d, s)
  16extern int parse_tag_buffer_the_repository(struct tag *item, const void *data, unsigned long size);
  17extern int parse_tag(struct tag *item);
  18extern void release_tag_memory(struct tag *t);
  19#define deref_tag(r, o, w, l) deref_tag_##r(o, w, l)
  20extern struct object *deref_tag_the_repository(struct object *, const char *, int);
  21extern struct object *deref_tag_noverify(struct object *);
  22extern int gpg_verify_tag(const struct object_id *oid,
  23                const char *name_to_report, unsigned flags);
  24
  25#endif /* TAG_H */