Revision

Revision is an index that indicates the version of an object’s state. It is represented by a 32-bit unsigned integer (u32).

The valid range for a revision is [1, 2^32 - 2].

Two special u32 values are reserved for specific purposes:

  • u32::MIN (0): Indicates that the object does not exist or refers to the latest revision of the object.
  • u32::MAX (2^32 - 1): Indicates that the object has been destroyed.

When an object is created, it starts with a revision of 1. As the object evolves or undergoes changes, its revision is incremented to reflect each state change.