mingw: short-circuit the conversion of `/dev/null` to UTF-16
[git] / log-tree.h
1 #ifndef LOG_TREE_H
2 #define LOG_TREE_H
3
4 #include "revision.h"
5
6 struct log_info {
7         struct commit *commit, *parent;
8 };
9
10 struct decoration_filter {
11         struct string_list *include_ref_pattern, *exclude_ref_pattern;
12 };
13
14 int parse_decorate_color_config(const char *var, const char *slot_name, const char *value);
15 void init_log_tree_opt(struct rev_info *);
16 int log_tree_diff_flush(struct rev_info *);
17 int log_tree_commit(struct rev_info *, struct commit *);
18 int log_tree_opt_parse(struct rev_info *, const char **, int);
19 void show_log(struct rev_info *opt);
20 void format_decorations_extended(struct strbuf *sb, const struct commit *commit,
21                              int use_color,
22                              const char *prefix,
23                              const char *separator,
24                              const char *suffix);
25 #define format_decorations(strbuf, commit, color) \
26                              format_decorations_extended((strbuf), (commit), (color), " (", ", ", ")")
27 void show_decorations(struct rev_info *opt, struct commit *commit);
28 void log_write_email_headers(struct rev_info *opt, struct commit *commit,
29                              const char **extra_headers_p,
30                              int *need_8bit_cte_p,
31                              int maybe_multipart);
32 void load_ref_decorations(struct decoration_filter *filter, int flags);
33
34 #define FORMAT_PATCH_NAME_MAX 64
35 void fmt_output_commit(struct strbuf *, struct commit *, struct rev_info *);
36 void fmt_output_subject(struct strbuf *, const char *subject, struct rev_info *);
37 void fmt_output_email_subject(struct strbuf *, struct rev_info *);
38
39 #endif