merge-ort: add function grouping comments

Commit b658536f59 ("merge-ort: add some high-level algorithm structure", 2020-10-27) added high-level structure of the ort merge algorithm. As we have added more and more functions, that high-level structure has been slightly obscured. Since functions are still grouped according to this high-level structure, add comments denoting sections where all the functions are specifically tied to a piece of the high-level structure. This function groupings include a few sub-divisions of the original high-level structure, including some sub-divisions that are yet to be submitted. Each has (or will have) several functions all serving as helpers to one or two main functions for each section. As an added bonus, the comments will serve to provide a small textual separation between nearby sections and allow the next three patch series to be submitted independently and merge cleanly. Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Elijah Newren committed Dec 3, 2020 at 15:59 UTC 04af1879b9313a83aea46791bad8963e14e7651e
1 file changed +21
merge-ort.c
+21
@@ -210,6 +210,8 @@ struct conflict_info {
210 unsigned match_mask:3;
211 };
212
213 +/*** Function Grouping: various utility functions ***/
214 +
215 /*
216 * For the next three macros, see warning for conflict_info.merged.
217 *
@@ -290,6 +292,8 @@ static int err(struct merge_options *opt, const char *err, ...)
292 return -1;
293 }
294
295 +/*** Function Grouping: functions related to collect_merge_info() ***/
296 +
297 static void setup_path_info(struct merge_options *opt,
298 struct string_list_item *result,
299 const char *current_dir_name,
@@ -544,6 +548,15 @@ static int collect_merge_info(struct merge_options *opt,
548 return ret;
549 }
550
551 +/*** Function Grouping: functions related to threeway content merges ***/
552 +
553 +/*** Function Grouping: functions related to detect_and_process_renames(), ***
554 + *** which are split into directory and regular rename detection sections. ***/
555 +
556 +/*** Function Grouping: functions related to directory rename detection ***/
557 +
558 +/*** Function Grouping: functions related to regular rename detection ***/
559 +
560 static int detect_and_process_renames(struct merge_options *opt,
561 struct tree *merge_base,
562 struct tree *side1,
@@ -561,6 +574,8 @@ static int detect_and_process_renames(struct merge_options *opt,
574 return clean;
575 }
576
577 +/*** Function Grouping: functions related to process_entries() ***/
578 +
579 static int string_list_df_name_compare(const char *one, const char *two)
580 {
581 int onelen = strlen(one);
@@ -1039,6 +1054,8 @@ static void process_entries(struct merge_options *opt,
1054 string_list_clear(&dir_metadata.offsets, 0);
1055 }
1056
1057 +/*** Function Grouping: functions related to merge_switch_to_result() ***/
1058 +
1059 static int checkout(struct merge_options *opt,
1060 struct tree *prev,
1061 struct tree *next)
@@ -1226,6 +1243,8 @@ void merge_finalize(struct merge_options *opt,
1243 FREE_AND_NULL(opti);
1244 }
1245
1246 +/*** Function Grouping: helper functions for merge_incore_*() ***/
1247 +
1248 static void merge_start(struct merge_options *opt, struct merge_result *result)
1249 {
1250 /* Sanity checks on opt */
@@ -1276,6 +1295,8 @@ static void merge_start(struct merge_options *opt, struct merge_result *result)
1295 string_list_init(&opt->priv->paths_to_free, 0);
1296 }
1297
1298 +/*** Function Grouping: merge_incore_*() and their internal variants ***/
1299 +
1300 /*
1301 * Originally from merge_trees_internal(); heavily adapted, though.
1302 */