[PATCH] Parse tree objects completely
[git.git] / tree.h
1 #ifndef TREE_H
2 #define TREE_H
3
4 #include "object.h"
5
6 extern const char *tree_type;
7
8 struct tree_entry_list {
9         struct tree_entry_list *next;
10         unsigned directory : 1;
11         unsigned executable : 1;
12         char *name;
13         union {
14                 struct tree *tree;
15                 struct blob *blob;
16         } item;
17 };
18
19 struct tree {
20         struct object object;
21         unsigned has_full_path : 1;
22         struct tree_entry_list *entries;
23 };
24
25 struct tree *lookup_tree(unsigned char *sha1);
26
27 int parse_tree(struct tree *tree);
28
29 #endif /* TREE_H */