summaryrefslogtreecommitdiffhomepage
path: root/misc/examples/printspan.c
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2023-03-27 19:57:09 +0200
committerTyge Løvset <[email protected]>2023-03-27 19:57:09 +0200
commite35036deef4fc8f17cc9221e2e666dfdb832ba78 (patch)
treeb41e45015be7454ef3f82092b558da6b365d6a57 /misc/examples/printspan.c
parentede39bc98a758674485796174ea860515ec281e6 (diff)
downloadSTC-modified-e35036deef4fc8f17cc9221e2e666dfdb832ba78.tar.gz
STC-modified-e35036deef4fc8f17cc9221e2e666dfdb832ba78.zip
More RAII cleanup in examples. Also removed gauss1.c and new_deq.c
Diffstat (limited to 'misc/examples/printspan.c')
-rw-r--r--misc/examples/printspan.c52
1 files changed, 24 insertions, 28 deletions
diff --git a/misc/examples/printspan.c b/misc/examples/printspan.c
index 127b07b9..7459ac77 100644
--- a/misc/examples/printspan.c
+++ b/misc/examples/printspan.c
@@ -16,7 +16,8 @@ using_cspan(intspan, int, 1);
void printMe(intspan container) {
printf("%d:", (int)cspan_size(&container));
- c_foreach (e, intspan, container) printf(" %d", *e.ref);
+ c_foreach (e, intspan, container)
+ printf(" %d", *e.ref);
puts("");
}
@@ -31,31 +32,26 @@ int main()
intspan sp2 = cspan_from_array(arr);
printMe( (intspan)cspan_subspan(&sp2, 1, 4) );
- cvec_int vec;
- cstack_int stk;
- cdeq_int deq;
- csset_str set;
- c_defer(
- cvec_int_drop(&vec),
- cstack_int_drop(&stk),
- cdeq_int_drop(&deq),
- csset_str_drop(&set)
- ) {
- vec = c_make(cvec_int, {1, 2, 3, 4, 5});
- printMe( (intspan)cspan_from(&vec) );
-
- printMe( sp2 );
-
- stk = c_make(cstack_int, {1, 2, 3, 4, 5, 6, 7});
- printMe( (intspan)cspan_from(&stk) );
-
- deq = c_make(cdeq_int, {1, 2, 3, 4, 5, 6, 7, 8});
- printMe( (intspan)cspan_from(&deq) );
-
- set = c_make(csset_str, {"5", "7", "4", "3", "8", "2", "1", "9", "6"});
- printf("%d:", (int)csset_str_size(&set));
- c_foreach (e, csset_str, set)
- printf(" %s", cstr_str(e.ref));
- puts("");
- }
+ cvec_int vec = c_make(cvec_int, {1, 2, 3, 4, 5});
+ printMe( (intspan)cspan_from(&vec) );
+
+ printMe( sp2 );
+
+ cstack_int stk = c_make(cstack_int, {1, 2, 3, 4, 5, 6, 7});
+ printMe( (intspan)cspan_from(&stk) );
+
+ cdeq_int deq = c_make(cdeq_int, {1, 2, 3, 4, 5, 6, 7, 8});
+ printMe( (intspan)cspan_from(&deq) );
+
+ csset_str set = c_make(csset_str, {"5", "7", "4", "3", "8", "2", "1", "9", "6"});
+ printf("%d:", (int)csset_str_size(&set));
+ c_foreach (e, csset_str, set)
+ printf(" %s", cstr_str(e.ref));
+ puts("");
+
+ // cleanup
+ cvec_int_drop(&vec);
+ cstack_int_drop(&stk);
+ cdeq_int_drop(&deq);
+ csset_str_drop(&set);
}