diff options
author | Junio C Hamano <junkio@cox.net> | 2006-07-14 15:39:19 -0700 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-07-14 15:39:19 -0700 |
commit | 5cd060b56c3d0b9f2340377d73dfe1abbcbe8a20 (patch) | |
tree | fc993f674db014236b94f3c6e147b1ac5b838699 /object.h | |
parent | 1733832d8ec11655924af58efb67ff4503928b59 (diff) | |
parent | e5a78b1ca8b62aee8567d67f0e0db5ac7706806a (diff) | |
download | git-5cd060b56c3d0b9f2340377d73dfe1abbcbe8a20.tar.gz |
Merge branch 'lt/unitype'
* lt/unitype:
builtin-prune.c: forgot TYPE => OBJ changes.
Remove TYPE_* constant macros and use object_type enums consistently.
Diffstat (limited to 'object.h')
-rw-r--r-- | object.h | 23 |
1 files changed, 15 insertions, 8 deletions
@@ -24,12 +24,19 @@ struct object_array { #define TYPE_BITS 3 #define FLAG_BITS 27 -#define TYPE_NONE 0 -#define TYPE_BLOB 1 -#define TYPE_TREE 2 -#define TYPE_COMMIT 3 -#define TYPE_TAG 4 -#define TYPE_BAD 5 +/* + * The object type is stored in 3 bits. + */ +enum object_type { + OBJ_NONE = 0, + OBJ_COMMIT = 1, + OBJ_TREE = 2, + OBJ_BLOB = 3, + OBJ_TAG = 4, + /* 5/6 for future expansion */ + OBJ_DELTA = 7, + OBJ_BAD, +}; struct object { unsigned parsed : 1; @@ -40,14 +47,14 @@ struct object { }; extern int track_object_refs; -extern const char *type_names[]; +extern const char *type_names[9]; extern unsigned int get_max_object_index(void); extern struct object *get_indexed_object(unsigned int); static inline const char *typename(unsigned int type) { - return type_names[type > TYPE_TAG ? TYPE_BAD : type]; + return type_names[type > OBJ_BAD ? OBJ_BAD : type]; } extern struct object_refs *lookup_object_refs(struct object *); |