attr: expose and rename accessor functions
Right now, the functions which determine the current system and global gitattributes files are not exposed. We'd like to use them in a future commit, but they're not ideally named. Rename them to something more suitable as a public interface, expose them, and document them. Signed-off-by: brian m. carlson <bk2204@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
cdd489eaf9
commit
15780bb4f0
14
attr.c
14
attr.c
@ -870,7 +870,7 @@ static struct attr_stack *read_attr(struct index_state *istate,
|
|||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char *git_etc_gitattributes(void)
|
const char *git_attr_system_file(void)
|
||||||
{
|
{
|
||||||
static const char *system_wide;
|
static const char *system_wide;
|
||||||
if (!system_wide)
|
if (!system_wide)
|
||||||
@ -878,7 +878,7 @@ static const char *git_etc_gitattributes(void)
|
|||||||
return system_wide;
|
return system_wide;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char *get_home_gitattributes(void)
|
const char *git_attr_global_file(void)
|
||||||
{
|
{
|
||||||
if (!git_attributes_file)
|
if (!git_attributes_file)
|
||||||
git_attributes_file = xdg_config_home("attributes");
|
git_attributes_file = xdg_config_home("attributes");
|
||||||
@ -886,7 +886,7 @@ static const char *get_home_gitattributes(void)
|
|||||||
return git_attributes_file;
|
return git_attributes_file;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int git_attr_system(void)
|
int git_attr_system_is_enabled(void)
|
||||||
{
|
{
|
||||||
return !git_env_bool("GIT_ATTR_NOSYSTEM", 0);
|
return !git_env_bool("GIT_ATTR_NOSYSTEM", 0);
|
||||||
}
|
}
|
||||||
@ -920,14 +920,14 @@ static void bootstrap_attr_stack(struct index_state *istate,
|
|||||||
push_stack(stack, e, NULL, 0);
|
push_stack(stack, e, NULL, 0);
|
||||||
|
|
||||||
/* system-wide frame */
|
/* system-wide frame */
|
||||||
if (git_attr_system()) {
|
if (git_attr_system_is_enabled()) {
|
||||||
e = read_attr_from_file(git_etc_gitattributes(), flags);
|
e = read_attr_from_file(git_attr_system_file(), flags);
|
||||||
push_stack(stack, e, NULL, 0);
|
push_stack(stack, e, NULL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* home directory */
|
/* home directory */
|
||||||
if (get_home_gitattributes()) {
|
if (git_attr_global_file()) {
|
||||||
e = read_attr_from_file(get_home_gitattributes(), flags);
|
e = read_attr_from_file(git_attr_global_file(), flags);
|
||||||
push_stack(stack, e, NULL, 0);
|
push_stack(stack, e, NULL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
9
attr.h
9
attr.h
@ -227,4 +227,13 @@ void git_attr_set_direction(enum git_attr_direction new_direction);
|
|||||||
|
|
||||||
void attr_start(void);
|
void attr_start(void);
|
||||||
|
|
||||||
|
/* Return the system gitattributes file. */
|
||||||
|
const char *git_attr_system_file(void);
|
||||||
|
|
||||||
|
/* Return the global gitattributes file, if any. */
|
||||||
|
const char *git_attr_global_file(void);
|
||||||
|
|
||||||
|
/* Return whether the system gitattributes file is enabled and should be used. */
|
||||||
|
int git_attr_system_is_enabled(void);
|
||||||
|
|
||||||
#endif /* ATTR_H */
|
#endif /* ATTR_H */
|
||||||
|
Reference in New Issue
Block a user