summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--docs/cmap_api.md20
-rw-r--r--stc/clist.h4
2 files changed, 14 insertions, 10 deletions
diff --git a/docs/cmap_api.md b/docs/cmap_api.md
index 75f2ac21..ee20793e 100644
--- a/docs/cmap_api.md
+++ b/docs/cmap_api.md
@@ -227,17 +227,17 @@ int main()
cmap_v3_put(&vecs, (Vec3i){100, 100, 100}, 4);
c_foreach (i, cmap_v3, vecs)
- printf("{%4d, %4d, %4d}: %d\n", i.ref->first.x, i.ref->first.y, i.ref->first.z, i.ref->second);
+ printf("{ %3d, %3d, %3d }: %d\n", i.ref->first.x, i.ref->first.y, i.ref->first.z, i.ref->second);
cmap_v3_del(&vecs);
}
```
Output:
```c
-{ 100, 0, 0}: 1
-{ 0, 0, 100}: 3
-{ 100, 100, 100}: 4
-{ 0, 100, 0}: 2
+{ 100, 0, 0 }: 1
+{ 0, 0, 100 }: 3
+{ 100, 100, 100 }: 4
+{ 0, 100, 0 }: 2
```
### Example 4
@@ -260,17 +260,17 @@ int main()
cmap_iv_put(&vecs, 4, (Vec3i){100, 100, 100});
c_foreach (i, cmap_iv, vecs)
- printf("%d: {%4d, %4d, %4d}\n", i.ref->first, i.ref->second.x, i.ref->second.y, i.ref->second.z);
+ printf("%d: { %3d, %3d, %3d }\n", i.ref->first, i.ref->second.x, i.ref->second.y, i.ref->second.z);
cmap_iv_del(&vecs);
}
```
Output:
```c
-4: { 100, 100, 100}
-3: { 0, 0, 100}
-2: { 0, 100, 0}
-1: { 100, 0, 0}
+4: { 100, 100, 100 }
+3: { 0, 0, 100 }
+2: { 0, 100, 0 }
+1: { 100, 0, 0 }
```
### Example 5
diff --git a/stc/clist.h b/stc/clist.h
index 941653ff..8454984a 100644
--- a/stc/clist.h
+++ b/stc/clist.h
@@ -166,6 +166,10 @@ STC_API size_t _clist_size(const clist_void* self);
clist_##X##_node_t* node = _clist_node(X, it->ref); \
it->ref = ((it->_state += node == *it->_last) == 1) ? NULL : &node->next->value; \
} \
+ STC_INLINE clist_##X##_iter_t \
+ clist_##X##_fwd(clist_##X##_iter_t it, size_t n) { \
+ c_forrange_1 (n) clist_##X##_next(&it); return it; \
+ } \
STC_INLINE clist_##X##_value_t* \
clist_##X##_itval(clist_##X##_iter_t it) {return it.ref;} \
\