Merge branch 'en/incl-forward-decl'

Code hygiene improvement for the header files.

* en/incl-forward-decl:
  Remove forward declaration of an enum
  compat/precompose_utf8.h: use more common include guard style
  urlmatch.h: fix include guard
  Move definition of enum branch_track from cache.h to branch.h
  alloc: make allocate_alloc_state and clear_alloc_state more consistent
  Add missing includes and forward declarations
maint
Junio C Hamano 2018-08-20 12:41:32 -07:00
commit 5ade034464
61 changed files with 151 additions and 17 deletions

View File

@ -36,7 +36,7 @@ struct alloc_state {
int slab_nr, slab_alloc; int slab_nr, slab_alloc;
}; };


void *allocate_alloc_state(void) struct alloc_state *allocate_alloc_state(void)
{ {
return xcalloc(1, sizeof(struct alloc_state)); return xcalloc(1, sizeof(struct alloc_state));
} }

View File

@ -1,9 +1,11 @@
#ifndef ALLOC_H #ifndef ALLOC_H
#define ALLOC_H #define ALLOC_H


struct alloc_state;
struct tree; struct tree;
struct commit; struct commit;
struct tag; struct tag;
struct repository;


void *alloc_blob_node(struct repository *r); void *alloc_blob_node(struct repository *r);
void *alloc_tree_node(struct repository *r); void *alloc_tree_node(struct repository *r);
@ -13,7 +15,7 @@ void *alloc_object_node(struct repository *r);
void alloc_report(struct repository *r); void alloc_report(struct repository *r);
unsigned int alloc_commit_index(struct repository *r); unsigned int alloc_commit_index(struct repository *r);


void *allocate_alloc_state(void); struct alloc_state *allocate_alloc_state(void);
void clear_alloc_state(struct alloc_state *s); void clear_alloc_state(struct alloc_state *s);


#endif #endif

View File

@ -1,6 +1,9 @@
#ifndef APPLY_H #ifndef APPLY_H
#define APPLY_H #define APPLY_H


#include "lockfile.h"
#include "string-list.h"

struct repository; struct repository;


enum apply_ws_error_action { enum apply_ws_error_action {

View File

@ -1,6 +1,7 @@
#ifndef ARCHIVE_H #ifndef ARCHIVE_H
#define ARCHIVE_H #define ARCHIVE_H


#include "cache.h"
#include "pathspec.h" #include "pathspec.h"


struct repository; struct repository;

1
attr.h
View File

@ -9,6 +9,7 @@ struct git_attr;
/* opaque structures used internally for attribute collection */ /* opaque structures used internally for attribute collection */
struct all_attrs_item; struct all_attrs_item;
struct attr_stack; struct attr_stack;
struct index_state;


/* /*
* Given a string, return the gitattribute object that * Given a string, return the gitattribute object that

View File

@ -1,6 +1,8 @@
#ifndef BISECT_H #ifndef BISECT_H
#define BISECT_H #define BISECT_H


struct commit_list;

/* /*
* Find bisection. If something is found, `reaches` will be the number of * Find bisection. If something is found, `reaches` will be the number of
* commits that the best commit reaches. `all` will be the count of * commits that the best commit reaches. `all` will be the count of

View File

@ -1,6 +1,19 @@
#ifndef BRANCH_H #ifndef BRANCH_H
#define BRANCH_H #define BRANCH_H


struct strbuf;

enum branch_track {
BRANCH_TRACK_UNSPECIFIED = -1,
BRANCH_TRACK_NEVER = 0,
BRANCH_TRACK_REMOTE,
BRANCH_TRACK_ALWAYS,
BRANCH_TRACK_EXPLICIT,
BRANCH_TRACK_OVERRIDE
};

extern enum branch_track git_branch_track;

/* Functions for acting on the information about branches. */ /* Functions for acting on the information about branches. */


/* /*

View File

@ -4,6 +4,8 @@
#ifndef BULK_CHECKIN_H #ifndef BULK_CHECKIN_H
#define BULK_CHECKIN_H #define BULK_CHECKIN_H


#include "cache.h"

extern int index_bulk_checkin(struct object_id *oid, extern int index_bulk_checkin(struct object_id *oid,
int fd, size_t size, enum object_type type, int fd, size_t size, enum object_type type,
const char *path, unsigned flags); const char *path, unsigned flags);

10
cache.h
View File

@ -917,15 +917,6 @@ enum log_refs_config {
}; };
extern enum log_refs_config log_all_ref_updates; extern enum log_refs_config log_all_ref_updates;


enum branch_track {
BRANCH_TRACK_UNSPECIFIED = -1,
BRANCH_TRACK_NEVER = 0,
BRANCH_TRACK_REMOTE,
BRANCH_TRACK_ALWAYS,
BRANCH_TRACK_EXPLICIT,
BRANCH_TRACK_OVERRIDE
};

enum rebase_setup_type { enum rebase_setup_type {
AUTOREBASE_NEVER = 0, AUTOREBASE_NEVER = 0,
AUTOREBASE_LOCAL, AUTOREBASE_LOCAL,
@ -942,7 +933,6 @@ enum push_default_type {
PUSH_DEFAULT_UNSPECIFIED PUSH_DEFAULT_UNSPECIFIED
}; };


extern enum branch_track git_branch_track;
extern enum rebase_setup_type autorebase; extern enum rebase_setup_type autorebase;
extern enum push_default_type push_default; extern enum push_default_type push_default;



View File

@ -36,6 +36,7 @@ static inline int column_active(unsigned int colopts)
return (colopts & COL_ENABLE_MASK) == COL_ENABLED; return (colopts & COL_ENABLE_MASK) == COL_ENABLED;
} }


struct string_list;
extern void print_columns(const struct string_list *list, unsigned int colopts, extern void print_columns(const struct string_list *list, unsigned int colopts,
const struct column_options *opts); const struct column_options *opts);



View File

@ -4,6 +4,7 @@
#include "git-compat-util.h" #include "git-compat-util.h"
#include "repository.h" #include "repository.h"
#include "string-list.h" #include "string-list.h"
#include "cache.h"


struct commit; struct commit;



View File

@ -1,4 +1,6 @@
#ifndef PRECOMPOSE_UNICODE_H #ifndef PRECOMPOSE_UNICODE_H
#define PRECOMPOSE_UNICODE_H

#include <sys/stat.h> #include <sys/stat.h>
#include <sys/types.h> #include <sys/types.h>
#include <dirent.h> #include <dirent.h>
@ -41,5 +43,4 @@ int precompose_utf8_closedir(PREC_DIR *dirp);
#define DIR PREC_DIR #define DIR PREC_DIR
#endif /* PRECOMPOSE_UNICODE_C */ #endif /* PRECOMPOSE_UNICODE_C */


#define PRECOMPOSE_UNICODE_H
#endif /* PRECOMPOSE_UNICODE_H */ #endif /* PRECOMPOSE_UNICODE_H */

View File

@ -6,6 +6,7 @@
* *
*/ */
#include "cache.h" #include "cache.h"
#include "branch.h"
#include "config.h" #include "config.h"
#include "repository.h" #include "repository.h"
#include "lockfile.h" #include "lockfile.h"

View File

@ -1,6 +1,11 @@
#ifndef CONFIG_H #ifndef CONFIG_H
#define CONFIG_H #define CONFIG_H


#include "hashmap.h"
#include "string-list.h"

struct object_id;

/* git_config_parse_key() returns these negated: */ /* git_config_parse_key() returns these negated: */
#define CONFIG_INVALID_KEY 1 #define CONFIG_INVALID_KEY 1
#define CONFIG_NO_SECTION_OR_NAME 2 #define CONFIG_NO_SECTION_OR_NAME 2

View File

@ -1,6 +1,7 @@
#ifndef CONNECTED_H #ifndef CONNECTED_H
#define CONNECTED_H #define CONNECTED_H


struct object_id;
struct transport; struct transport;


/* /*

View File

@ -7,6 +7,8 @@
#include "string-list.h" #include "string-list.h"


struct index_state; struct index_state;
struct object_id;
struct strbuf;


#define CONV_EOL_RNDTRP_DIE (1<<0) /* Die if CRLF to LF to CRLF is different */ #define CONV_EOL_RNDTRP_DIE (1<<0) /* Die if CRLF to LF to CRLF is different */
#define CONV_EOL_RNDTRP_WARN (1<<1) /* Warn if CRLF to LF to CRLF is different */ #define CONV_EOL_RNDTRP_WARN (1<<1) /* Warn if CRLF to LF to CRLF is different */

View File

@ -1,6 +1,8 @@
#ifndef CSUM_FILE_H #ifndef CSUM_FILE_H
#define CSUM_FILE_H #define CSUM_FILE_H


#include "hash.h"

struct progress; struct progress;


/* A SHA1-protected file */ /* A SHA1-protected file */

View File

@ -4,6 +4,10 @@
#ifndef DIFFCORE_H #ifndef DIFFCORE_H
#define DIFFCORE_H #define DIFFCORE_H


#include "cache.h"

struct diff_options;

/* This header file is internal between diff.c and its diff transformers /* This header file is internal between diff.c and its diff transformers
* (e.g. diffcore-rename, diffcore-pickaxe). Never include this header * (e.g. diffcore-rename, diffcore-pickaxe). Never include this header
* in anything else. * in anything else.

View File

@ -1,6 +1,8 @@
#ifndef DIR_ITERATOR_H #ifndef DIR_ITERATOR_H
#define DIR_ITERATOR_H #define DIR_ITERATOR_H


#include "strbuf.h"

/* /*
* Iterate over a directory tree. * Iterate over a directory tree.
* *

View File

@ -8,6 +8,7 @@
* are. * are.
*/ */
#include "cache.h" #include "cache.h"
#include "branch.h"
#include "repository.h" #include "repository.h"
#include "config.h" #include "config.h"
#include "refs.h" #include "refs.h"

1
fsck.h
View File

@ -6,6 +6,7 @@
#define FSCK_IGNORE 3 #define FSCK_IGNORE 3


struct fsck_options; struct fsck_options;
struct object;


void fsck_set_msg_type(struct fsck_options *options, void fsck_set_msg_type(struct fsck_options *options,
const char *msg_id, const char *msg_type); const char *msg_id, const char *msg_type);

View File

@ -1,6 +1,9 @@
#ifndef FSMONITOR_H #ifndef FSMONITOR_H
#define FSMONITOR_H #define FSMONITOR_H


#include "cache.h"
#include "dir.h"

extern struct trace_key trace_fsmonitor; extern struct trace_key trace_fsmonitor;


/* /*

View File

@ -1,6 +1,8 @@
#ifndef GPG_INTERFACE_H #ifndef GPG_INTERFACE_H
#define GPG_INTERFACE_H #define GPG_INTERFACE_H


struct strbuf;

#define GPG_VERIFY_VERBOSE 1 #define GPG_VERIFY_VERBOSE 1
#define GPG_VERIFY_RAW 2 #define GPG_VERIFY_RAW 2
#define GPG_VERIFY_OMIT_STATUS 4 #define GPG_VERIFY_OMIT_STATUS 4

View File

@ -26,6 +26,9 @@
#ifndef __AC_KHASH_H #ifndef __AC_KHASH_H
#define __AC_KHASH_H #define __AC_KHASH_H


#include "cache.h"
#include "hashmap.h"

#define AC_VERSION_KHASH_H "0.2.8" #define AC_VERSION_KHASH_H "0.2.8"


typedef uint32_t khint32_t; typedef uint32_t khint32_t;

View File

@ -1,6 +1,10 @@
#ifndef LIST_OBJECTS_FILTER_H #ifndef LIST_OBJECTS_FILTER_H
#define LIST_OBJECTS_FILTER_H #define LIST_OBJECTS_FILTER_H


struct list_objects_filter_options;
struct object;
struct oidset;

/* /*
* During list-object traversal we allow certain objects to be * During list-object traversal we allow certain objects to be
* filtered (omitted) from the result. The active filter uses * filtered (omitted) from the result. The active filter uses

View File

@ -1,6 +1,10 @@
#ifndef LIST_OBJECTS_H #ifndef LIST_OBJECTS_H
#define LIST_OBJECTS_H #define LIST_OBJECTS_H


struct commit;
struct object;
struct rev_info;

typedef void (*show_commit_fn)(struct commit *, void *); typedef void (*show_commit_fn)(struct commit *, void *);
typedef void (*show_object_fn)(struct object *, const char *, void *); typedef void (*show_object_fn)(struct object *, const char *, void *);
void traverse_commit_list(struct rev_info *, show_commit_fn, show_object_fn, void *); void traverse_commit_list(struct rev_info *, show_commit_fn, show_object_fn, void *);

View File

@ -5,6 +5,8 @@
#ifndef LL_MERGE_H #ifndef LL_MERGE_H
#define LL_MERGE_H #define LL_MERGE_H


#include "xdiff/xdiff.h"

struct ll_merge_options { struct ll_merge_options {
unsigned virtual_ancestor : 1; unsigned virtual_ancestor : 1;
unsigned variant : 2; /* favor ours, favor theirs, or union merge */ unsigned variant : 2; /* favor ours, favor theirs, or union merge */

View File

@ -1,6 +1,8 @@
#ifndef MAILINFO_H #ifndef MAILINFO_H
#define MAILINFO_H #define MAILINFO_H


#include "strbuf.h"

#define MAX_BOUNDARIES 5 #define MAX_BOUNDARIES 5


struct mailinfo { struct mailinfo {

View File

@ -1,6 +1,8 @@
#ifndef MAILMAP_H #ifndef MAILMAP_H
#define MAILMAP_H #define MAILMAP_H


struct string_list;

int read_mailmap(struct string_list *map, char **repo_abbrev); int read_mailmap(struct string_list *map, char **repo_abbrev);
void clear_mailmap(struct string_list *map); void clear_mailmap(struct string_list *map);



View File

@ -1,8 +1,10 @@
#ifndef MERGE_RECURSIVE_H #ifndef MERGE_RECURSIVE_H
#define MERGE_RECURSIVE_H #define MERGE_RECURSIVE_H


#include "unpack-trees.h"
#include "string-list.h" #include "string-list.h"
#include "unpack-trees.h"

struct commit;


struct merge_options { struct merge_options {
const char *ancestor; const char *ancestor;

View File

@ -2,6 +2,10 @@
#define NOTES_MERGE_H #define NOTES_MERGE_H


#include "notes-utils.h" #include "notes-utils.h"
#include "strbuf.h"

struct commit;
struct object_id;


#define NOTES_MERGE_WORKTREE "NOTES_MERGE_WORKTREE" #define NOTES_MERGE_WORKTREE "NOTES_MERGE_WORKTREE"



View File

@ -3,6 +3,9 @@


#include "notes.h" #include "notes.h"


struct commit_list;
struct object_id;

/* /*
* Create new notes commit from the given notes tree * Create new notes commit from the given notes tree
* *

View File

@ -3,6 +3,9 @@


#include "string-list.h" #include "string-list.h"


struct object_id;
struct strbuf;

/* /*
* Function type for combining two notes annotating the same object. * Function type for combining two notes annotating the same object.
* *

View File

@ -1,6 +1,7 @@
#ifndef OBJECT_STORE_H #ifndef OBJECT_STORE_H
#define OBJECT_STORE_H #define OBJECT_STORE_H


#include "cache.h"
#include "oidmap.h" #include "oidmap.h"
#include "list.h" #include "list.h"
#include "sha1-array.h" #include "sha1-array.h"

View File

@ -1,6 +1,8 @@
#ifndef OBJECT_H #ifndef OBJECT_H
#define OBJECT_H #define OBJECT_H


#include "cache.h"

struct buffer_slab; struct buffer_slab;


struct parsed_object_pool { struct parsed_object_pool {

View File

@ -1,6 +1,7 @@
#ifndef OIDMAP_H #ifndef OIDMAP_H
#define OIDMAP_H #define OIDMAP_H


#include "cache.h"
#include "hashmap.h" #include "hashmap.h"


/* /*

View File

@ -5,6 +5,9 @@
#include "khash.h" #include "khash.h"
#include "pack-objects.h" #include "pack-objects.h"


struct commit;
struct rev_info;

struct bitmap_disk_header { struct bitmap_disk_header {
char magic[4]; char magic[4];
uint16_t version; uint16_t version;

View File

@ -2,6 +2,7 @@
#define PACK_OBJECTS_H #define PACK_OBJECTS_H


#include "object-store.h" #include "object-store.h"
#include "pack.h"


#define DEFAULT_DELTA_CACHE_SIZE (256 * 1024 * 1024) #define DEFAULT_DELTA_CACHE_SIZE (256 * 1024 * 1024)



View File

@ -1,6 +1,12 @@
#ifndef PATCH_IDS_H #ifndef PATCH_IDS_H
#define PATCH_IDS_H #define PATCH_IDS_H


#include "diff.h"
#include "hashmap.h"

struct commit;
struct object_id;

struct patch_id { struct patch_id {
struct hashmap_entry ent; struct hashmap_entry ent;
struct object_id patch_id; struct object_id patch_id;

1
path.h
View File

@ -2,6 +2,7 @@
#define PATH_H #define PATH_H


struct repository; struct repository;
struct strbuf;


/* /*
* The result to all functions which return statically allocated memory may be * The result to all functions which return statically allocated memory may be

View File

@ -1,6 +1,8 @@
#ifndef PATHSPEC_H #ifndef PATHSPEC_H
#define PATHSPEC_H #define PATHSPEC_H


struct index_state;

/* Pathspec magic */ /* Pathspec magic */
#define PATHSPEC_FROMTOP (1<<0) #define PATHSPEC_FROMTOP (1<<0)
#define PATHSPEC_MAXDEPTH (1<<1) #define PATHSPEC_MAXDEPTH (1<<1)

View File

@ -1,7 +1,11 @@
#ifndef PRETTY_H #ifndef PRETTY_H
#define PRETTY_H #define PRETTY_H


#include "cache.h"
#include "string-list.h"

struct commit; struct commit;
struct strbuf;


/* Commit formats */ /* Commit formats */
enum cmit_fmt { enum cmit_fmt {

View File

@ -2,6 +2,8 @@
#define REACHEABLE_H #define REACHEABLE_H


struct progress; struct progress;
struct rev_info;

extern int add_unseen_recent_objects_to_traversal(struct rev_info *revs, extern int add_unseen_recent_objects_to_traversal(struct rev_info *revs,
timestamp_t timestamp); timestamp_t timestamp);
extern void mark_reachable_objects(struct rev_info *revs, int mark_reflog, extern void mark_reachable_objects(struct rev_info *revs, int mark_reflog,

View File

@ -3,6 +3,7 @@


#include "cache.h" #include "cache.h"


struct commit;
struct reflog_walk_info; struct reflog_walk_info;


extern void init_reflog_walk(struct reflog_walk_info **info); extern void init_reflog_walk(struct reflog_walk_info **info);

2
refs.h
View File

@ -3,8 +3,10 @@


struct object_id; struct object_id;
struct ref_store; struct ref_store;
struct repository;
struct strbuf; struct strbuf;
struct string_list; struct string_list;
struct string_list_item;
struct worktree; struct worktree;


/* /*

View File

@ -1,6 +1,7 @@
#ifndef REMOTE_H #ifndef REMOTE_H
#define REMOTE_H #define REMOTE_H


#include "cache.h"
#include "parse-options.h" #include "parse-options.h"
#include "hashmap.h" #include "hashmap.h"
#include "refspec.h" #include "refspec.h"

View File

@ -1,6 +1,8 @@
#ifndef REPOSITORY_H #ifndef REPOSITORY_H
#define REPOSITORY_H #define REPOSITORY_H


#include "path.h"

struct config_set; struct config_set;
struct git_hash_algo; struct git_hash_algo;
struct index_state; struct index_state;

View File

@ -1,6 +1,8 @@
#ifndef RESOLVE_UNDO_H #ifndef RESOLVE_UNDO_H
#define RESOLVE_UNDO_H #define RESOLVE_UNDO_H


#include "cache.h"

struct resolve_undo_info { struct resolve_undo_info {
unsigned int mode[3]; unsigned int mode[3];
struct object_id oid[3]; struct object_id oid[3];

View File

@ -1,6 +1,7 @@
#ifndef REVISION_H #ifndef REVISION_H
#define REVISION_H #define REVISION_H


#include "commit.h"
#include "parse-options.h" #include "parse-options.h"
#include "grep.h" #include "grep.h"
#include "notes.h" #include "notes.h"

View File

@ -3,6 +3,10 @@


#include "string-list.h" #include "string-list.h"


struct child_process;
struct oid_array;
struct ref;

/* Possible values for push_cert field in send_pack_args. */ /* Possible values for push_cert field in send_pack_args. */
#define SEND_PACK_PUSH_CERT_NEVER 0 #define SEND_PACK_PUSH_CERT_NEVER 0
#define SEND_PACK_PUSH_CERT_IF_ASKED 1 #define SEND_PACK_PUSH_CERT_IF_ASKED 1

View File

@ -1,6 +1,11 @@
#ifndef SEQUENCER_H #ifndef SEQUENCER_H
#define SEQUENCER_H #define SEQUENCER_H


#include "cache.h"
#include "strbuf.h"

struct commit;

const char *git_path_commit_editmsg(void); const char *git_path_commit_editmsg(void);
const char *git_path_seq_dir(void); const char *git_path_seq_dir(void);



View File

@ -3,6 +3,8 @@


#include "string-list.h" #include "string-list.h"


struct commit;

struct shortlog { struct shortlog {
struct string_list list; struct string_list list;
int summary; int summary;

View File

@ -1,11 +1,17 @@
#ifndef SUBMODULE_H #ifndef SUBMODULE_H
#define SUBMODULE_H #define SUBMODULE_H


struct repository;
struct diff_options;
struct argv_array; struct argv_array;
struct cache_entry;
struct diff_options;
struct index_state;
struct object_id;
struct oid_array; struct oid_array;
struct pathspec;
struct remote; struct remote;
struct repository;
struct string_list;
struct strbuf;


enum { enum {
RECURSE_SUBMODULES_ONLY = -5, RECURSE_SUBMODULES_ONLY = -5,

View File

@ -2,6 +2,7 @@
#define TEMPFILE_H #define TEMPFILE_H


#include "list.h" #include "list.h"
#include "strbuf.h"


/* /*
* Handle temporary files. * Handle temporary files.

View File

@ -3,6 +3,8 @@


#include "list.h" #include "list.h"


struct strbuf;

enum trailer_where { enum trailer_where {
WHERE_DEFAULT, WHERE_DEFAULT,
WHERE_END, WHERE_END,

View File

@ -1,6 +1,8 @@
#ifndef TREE_WALK_H #ifndef TREE_WALK_H
#define TREE_WALK_H #define TREE_WALK_H


struct strbuf;

struct name_entry { struct name_entry {
const struct object_id *oid; const struct object_id *oid;
const char *path; const char *path;

View File

@ -1,11 +1,14 @@
#ifndef UNPACK_TREES_H #ifndef UNPACK_TREES_H
#define UNPACK_TREES_H #define UNPACK_TREES_H


#include "tree-walk.h" #include "cache.h"
#include "argv-array.h" #include "argv-array.h"
#include "string-list.h"
#include "tree-walk.h"


#define MAX_UNPACK_TREES 8 #define MAX_UNPACK_TREES 8


struct cache_entry;
struct unpack_trees_options; struct unpack_trees_options;
struct exclude_list; struct exclude_list;



2
url.h
View File

@ -1,6 +1,8 @@
#ifndef URL_H #ifndef URL_H
#define URL_H #define URL_H


struct strbuf;

extern int is_url(const char *url); extern int is_url(const char *url);
extern int is_urlschemechar(int first_flag, int ch); extern int is_urlschemechar(int first_flag, int ch);
extern char *url_decode(const char *url); extern char *url_decode(const char *url);

View File

@ -1,4 +1,6 @@
#ifndef URL_MATCH_H #ifndef URL_MATCH_H
#define URL_MATCH_H

#include "string-list.h" #include "string-list.h"


struct url_info { struct url_info {

2
utf8.h
View File

@ -1,6 +1,8 @@
#ifndef GIT_UTF8_H #ifndef GIT_UTF8_H
#define GIT_UTF8_H #define GIT_UTF8_H


struct strbuf;

typedef unsigned int ucs_char_t; /* assuming 32bit int */ typedef unsigned int ucs_char_t; /* assuming 32bit int */


size_t display_mode_esc_sequence_len(const char *s); size_t display_mode_esc_sequence_len(const char *s);

View File

@ -1,6 +1,7 @@
#ifndef WORKTREE_H #ifndef WORKTREE_H
#define WORKTREE_H #define WORKTREE_H


#include "cache.h"
#include "refs.h" #include "refs.h"


struct strbuf; struct strbuf;