6 extern const char *tree_type
;
15 #define lookup_tree(r, oid) lookup_tree_##r(oid)
16 struct tree
*lookup_tree_the_repository(const struct object_id
*oid
);
18 int parse_tree_buffer(struct tree
*item
, void *buffer
, unsigned long size
);
20 int parse_tree_gently(struct tree
*tree
, int quiet_on_missing
);
21 static inline int parse_tree(struct tree
*tree
)
23 return parse_tree_gently(tree
, 0);
25 void free_tree_buffer(struct tree
*tree
);
27 /* Parses and returns the tree in the given ent, chasing tags and commits. */
28 struct tree
*parse_tree_indirect(const struct object_id
*oid
);
30 #define READ_TREE_RECURSIVE 1
31 typedef int (*read_tree_fn_t
)(const struct object_id
*, struct strbuf
*, const char *, unsigned int, int, void *);
33 extern int read_tree_recursive(struct tree
*tree
,
34 const char *base
, int baselen
,
35 int stage
, const struct pathspec
*pathspec
,
36 read_tree_fn_t fn
, void *context
);
38 extern int read_tree(struct tree
*tree
, int stage
, struct pathspec
*pathspec
,
39 struct index_state
*istate
);