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

Re: [PATCH 1/6] Add struct pathspec

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 27, 2010, 22:19 UTC
Message-ID
<7vbp7ix20u.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1284938514-16663-2-git-send-email-pclouds@gmail.com>
Nguyễn Thái Ngọc Duy  <pclouds@gmail.com> writes:
Show 27 quoted lines
> This struct for now is just a wrapper for the current pathspec form:
> const char **. It is intended to be extended with more useful
> pathspec-related information over time.
>
> The data structure for passing pathspec around remains const char **,
> struct pathspec will be initialized locally to be used and destroyed.
> Hopefully all pathspec related code will be gradually migrated to pass
> this struct instead.
>
> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
> ---
>  cache.h |    7 +++++++
>  dir.c   |   18 ++++++++++++++++++
>  2 files changed, 25 insertions(+), 0 deletions(-)
>
> diff --git a/cache.h b/cache.h
> index eb77e1d..6227ddb 100644
> --- a/cache.h
> +++ b/cache.h
> @@ -492,6 +492,13 @@ extern int index_name_is_oth
> ...
> +struct pathspec {
> +	const char **raw;
> +	int nr;
> +};
> +
> +extern int init_pathspec(struct pathspec *,const char **);
s/,/, /;
Show 14 quoted lines
> +extern void free_pathspec(struct pathspec *);
>  extern int ce_path_match(const struct cache_entry *ce, const char **pathspec);
>  extern int index_fd(unsigned char *sha1, int fd, struct stat *st, int write_object, enum object_type type, const char *path);
>  extern int index_path(unsigned char *sha1, const char *path, struct stat *st, int write_object);
> diff --git a/dir.c b/dir.c
> index 133f472..5815b64 100644
> --- a/dir.c
> +++ b/dir.c
> @@ -1071,3 +1071,21 @@ int remove_path(const char *name)
> ...
> +void free_pathspec(struct pathspec *pathspec)
> +{
> +	/* do nothing */
> +}
I'd prefer making this more explicit by saying
	{
        	; /* do nothing */
	}
Previous: Nguyễn Thái Ngọc DuyNext: yj2133011
Message 3 of 22 in “Introduce pathspec struct”
  1. 0/6 Introduce pathspec structNguyễn Thái Ngọc Duy, Sep 19, 2010
  2. 1/6 Add struct pathspecNguyễn Thái Ngọc Duy, Sep 19, 2010
  3. Junio C HamanoSep 27, 2010
  4. yj2133011Sep 29, 2010
  5. 2/6 diff-no-index: use diff_tree_setup_paths()Nguyễn Thái Ngọc Duy, Sep 19, 2010
  6. 3/6 pathspec: cache string length when initialize pathspecNguyễn Thái Ngọc Duy, Sep 19, 2010
  7. Junio C HamanoSep 27, 2010
  8. Nguyen Thai Ngoc DuySep 28, 2010
  9. 4/6 Convert struct diff_options to use struct pathspecNguyễn Thái Ngọc Duy, Sep 19, 2010
  10. Junio C HamanoSep 27, 2010
  11. 5/6 tree_entry_interesting(): remove dependency on struct diff_optionsNguyễn Thái Ngọc Duy, Sep 19, 2010
  12. Junio C HamanoSep 27, 2010
  13. Nguyen Thai Ngoc DuySep 28, 2010
  14. 6/6 Move tree_entry_interesting() to tree-walk.c and export itNguyễn Thái Ngọc Duy, Sep 19, 2010
  15. Elijah NewrenSep 20, 2010
  16. Nguyen Thai Ngoc DuySep 20, 2010
  17. Junio C HamanoSep 28, 2010
  18. Bo YangSep 28, 2010
  19. Nguyen Thai Ngoc DuySep 28, 2010
  20. Junio C HamanoSep 29, 2010
  21. David RiptonSep 28, 2010
  22. Junio C HamanoSep 29, 2010

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.