diff options
author | nulltoken <emeric.fermas@gmail.com> | 2012-10-01 11:58:15 +0200 |
---|---|---|
committer | nulltoken <emeric.fermas@gmail.com> | 2012-10-25 17:42:35 +0200 |
commit | 3a14d3e2bca4f1af7de978decda1c7ca74ffd3bf (patch) | |
tree | cf8e77e397586dad5eec5879afc0bbd1e33f93fa /src/buffer.h | |
parent | fb39b3a54cfedd1e414dc86f6ff5f9af9190c97b (diff) | |
download | libgit2-3a14d3e2bca4f1af7de978decda1c7ca74ffd3bf.tar.gz |
buf: introduce git_buf_splice()
Diffstat (limited to 'src/buffer.h')
-rw-r--r-- | src/buffer.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/buffer.h b/src/buffer.h index 2aae06c7c..a2896d486 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -158,4 +158,29 @@ void git_buf_unescape(git_buf *buf); /* Write data as base64 encoded in buffer */ int git_buf_put_base64(git_buf *buf, const char *data, size_t len); +/* + * Insert, remove or replace a portion of the buffer. + * + * @param buf The buffer to work with + * + * @param where The location in the buffer where the transformation + * should be applied. + * + * @param nb_to_remove The number of chars to be removed. 0 to not + * remove any character in the buffer. + * + * @param data A pointer to the data which should be inserted. + * + * @param nb_to_insert The number of chars to be inserted. 0 to not + * insert any character from the buffer. + * + * @return 0 or an error code. + */ +int git_buf_splice( + git_buf *buf, + size_t where, + size_t nb_to_remove, + const char *data, + size_t nb_to_insert); + #endif |