Merge branch 'fc/remote-bzr'
[gitweb.git] / revision.h
index 878a5556fd5e1c82f0fc35e1669e33623397ceeb..a313a1340536321080c44d502a2bb6bc105940d5 100644 (file)
@@ -97,7 +97,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,
@@ -176,6 +177,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
@@ -242,4 +246,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