git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/4] string-list: allow passing NULL for `get_entry_index`

From
Ben Knoble <ben.knoble@gmail.com>
Date
Sep 10, 2025, 02:04 UTC
Message-ID
<DBE9993A-D6CC-4ABF-8D8B-18D54CF1B001@gmail.com>
In-Reply-To
<xmqqfrcvt7mf.fsf@gitster.g>
Show 36 quoted lines
> Le 9 sept. 2025 à 21:32, Junio C Hamano <gitster@pobox.com> a écrit :
> 
> Ben Knoble <ben.knoble@gmail.com> writes:
> 
>>>> Le 8 sept. 2025 à 12:48, Junio C Hamano <gitster@pobox.com> a écrit :
>>> 
>>> shejialuo <shejialuo@gmail.com> writes:
>>> 
>>>> Callers of `get_entry_index()` are required to pass a non-NULL
>>>> `exact_match` parameter to receive information about whether an exact
>>>> match is found. However, in some cases, callers only need the index
>>>> position.
>>>> 
>>>> Let's allow callers to pass NULL for the `exact_match` parameter
>>>> when they don't need this information, reducing unnecessary variable
>>>> declarations in calling code.
>>>> 
>>>> Signed-off-by: shejialuo <shejialuo@gmail.com>
>>>> ---
>>>> string-list.c | 6 ++++--
>>>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>> 
>>> I do not quite see the point of adding these conditional assignments
>>> to clutter the control flow.  What benefit do these callers gain by
>>> not having to have a throw-away int variable on the stack and
>>> passing its address to the call chain?
>> 
>> Wouldn’t the point be that (at the cost of slightly more interesting library code) callers don’t need to introduce extra ceremony for results they don’t use? In other words, take the boilerplate and push it down rather than up?
> 
> Yeah, but the point is in what situation does a caller *not* need to
> be able to tell between "we found an existing one and this is its
> index" vs "there is no such thing, but here is where it *would* fit
> if it were placed in the array"?  I do not think of any, so I
> doubted if it makes much sense to complicate the interface to make
> it optional.
> 
Good question! Thanks for clarifying. 
Previous: Junio C HamanoNext: shejialuo
Message 5 of 6 in “string-list: allow passing NULL for `get_entry_index`”
  1. 1/4 string-list: allow passing NULL for `get_entry_index`shejialuo, Sep 7, 2025
  2. Junio C HamanoSep 8, 2025
  3. Ben KnobleSep 10, 2025
  4. Junio C HamanoSep 10, 2025
  5. Ben KnobleSep 10, 2025
  6. shejialuoSep 15, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.