Remove TYPE_* constant macros and use object_type enums consistently.

This updates the type-enumeration constants introduced to reduce
the memory footprint of "struct object" to match the type bits
already used in the packfile format, by removing the former
(i.e. TYPE_* constant macros) and using the latter (i.e. enum
object_type) throughout the code for consistency.

Eventually we can stop passing around the "type strings"
entirely, and this will help - no confusion about two different
integer enumeration.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Linus Torvalds
2006-07-11 20:45:31 -07:00
committed by Junio C Hamano
parent d3ba675aae
commit 1974632c66
22 changed files with 87 additions and 92 deletions

View File

@ -19,7 +19,8 @@ struct object *get_indexed_object(unsigned int idx)
}
const char *type_names[] = {
"none", "blob", "tree", "commit", "bad"
"none", "commit", "tree", "blob", "tag",
"bad type 5", "bad type 6", "delta", "bad",
};
static unsigned int hash_obj(struct object *obj, unsigned int n)
@ -88,7 +89,7 @@ void created_object(const unsigned char *sha1, struct object *obj)
{
obj->parsed = 0;
obj->used = 0;
obj->type = TYPE_NONE;
obj->type = OBJ_NONE;
obj->flags = 0;
memcpy(obj->sha1, sha1, 20);
@ -131,7 +132,7 @@ struct object *lookup_unknown_object(const unsigned char *sha1)
if (!obj) {
union any_object *ret = xcalloc(1, sizeof(*ret));
created_object(sha1, &ret->object);
ret->object.type = TYPE_NONE;
ret->object.type = OBJ_NONE;
return &ret->object;
}
return obj;