File tree Expand file tree Collapse file tree 1 file changed +29
-1
lines changed Expand file tree Collapse file tree 1 file changed +29
-1
lines changed Original file line number Diff line number Diff line change @@ -8,4 +8,32 @@ binding according to the `free_interface` abstract interface defined in
88` sp_resource_m ` . The user-defined ` free ` subroutine must free the associated
99resource, which usually means deallocating the associated memory.
1010
11- ![ smart-pointers-class-diagram] ( https://user-images.githubusercontent.com/13108868/192410592-19c6e194-ac3e-4f5c-a308-33b2e10d69a7.png )
11+ ``` mermaid
12+ ---
13+ title: Smart Pointers Class Diagram
14+ ---
15+ classDiagram
16+
17+ class sp_resource_t {
18+ free()
19+ }
20+ <<Abstract>> sp_resource_t
21+ sp_resource_t--*sp_reference_counter_t
22+
23+ class sp_reference_counter_t {
24+ -count_: integer, pointer
25+ -object_: sp_resource_t
26+ grab()
27+ release()
28+ }
29+ sp_reference_counter_t--*sp_smart_pointer_t
30+
31+ class sp_smart_pointer_t {
32+ -counter_:counter_t
33+ release_handle()
34+ start_counter()
35+ }
36+ <<Abstract>> sp_smart_pointer_t
37+ sp_smart_pointer_t--|>sp_resource_t
38+
39+ ```
You can’t perform that action at this time.
0 commit comments