log -L: improve comments in process_all_files()
[gitweb.git] / revision.h
index 059bfff812da8033681aa11c5a9ca9085881747e..6b2870ca10d4b057453f39320ab7d67535b490cc 100644 (file)
@@ -96,7 +96,8 @@ struct rev_info {
                        cherry_mark:1,
                        bisect:1,
                        ancestry_path:1,
-                       first_parent_only:1;
+                       first_parent_only:1,
+                       line_level_traverse:1;
 
        /* Diff flags */
        unsigned int    diff:1,
@@ -135,6 +136,7 @@ struct rev_info {
        const char      *mime_boundary;
        const char      *patch_suffix;
        int             numbered_files;
+       int             reroll_count;
        char            *message_id;
        struct string_list *ref_message_ids;
        const char      *add_signoff;
@@ -143,6 +145,7 @@ struct rev_info {
        const char      *subject_prefix;
        int             no_inline;
        int             show_log_size;
+       struct string_list *mailmap;
 
        /* Filter by commit log message */
        struct grep_opt grep_filter;
@@ -173,6 +176,9 @@ struct rev_info {
        int count_left;
        int count_right;
        int count_same;
+
+       /* line level range that we are chasing */
+       struct decoration line_log_data;
 };
 
 #define REV_TREE_SAME          0
@@ -239,4 +245,14 @@ enum commit_action {
 extern enum commit_action get_commit_action(struct rev_info *revs, struct commit *commit);
 extern enum commit_action simplify_commit(struct rev_info *revs, struct commit *commit);
 
+enum rewrite_result {
+       rewrite_one_ok,
+       rewrite_one_noparents,
+       rewrite_one_error
+};
+
+typedef enum rewrite_result (*rewrite_parent_fn_t)(struct rev_info *revs, struct commit **pp);
+
+extern int rewrite_parents(struct rev_info *revs, struct commit *commit,
+       rewrite_parent_fn_t rewrite_parent);
 #endif