equal
deleted
inserted
replaced
6 #if 0 // reenable when needed |
6 #if 0 // reenable when needed |
7 /** CAutoCopyPtrT - kind of CoW (Copy on Write) pointer. |
7 /** CAutoCopyPtrT - kind of CoW (Copy on Write) pointer. |
8 * It is non-invasive smart pointer (reference counter is held outside |
8 * It is non-invasive smart pointer (reference counter is held outside |
9 * of Tdata). |
9 * of Tdata). |
10 * When copied, its new copy shares the same underlaying structure Tdata. |
10 * When copied, its new copy shares the same underlaying structure Tdata. |
11 * When dereferenced, its behavior depends on 2 factors: |
11 * When dereferenced, its behaviour depends on 2 factors: |
12 * - whether the data is shared (used by more than one pointer) |
12 * - whether the data is shared (used by more than one pointer) |
13 * - type of access (read/write) |
13 * - type of access (read/write) |
14 * When shared pointer is dereferenced for write, new clone of Tdata |
14 * When shared pointer is dereferenced for write, new clone of Tdata |
15 * is made first. |
15 * is made first. |
16 * Can't be used for polymorphic data types (interfaces). |
16 * Can't be used for polymorphic data types (interfaces). |