Re: [PATCH v2] builtin: allow passing custom data to sub-commands
- From
karthik nayak <karthik.188@gmail.com>
- Date
- Nov 27, 2024, 12:23 UTC
- Message-ID
- <CAOLa=ZRj8SiZu3AiBTGHwp+SiuBNBj3VAsVG9PppTjyKuz9oyA@mail.gmail.com>
- In-Reply-To
- <CAOLa=ZQgKv4SEPRqQix8pJo1nr30Fpg2oF-LdDX1ynHeSjDcGw@mail.gmail.com>
karthik nayak <karthik.188@gmail.com> writes:
Show 17 quoted lines
> Junio C Hamano <gitster@pobox.com> writes: > >> karthik nayak <karthik.188@gmail.com> writes: >> >>> Could you elaborate on why you think this is an over-optimization? We >>> don't loose functionality with this, nor do we have to have add >>> additional code to handle the typecasting to `struct repository *` if >>> needed. But would definitely like to resolve anything I missed. >> >> I do not know if it is an optimization, but if you know it is of a >> specific type, casting back and force with "void *" loses type >> safety, no? > > That is true of course, I just thought that is the price to pay in C for > having to deal with generic data propagation. In the end I'm okay with > both scenarios, I see merits both ways. I do tend to incline on the > generic version in v2, since it is a lot more expandable.
That said, I see v1 is merged into `next` [1]. I think we should keep it that way and like you said modify it in the future if needed to add varargs or another `void *` argument.
Thanks
[1]: https://github.com/gitster/git/commit/668c0913f5803ebcc3b0b1f13e6cd49503194869