summaryrefslogtreecommitdiffhomepage
path: root/docs/carc_api.md
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2022-11-06 12:57:47 +0100
committerTyge Løvset <[email protected]>2022-11-06 12:57:47 +0100
commitb69006463de7b3f11d974bdddb5782282482f515 (patch)
tree6f182dc201164fead2b5b1a094e6e8a2b43dc0a1 /docs/carc_api.md
parentc230e4cd830de22fad2f7085d968d905dadc7418 (diff)
downloadSTC-modified-b69006463de7b3f11d974bdddb5782282482f515.tar.gz
STC-modified-b69006463de7b3f11d974bdddb5782282482f515.zip
Improved documentation of template parameters for all containers.
Diffstat (limited to 'docs/carc_api.md')
-rw-r--r--docs/carc_api.md10
1 files changed, 7 insertions, 3 deletions
diff --git a/docs/carc_api.md b/docs/carc_api.md
index 04856622..18bf52c7 100644
--- a/docs/carc_api.md
+++ b/docs/carc_api.md
@@ -20,11 +20,15 @@ See similar c++ class [std::shared_ptr](https://en.cppreference.com/w/cpp/memory
## Header file and declaration
```c
+#define i_type // full typename of the carc
#define i_val // value: REQUIRED
-#define i_cmp // three-way compare two i_val* : REQUIRED IF i_val is a non-integral type
-#define i_valdrop // destroy value func - defaults to empty destruct
-#define i_tag // defaults to i_val
+
+#define i_valraw // convertion "raw" type - defaults to i_val
+#define i_valto // convertion func i_val* => i_valraw: REQUIRED IF i_valraw defined.
+#define i_valfrom // convertion func i_valraw => i_val
+
#define i_opt c_no_atomic // Non-atomic reference counting, like Rust Rc.
+#define i_tag // alternative typename: carc_{i_tag}. i_tag defaults to i_val
#include <stc/carc.h>
```
`X` should be replaced by the value of `i_tag` in all of the following documentation.