summaryrefslogtreecommitdiff
path: root/object.h
diff options
context:
space:
mode:
authorNicolas Pitre <nico@cam.org>2007-02-26 19:55:58 (GMT)
committerJunio C Hamano <junkio@cox.net>2007-02-27 09:34:21 (GMT)
commitdf8436622fb553f468180b61032fe34bd6712752 (patch)
tree8cf6c70ad18d3435face75f0e3dd1e6305d06137 /object.h
parent9ba630318f6fbc2f129e5a6872d70d2914cacb39 (diff)
downloadgit-df8436622fb553f468180b61032fe34bd6712752.zip
git-df8436622fb553f468180b61032fe34bd6712752.tar.gz
git-df8436622fb553f468180b61032fe34bd6712752.tar.bz2
formalize typename(), and add its reverse type_from_string()
Sometime typename() is used, sometimes type_names[] is accessed directly. Let's enforce typename() all the time which allows for validating the type. Also let's add a function to go from a name to a type and use it instead of manual memcpy() when appropriate. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'object.h')
-rw-r--r--object.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/object.h b/object.h
index caee733..ade4dae 100644
--- a/object.h
+++ b/object.h
@@ -36,16 +36,12 @@ struct object {
};
extern int track_object_refs;
-extern const char *type_names[9];
+
+extern const char *typename(unsigned int type);
+extern int type_from_string(const char *str);
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 > OBJ_BAD ? OBJ_BAD : type];
-}
-
extern struct object_refs *lookup_object_refs(struct object *);
/** Internal only **/