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

[PATCH 02/20] dir.h: move struct exclude declaration to top level

From
Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Date
May 7, 2014, 14:51 UTC
Message-ID
<1399474320-6840-3-git-send-email-pclouds@gmail.com>
In-Reply-To
<1399474320-6840-1-git-send-email-pclouds@gmail.com>
There is no actual nested struct here. Move it out for clarity.
---
 dir.h | 42 ++++++++++++++++++++++--------------------
 1 file changed, 22 insertions(+), 20 deletions(-)
diff --git a/dir.h b/dir.h
index 55e5345..02e3710 100644
--- a/dir.h
+++ b/dir.h
@@ -15,6 +15,27 @@ struct dir_entry {
 #define EXC_FLAG_MUSTBEDIR 8
 #define EXC_FLAG_NEGATIVE 16
 
+struct exclude {
+	/*
+	 * This allows callers of last_exclude_matching() etc.
+	 * to determine the origin of the matching pattern.
+	 */
+	struct exclude_list *el;
+
+	const char *pattern;
+	int patternlen;
+	int nowildcardlen;
+	const char *base;
+	int baselen;
+	int flags;
+
+	/*
+	 * Counting starts from 1 for line numbers in ignore files,
+	 * and from -1 decrementing for patterns from CLI args.
+	 */
+	int srcpos;
+};
+
 /*
  * Each excludes file will be parsed into a fresh exclude_list which
  * is appended to the relevant exclude_list_group (either EXC_DIRS or
@@ -32,26 +53,7 @@ struct exclude_list {
 	/* origin of list, e.g. path to filename, or descriptive string */
 	const char *src;
 
-	struct exclude {
-		/*
-		 * This allows callers of last_exclude_matching() etc.
-		 * to determine the origin of the matching pattern.
-		 */
-		struct exclude_list *el;
-
-		const char *pattern;
-		int patternlen;
-		int nowildcardlen;
-		const char *base;
-		int baselen;
-		int flags;
-
-		/*
-		 * Counting starts from 1 for line numbers in ignore files,
-		 * and from -1 decrementing for patterns from CLI args.
-		 */
-		int srcpos;
-	} **excludes;
+	struct exclude **excludes;
 };
 
 /*
-- 
1.9.1.346.ga2b5940
Previous: Nguyễn Thái Ngọc DuyNext: Nguyễn Thái Ngọc Duy
Message 3 of 21 in “Untracked cache to speed up "git status"”
  1. 00/20 Untracked cache to speed up "git status"Nguyễn Thái Ngọc Duy, May 7, 2014
  2. 01/20 dir.c: coding style fixNguyễn Thái Ngọc Duy, May 7, 2014
  3. 02/20 dir.h: move struct exclude declaration to top levelNguyễn Thái Ngọc Duy, May 7, 2014
  4. 03/20 prep_exclude: remove the artificial PATH_MAX limitNguyễn Thái Ngọc Duy, May 7, 2014
  5. 04/20 dir.c: optionally compute sha-1 of a .gitignore fileNguyễn Thái Ngọc Duy, May 7, 2014
  6. 05/20 untracked cache: record .gitignore information and dir hierarchyNguyễn Thái Ngọc Duy, May 7, 2014
  7. 06/20 untracked cache: initial untracked cache validationNguyễn Thái Ngọc Duy, May 7, 2014
  8. 07/20 untracked cache: invalidate dirs recursively if .gitignore changesNguyễn Thái Ngọc Duy, May 7, 2014
  9. 08/20 untracked cache: record/validate dir mtime and reuse cached outputNguyễn Thái Ngọc Duy, May 7, 2014
  10. 09/20 untracked cache: mark what dirs should be recursed/savedNguyễn Thái Ngọc Duy, May 7, 2014
  11. 10/20 untracked cache: don't open non-existent .gitignoreNguyễn Thái Ngọc Duy, May 7, 2014
  12. 11/20 untracked cache: save to an index extensionNguyễn Thái Ngọc Duy, May 7, 2014
  13. 12/20 untracked cache: load from UNTR index extensionNguyễn Thái Ngọc Duy, May 7, 2014
  14. 13/20 untracked cache: invalidate at index addition or removalNguyễn Thái Ngọc Duy, May 7, 2014
  15. 14/20 untracked cache: print untracked statistics with $GIT_TRACE_UNTRACKEDNguyễn Thái Ngọc Duy, May 7, 2014
  16. 15/20 read-cache.c: split racy stat test to a separate functionNguyễn Thái Ngọc Duy, May 7, 2014
  17. 16/20 untracked cache: avoid racy timestampsNguyễn Thái Ngọc Duy, May 7, 2014
  18. 17/20 status: support untracked cacheNguyễn Thái Ngọc Duy, May 7, 2014
  19. 18/20 update-index: manually enable or disable untracked cacheNguyễn Thái Ngọc Duy, May 7, 2014
  20. 19/20 update-index: test the system before enabling untracked cacheNguyễn Thái Ngọc Duy, May 7, 2014
  21. 20/20 t7063: tests for untracked cacheNguyễn Thái Ngọc Duy, May 7, 2014

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.