diff mbox series

[v3,3/5] refactor(remote): rename query_refspecs functions

Message ID 20250201064202.76116-4-meetsoni3017@gmail.com (mailing list archive)
State Superseded
Headers show
Series refspec: centralize refspec-related logic | expand

Commit Message

Meet Soni Feb. 1, 2025, 6:42 a.m. UTC
Rename `query_refspecs()` to `find_refspec_match` for clarity, as it
finds a single matching refspec.

Rename `query_refspecs_multiple()` to `find_all_refspec_matches` to
better reflect that it collects all matching refspecs instead of
returning just the first match.

Rename `query_matches_negative_refspec()` to
`find_negative_refspec_match` for consistency with the updated naming
convention.

Signed-off-by: Meet Soni <meetsoni3017@gmail.com>
---
 builtin/push.c |  2 +-
 remote.c       | 20 ++++++++++----------
 remote.h       |  2 +-
 3 files changed, 12 insertions(+), 12 deletions(-)

Comments

Patrick Steinhardt Feb. 3, 2025, 6:46 a.m. UTC | #1
On Sat, Feb 01, 2025 at 12:12:00PM +0530, Meet Soni wrote:
> Rename `query_refspecs()` to `find_refspec_match` for clarity, as it
> finds a single matching refspec.
> 
> Rename `query_refspecs_multiple()` to `find_all_refspec_matches` to
> better reflect that it collects all matching refspecs instead of
> returning just the first match.
> 
> Rename `query_matches_negative_refspec()` to
> `find_negative_refspec_match` for consistency with the updated naming
> convention.

Okay. The message might've read a tiny bit easier if it was a bulleted
list of renames. E.g.:

    We're about to move a couple of functions related to handling of
    refspecs from "remote.c" into "refspec.c". In preparation for this
    move, rename them to better reflect their intent:

      - `query_refspecs()` becomes `find_refspec_match()` for clarity,
        as it finds a single matching refspec.

    ...

I was wondering a bit about why we rename the static functions, as we
wouldn't have to expose them in a subsequent step anyway. Other than
that I think we should adhere to our coding guidelines with the renamed
public functions:

    The primary data structure that a subsystem 'S' deals with is called
    `struct S`. Functions that operate on `struct S` are named
    `S_<verb>()` and should generally receive a pointer to `struct S` as
    first parameter. E.g.

So:

  - `query_refspecs()` would be renamed to `refspec_find_match()`.

  - `query_refspecs_multiple()` would be renamed to
    `refspec_find_all_matches()`.

  - `find_negative_refspec_match()` would be renamed to
    `refspec_find_negative_match()`.

Patrick
Meet Soni Feb. 4, 2025, 3:39 a.m. UTC | #2
On Mon, 3 Feb 2025 at 12:16, Patrick Steinhardt <ps@pks.im> wrote:
>
> On Sat, Feb 01, 2025 at 12:12:00PM +0530, Meet Soni wrote:
> > Rename `query_refspecs()` to `find_refspec_match` for clarity, as it
> > finds a single matching refspec.
> >
> > Rename `query_refspecs_multiple()` to `find_all_refspec_matches` to
> > better reflect that it collects all matching refspecs instead of
> > returning just the first match.
> >
> > Rename `query_matches_negative_refspec()` to
> > `find_negative_refspec_match` for consistency with the updated naming
> > convention.
>
> Okay. The message might've read a tiny bit easier if it was a bulleted
> list of renames. E.g.:
>
>     We're about to move a couple of functions related to handling of
>     refspecs from "remote.c" into "refspec.c". In preparation for this
>     move, rename them to better reflect their intent:
>
>       - `query_refspecs()` becomes `find_refspec_match()` for clarity,
>         as it finds a single matching refspec.
>
>     ...
Makes sense.
>
> I was wondering a bit about why we rename the static functions, as we
> wouldn't have to expose them in a subsequent step anyway. Other than
> that I think we should adhere to our coding guidelines with the renamed
> public functions:
Since we were renaming the query_* functions that are exposed, I updated
the static ones as well to maintain naming consistency across related functions.
>
>     The primary data structure that a subsystem 'S' deals with is called
>     `struct S`. Functions that operate on `struct S` are named
>     `S_<verb>()` and should generally receive a pointer to `struct S` as
>     first parameter. E.g.
>
> So:
>
>   - `query_refspecs()` would be renamed to `refspec_find_match()`.
>
>   - `query_refspecs_multiple()` would be renamed to
>     `refspec_find_all_matches()`.
>
>   - `find_negative_refspec_match()` would be renamed to
>     `refspec_find_negative_match()`.
>
> Patrick

Thanks for the review.
Meet
Junio C Hamano Feb. 4, 2025, 1:58 p.m. UTC | #3
Meet Soni <meetsoni3017@gmail.com> writes:

>> So:
>>
>>   - `query_refspecs()` would be renamed to `refspec_find_match()`.
>>
>>   - `query_refspecs_multiple()` would be renamed to
>>     `refspec_find_all_matches()`.
>>
>>   - `find_negative_refspec_match()` would be renamed to
>>     `refspec_find_negative_match()`.
>>
>> Patrick
>
> Thanks for the review.
> Meet

Yup, using predictable names that follow patterns based on
easy-to-follow rules is a very useful tool to help developers.

Thanks, both.
diff mbox series

Patch

diff --git a/builtin/push.c b/builtin/push.c
index 90de3746b5..e6527b0b04 100644
--- a/builtin/push.c
+++ b/builtin/push.c
@@ -78,7 +78,7 @@  static void refspec_append_mapped(struct refspec *refspec, const char *ref,
 			.src = matched->name,
 		};
 
-		if (!query_refspecs(&remote->push, &query) && query.dst) {
+		if (!find_refspec_match(&remote->push, &query) && query.dst) {
 			refspec_appendf(refspec, "%s%s:%s",
 					query.force ? "+" : "",
 					query.src, query.dst);
diff --git a/remote.c b/remote.c
index 1da8ec7037..4654bce5d4 100644
--- a/remote.c
+++ b/remote.c
@@ -925,7 +925,7 @@  struct ref *apply_negative_refspecs(struct ref *ref_map, struct refspec *rs)
 	return ref_map;
 }
 
-static int query_matches_negative_refspec(struct refspec *rs, struct refspec_item *query)
+static int find_negative_refspec_match(struct refspec *rs, struct refspec_item *query)
 {
 	int i, matched_negative = 0;
 	int find_src = !query->src;
@@ -982,7 +982,7 @@  static int query_matches_negative_refspec(struct refspec *rs, struct refspec_ite
 	return matched_negative;
 }
 
-static void query_refspecs_multiple(struct refspec *rs,
+static void find_all_refspec_matches(struct refspec *rs,
 				    struct refspec_item *query,
 				    struct string_list *results)
 {
@@ -990,9 +990,9 @@  static void query_refspecs_multiple(struct refspec *rs,
 	int find_src = !query->src;
 
 	if (find_src && !query->dst)
-		BUG("query_refspecs_multiple: need either src or dst");
+		BUG("find_all_refspec_matches: need either src or dst");
 
-	if (query_matches_negative_refspec(rs, query))
+	if (find_negative_refspec_match(rs, query))
 		return;
 
 	for (i = 0; i < rs->nr; i++) {
@@ -1013,7 +1013,7 @@  static void query_refspecs_multiple(struct refspec *rs,
 	}
 }
 
-int query_refspecs(struct refspec *rs, struct refspec_item *query)
+int find_refspec_match(struct refspec *rs, struct refspec_item *query)
 {
 	int i;
 	int find_src = !query->src;
@@ -1021,9 +1021,9 @@  int query_refspecs(struct refspec *rs, struct refspec_item *query)
 	char **result = find_src ? &query->src : &query->dst;
 
 	if (find_src && !query->dst)
-		BUG("query_refspecs: need either src or dst");
+		BUG("find_refspec_match: need either src or dst");
 
-	if (query_matches_negative_refspec(rs, query))
+	if (find_negative_refspec_match(rs, query))
 		return -1;
 
 	for (i = 0; i < rs->nr; i++) {
@@ -1054,7 +1054,7 @@  char *apply_refspecs(struct refspec *rs, const char *name)
 	memset(&query, 0, sizeof(struct refspec_item));
 	query.src = (char *)name;
 
-	if (query_refspecs(rs, &query))
+	if (find_refspec_match(rs, &query))
 		return NULL;
 
 	return query.dst;
@@ -1062,7 +1062,7 @@  char *apply_refspecs(struct refspec *rs, const char *name)
 
 int remote_find_tracking(struct remote *remote, struct refspec_item *refspec)
 {
-	return query_refspecs(&remote->fetch, refspec);
+	return find_refspec_match(&remote->fetch, refspec);
 }
 
 static struct ref *alloc_ref_with_prefix(const char *prefix, size_t prefixlen,
@@ -2487,7 +2487,7 @@  static int get_stale_heads_cb(const char *refname, const char *referent UNUSED,
 	memset(&query, 0, sizeof(struct refspec_item));
 	query.dst = (char *)refname;
 
-	query_refspecs_multiple(info->rs, &query, &matches);
+	find_all_refspec_matches(info->rs, &query, &matches);
 	if (matches.nr == 0)
 		goto clean_exit; /* No matches */
 
diff --git a/remote.h b/remote.h
index 66ee53411d..f109310eda 100644
--- a/remote.h
+++ b/remote.h
@@ -269,7 +269,7 @@  int refname_matches_negative_refspec_item(const char *refname, struct refspec *r
  */
 struct ref *apply_negative_refspecs(struct ref *ref_map, struct refspec *rs);
 
-int query_refspecs(struct refspec *rs, struct refspec_item *query);
+int find_refspec_match(struct refspec *rs, struct refspec_item *query);
 char *apply_refspecs(struct refspec *rs, const char *name);
 
 int check_push_refs(struct ref *src, struct refspec *rs);