diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-01-11 16:51:01 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-01-11 16:51:01 -0800 |
commit | ab60f2ce2ddd1e0199dbc778bfb054a532badde0 (patch) | |
tree | cccd78e5b7c07deab47eef4f86f3cef15c0927a8 | |
parent | d0f945622b11319b857061c1857d7e9ba94ceb14 (diff) | |
parent | 5062f9e1b5072adad3b40f1f9f29338f8fdd301d (diff) | |
download | git-ab60f2ce2ddd1e0199dbc778bfb054a532badde0.tar.gz |
Merge branch 'as/api-allocation-doc' into maint
* as/api-allocation-doc:
api-allocation-growing.txt: encourage better variable naming
-rw-r--r-- | Documentation/technical/api-allocation-growing.txt | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Documentation/technical/api-allocation-growing.txt b/Documentation/technical/api-allocation-growing.txt index 43dbe09f73..542946b1ba 100644 --- a/Documentation/technical/api-allocation-growing.txt +++ b/Documentation/technical/api-allocation-growing.txt @@ -5,7 +5,9 @@ Dynamically growing an array using realloc() is error prone and boring. Define your array with: -* a pointer (`ary`) that points at the array, initialized to `NULL`; +* a pointer (`item`) that points at the array, initialized to `NULL` + (although please name the variable based on its contents, not on its + type); * an integer variable (`alloc`) that keeps track of how big the current allocation is, initialized to `0`; @@ -13,22 +15,22 @@ Define your array with: * another integer variable (`nr`) to keep track of how many elements the array currently has, initialized to `0`. -Then before adding `n`th element to the array, call `ALLOC_GROW(ary, n, +Then before adding `n`th element to the item, call `ALLOC_GROW(item, n, alloc)`. This ensures that the array can hold at least `n` elements by calling `realloc(3)` and adjusting `alloc` variable. ------------ -sometype *ary; +sometype *item; size_t nr; size_t alloc for (i = 0; i < nr; i++) - if (we like ary[i] already) + if (we like item[i] already) return; /* we did not like any existing one, so add one */ -ALLOC_GROW(ary, nr + 1, alloc); -ary[nr++] = value you like; +ALLOC_GROW(item, nr + 1, alloc); +item[nr++] = value you like; ------------ You are responsible for updating the `nr` variable. |