The `is_pseudoref_syntax()` function is static, since it is only used within `refs.c`. In the following commit, we will use this function to provide an utility to add pseudorefs to the loose refs cache. So let's expose this function via `refs.h`. Signed-off-by: Karthik Nayak <karthik.188@xxxxxxxxx> --- refs.c | 2 +- refs.h | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/refs.c b/refs.c index 2f58a3460a..5999605230 100644 --- a/refs.c +++ b/refs.c @@ -827,7 +827,7 @@ int is_per_worktree_ref(const char *refname) starts_with(refname, "refs/rewritten/"); } -static int is_pseudoref_syntax(const char *refname) +int is_pseudoref_syntax(const char *refname) { const char *c; diff --git a/refs.h b/refs.h index ff113bb12a..f1bbad83fb 100644 --- a/refs.h +++ b/refs.h @@ -846,6 +846,12 @@ const char **hidden_refs_to_excludes(const struct strvec *hide_refs); /* Is this a per-worktree ref living in the refs/ namespace? */ int is_per_worktree_ref(const char *refname); +/* + * Check whether a refname matches the pseudoref syntax. This is a surface + * level check and can present false positives. + */ +int is_pseudoref_syntax(const char *refname); + /* Describes how a refname relates to worktrees */ enum ref_worktree_type { REF_WORKTREE_CURRENT, /* implicitly per worktree, eg. HEAD or -- 2.43.GIT