summaryrefslogtreecommitdiffhomepage
path: root/docs/csptr_api.md
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2021-06-07 21:38:27 +0200
committerGitHub <[email protected]>2021-06-07 21:38:27 +0200
commit42e9e49a4d2882cb5463a27bea5718fd2579b2db (patch)
treebac3a4f390b9548b922e18cef5feea2e9bf0b341 /docs/csptr_api.md
parent28596b49a281d69ce2e28e0c5d7cec9620e0dc80 (diff)
downloadSTC-modified-42e9e49a4d2882cb5463a27bea5718fd2579b2db.tar.gz
STC-modified-42e9e49a4d2882cb5463a27bea5718fd2579b2db.zip
Update csptr_api.md
Diffstat (limited to 'docs/csptr_api.md')
-rw-r--r--docs/csptr_api.md9
1 files changed, 4 insertions, 5 deletions
diff --git a/docs/csptr_api.md b/docs/csptr_api.md
index 6665b23b..7776d345 100644
--- a/docs/csptr_api.md
+++ b/docs/csptr_api.md
@@ -69,9 +69,8 @@ bool csptr_X_equals(csptr_X* x, csptr_X* y);
typedef struct { cstr name, last; } Person;
-Person* Person_make(Person* p, const char* name, const char* last) {
- p->name = cstr_from(name), p->last = cstr_from(last);
- return p;
+Person Person_init(const char* name, const char* last) {
+ return (Person){.name = cstr_from(name), .last = cstr_from(last)};
}
void Person_del(Person* p) {
printf("Destroy: %s %s\n", p->name.str, p->last.str);
@@ -81,9 +80,9 @@ void Person_del(Person* p) {
using_csptr(pe, Person, c_no_compare, Person_del);
int main() {
- csptr_pe p = csptr_pe_from(Person_make(c_new(Person), "John", "Smiths"));
+ csptr_pe p = csptr_pe_make(Person_init("John", "Smiths"));
csptr_pe q = csptr_pe_clone(p); // means: share the pointer
-
+
printf("Person: %s %s. uses: %zu\n", p.get->name.str, p.get->last.str, *p.use_count);
csptr_pe_del(&p);