Commit b9e87586 by Edward Thomson

blob: add git_blob_filter_options_init

The `git_blob_filter_options_init` function should be included, to allow
callers in FFI environments to let us initialize an options structure
for them.
parent 2a6a2518
...@@ -133,6 +133,18 @@ typedef struct { ...@@ -133,6 +133,18 @@ typedef struct {
#define GIT_BLOB_FILTER_OPTIONS_INIT {GIT_BLOB_FILTER_OPTIONS_VERSION, GIT_BLOB_FILTER_CHECK_FOR_BINARY} #define GIT_BLOB_FILTER_OPTIONS_INIT {GIT_BLOB_FILTER_OPTIONS_VERSION, GIT_BLOB_FILTER_CHECK_FOR_BINARY}
/** /**
* Initialize git_blob_filter_options structure
*
* Initializes a `git_blob_filter_options` with default values. Equivalent
* to creating an instance with `GIT_BLOB_FILTER_OPTIONS_INIT`.
*
* @param opts The `git_blob_filter_options` struct to initialize.
* @param version The struct version; pass `GIT_BLOB_FILTER_OPTIONS_VERSION`.
* @return Zero on success; -1 on failure.
*/
GIT_EXTERN(int) git_blob_filter_options_init(git_blob_filter_options *opts, unsigned int version);
/**
* Get a buffer with the filtered content of a blob. * Get a buffer with the filtered content of a blob.
* *
* This applies filters as if the blob was being checked out to the * This applies filters as if the blob was being checked out to the
......
...@@ -400,6 +400,15 @@ int git_blob_is_binary(const git_blob *blob) ...@@ -400,6 +400,15 @@ int git_blob_is_binary(const git_blob *blob)
return git_buf_text_is_binary(&content); return git_buf_text_is_binary(&content);
} }
int git_blob_filter_options_init(
git_blob_filter_options *opts,
unsigned int version)
{
GIT_INIT_STRUCTURE_FROM_TEMPLATE(opts, version,
git_blob_filter_options, GIT_BLOB_FILTER_OPTIONS_INIT);
return 0;
}
int git_blob_filter( int git_blob_filter(
git_buf *out, git_buf *out,
git_blob *blob, git_blob *blob,
......
...@@ -82,6 +82,11 @@ void test_core_structinit__compare(void) ...@@ -82,6 +82,11 @@ void test_core_structinit__compare(void)
git_blame_options, GIT_BLAME_OPTIONS_VERSION, \ git_blame_options, GIT_BLAME_OPTIONS_VERSION, \
GIT_BLAME_OPTIONS_INIT, git_blame_options_init); GIT_BLAME_OPTIONS_INIT, git_blame_options_init);
/* blob_filter_options */
CHECK_MACRO_FUNC_INIT_EQUAL( \
git_blob_filter_options, GIT_BLOB_FILTER_OPTIONS_VERSION, \
GIT_BLOB_FILTER_OPTIONS_INIT, git_blob_filter_options_init);
/* checkout */ /* checkout */
CHECK_MACRO_FUNC_INIT_EQUAL( \ CHECK_MACRO_FUNC_INIT_EQUAL( \
git_checkout_options, GIT_CHECKOUT_OPTIONS_VERSION, \ git_checkout_options, GIT_CHECKOUT_OPTIONS_VERSION, \
......
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