summaryrefslogtreecommitdiff
path: root/strbuf.h
diff options
context:
space:
mode:
authorPaul-Sebastian Ungureanu <ungureanupaulsebastian@gmail.com>2019-02-25 23:16:07 (GMT)
committerJunio C Hamano <gitster@pobox.com>2019-02-28 23:03:46 (GMT)
commit5ef264dbdbc48b44ad5fc37e7542f3dc70e3e8c5 (patch)
tree7cdcd347f866864ddd78f5faac397751624e04f3 /strbuf.h
parente71c4a88f65ca1d325f52b19bf79c3660eab50f7 (diff)
downloadgit-5ef264dbdbc48b44ad5fc37e7542f3dc70e3e8c5.zip
git-5ef264dbdbc48b44ad5fc37e7542f3dc70e3e8c5.tar.gz
git-5ef264dbdbc48b44ad5fc37e7542f3dc70e3e8c5.tar.bz2
strbuf.c: add `strbuf_insertf()` and `strbuf_vinsertf()`
Implement `strbuf_insertf()` and `strbuf_vinsertf()` to insert data using a printf format string. Original-idea-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Paul-Sebastian Ungureanu <ungureanupaulsebastian@gmail.com> Helped-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'strbuf.h')
-rw-r--r--strbuf.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/strbuf.h b/strbuf.h
index be02150..8f8fe01 100644
--- a/strbuf.h
+++ b/strbuf.h
@@ -245,6 +245,15 @@ void strbuf_addchars(struct strbuf *sb, int c, size_t n);
void strbuf_insert(struct strbuf *sb, size_t pos, const void *, size_t);
/**
+ * Insert data to the given position of the buffer giving a printf format
+ * string. The contents will be shifted, not overwritten.
+ */
+void strbuf_vinsertf(struct strbuf *sb, size_t pos, const char *fmt,
+ va_list ap);
+
+void strbuf_insertf(struct strbuf *sb, size_t pos, const char *fmt, ...);
+
+/**
* Remove given amount of data from a given position of the buffer.
*/
void strbuf_remove(struct strbuf *sb, size_t pos, size_t len);