Commit 158a42a5 by Carlos Martín Nieto

config: specify how we match the regular expressions

We do it the same as git does: case-sensitively on the normalized form of the
variable name.

While here also specify that we're case-sensitive on the values when handling
the values when setting or deleting multivars.
parent 990d2b85
...@@ -398,6 +398,9 @@ GIT_EXTERN(int) git_config_get_string_buf(git_buf *out, const git_config *cfg, c ...@@ -398,6 +398,9 @@ GIT_EXTERN(int) git_config_get_string_buf(git_buf *out, const git_config *cfg, c
* *
* The callback will be called on each variable found * The callback will be called on each variable found
* *
* The regular expression is applied case-sensitively on the normalized form of
* the variable name: the case-insensitive parts are lower-case.
*
* @param cfg where to look for the variable * @param cfg where to look for the variable
* @param name the variable's name * @param name the variable's name
* @param regexp regular expression to filter which variables we're * @param regexp regular expression to filter which variables we're
...@@ -410,6 +413,9 @@ GIT_EXTERN(int) git_config_get_multivar_foreach(const git_config *cfg, const cha ...@@ -410,6 +413,9 @@ GIT_EXTERN(int) git_config_get_multivar_foreach(const git_config *cfg, const cha
/** /**
* Get each value of a multivar * Get each value of a multivar
* *
* The regular expression is applied case-sensitively on the normalized form of
* the variable name: the case-insensitive parts are lower-case.
*
* @param out pointer to store the iterator * @param out pointer to store the iterator
* @param cfg where to look for the variable * @param cfg where to look for the variable
* @param name the variable's name * @param name the variable's name
...@@ -487,6 +493,8 @@ GIT_EXTERN(int) git_config_set_string(git_config *cfg, const char *name, const c ...@@ -487,6 +493,8 @@ GIT_EXTERN(int) git_config_set_string(git_config *cfg, const char *name, const c
/** /**
* Set a multivar in the local config file. * Set a multivar in the local config file.
* *
* The regular expression is applied case-sensitively on the value.
*
* @param cfg where to look for the variable * @param cfg where to look for the variable
* @param name the variable's name * @param name the variable's name
* @param regexp a regular expression to indicate which values to replace * @param regexp a regular expression to indicate which values to replace
...@@ -506,6 +514,8 @@ GIT_EXTERN(int) git_config_delete_entry(git_config *cfg, const char *name); ...@@ -506,6 +514,8 @@ GIT_EXTERN(int) git_config_delete_entry(git_config *cfg, const char *name);
/** /**
* Deletes one or several entries from a multivar in the local config file. * Deletes one or several entries from a multivar in the local config file.
* *
* The regular expression is applied case-sensitively on the value.
*
* @param cfg where to look for the variables * @param cfg where to look for the variables
* @param name the variable's name * @param name the variable's name
* @param regexp a regular expression to indicate which values to delete * @param regexp a regular expression to indicate which values to delete
...@@ -552,6 +562,9 @@ GIT_EXTERN(int) git_config_iterator_new(git_config_iterator **out, const git_con ...@@ -552,6 +562,9 @@ GIT_EXTERN(int) git_config_iterator_new(git_config_iterator **out, const git_con
* Use `git_config_next` to advance the iteration and * Use `git_config_next` to advance the iteration and
* `git_config_iterator_free` when done. * `git_config_iterator_free` when done.
* *
* The regular expression is applied case-sensitively on the normalized form of
* the variable name: the case-insensitive parts are lower-case.
*
* @param out pointer to store the iterator * @param out pointer to store the iterator
* @param cfg where to ge the variables from * @param cfg where to ge the variables from
* @param regexp regular expression to match the names * @param regexp regular expression to match the names
...@@ -568,6 +581,9 @@ GIT_EXTERN(int) git_config_iterator_glob_new(git_config_iterator **out, const gi ...@@ -568,6 +581,9 @@ GIT_EXTERN(int) git_config_iterator_glob_new(git_config_iterator **out, const gi
* The pointers passed to the callback are only valid as long as the * The pointers passed to the callback are only valid as long as the
* iteration is ongoing. * iteration is ongoing.
* *
* The regular expression is applied case-sensitively on the normalized form of
* the variable name: the case-insensitive parts are lower-case.
*
* @param cfg where to get the variables from * @param cfg where to get the variables from
* @param regexp regular expression to match against config names * @param regexp regular expression to match against config names
* @param callback the function to call on each variable * @param callback the function to call on each variable
...@@ -693,6 +709,9 @@ GIT_EXTERN(int) git_config_parse_path(git_buf *out, const char *value); ...@@ -693,6 +709,9 @@ GIT_EXTERN(int) git_config_parse_path(git_buf *out, const char *value);
* This behaviors like `git_config_foreach_match` except instead of all config * This behaviors like `git_config_foreach_match` except instead of all config
* entries it just enumerates through the given backend entry. * entries it just enumerates through the given backend entry.
* *
* The regular expression is applied case-sensitively on the normalized form of
* the variable name: the case-insensitive parts are lower-case.
*
* @param backend where to get the variables from * @param backend where to get the variables from
* @param regexp regular expression to match against config names (can be NULL) * @param regexp regular expression to match against config names (can be NULL)
* @param callback the function to call on each variable * @param callback the function to call on each variable
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment