Confirmed users
398
edits
| (One intermediate revision by the same user not shown) | |||
| Line 9: | Line 9: | ||
The scope of the code of readers is far smaller than the modifier. So, it is more easy to change the way of accessing pointers at readers side. The readers are only the layout engine and the renderer. | The scope of the code of readers is far smaller than the modifier. So, it is more easy to change the way of accessing pointers at readers side. The readers are only the layout engine and the renderer. | ||
* versioned pointer | |||
** Hold pointers for objects | |||
* const verioned pointer | * const verioned pointer | ||
** For read-only | ** For read-only | ||
| Line 16: | Line 17: | ||
== Copy On Write == | == Copy On Write == | ||
DOM objects are copy-on-write; a.k.a. COW, for modification. A new version is start by a shadow of the previous version, an object are copied/cloned from the previous version at first time of being modified for the current version. Then all changes are applied on the new instance. With COW, the reader and modifier are not interactive, to make VersionedDOM simple and easy. | DOM objects are copy-on-write; a.k.a. COW, for modification of attributes other than versioned pointers. A new version is start by a shadow of the previous version, an object are copied/cloned from the previous version at first time of being modified for the current version. Then all changes are applied on the new instance. With COW, the reader and modifier are not interactive, to make VersionedDOM simple and easy. | ||
== Version Manager == | == Version Manager == | ||