Immutable authored slot order with persistent structural sharing.
More...
#include <clip_launch.hpp>
|
| class | Iterator |
| | Forward iterator that retains raw or persistent slot storage. More...
|
|
| | SlotList () |
| | Constructs an empty list.
|
| | SlotList (std::vector< Slot > slots) |
| | Takes ownership of slots in authored order.
|
| | SlotList (std::initializer_list< Slot > slots) |
| | Copies slots in authored order.
|
| std::size_t | size () const noexcept |
| | Returns the number of authored slots.
|
| bool | empty () const noexcept |
| | Returns whether the list contains no slots.
|
| const Slot & | operator[] (std::size_t index) const noexcept |
| | Borrows the slot at index; index must be less than size().
|
| const Slot & | front () const noexcept |
| | Borrows the first slot; the list must be nonempty.
|
| const Slot & | back () const noexcept |
| | Borrows the last slot; the list must be nonempty.
|
| const Slot * | find (ItemId id) const noexcept |
| | Finds a slot by identity, or returns null.
|
| Iterator | begin () const noexcept |
| | Returns the first iterator in authored order.
|
| Iterator | end () const noexcept |
| | Returns the end sentinel.
|
| bool | shares_storage_with (const SlotList &other) const noexcept |
| | Reports whether both snapshots share their complete backing store.
|
| bool | operator== (const SlotList &other) const noexcept |
| | Compares authored slot values in order.
|
Immutable authored slot order with persistent structural sharing.
Fresh Scene values may be assembled from a vector. A Sequence-owned Scene uses a persistent AVL-backed store, so edits path-copy affected index paths and share untouched nodes with prior snapshots.
◆ SlotList() [1/3]
| pulp::timeline::SlotList::SlotList |
( |
| ) |
|
Constructs an empty list.
◆ SlotList() [2/3]
| pulp::timeline::SlotList::SlotList |
( |
std::vector< Slot > | slots | ) |
|
Takes ownership of slots in authored order.
◆ SlotList() [3/3]
| pulp::timeline::SlotList::SlotList |
( |
std::initializer_list< Slot > | slots | ) |
|
Copies slots in authored order.
◆ back()
| const Slot & pulp::timeline::SlotList::back |
( |
| ) |
const |
|
inlinenoexcept |
Borrows the last slot; the list must be nonempty.
◆ begin()
| Iterator pulp::timeline::SlotList::begin |
( |
| ) |
const |
|
noexcept |
Returns the first iterator in authored order.
◆ empty()
| bool pulp::timeline::SlotList::empty |
( |
| ) |
const |
|
inlinenoexcept |
Returns whether the list contains no slots.
◆ end()
| Iterator pulp::timeline::SlotList::end |
( |
| ) |
const |
|
noexcept |
Returns the end sentinel.
◆ find()
| const Slot * pulp::timeline::SlotList::find |
( |
ItemId | id | ) |
const |
|
noexcept |
Finds a slot by identity, or returns null.
◆ front()
| const Slot & pulp::timeline::SlotList::front |
( |
| ) |
const |
|
inlinenoexcept |
Borrows the first slot; the list must be nonempty.
◆ operator==()
| bool pulp::timeline::SlotList::operator== |
( |
const SlotList & | other | ) |
const |
|
noexcept |
Compares authored slot values in order.
◆ operator[]()
| const Slot & pulp::timeline::SlotList::operator[] |
( |
std::size_t | index | ) |
const |
|
noexcept |
Borrows the slot at index; index must be less than size().
◆ shares_storage_with()
| bool pulp::timeline::SlotList::shares_storage_with |
( |
const SlotList & | other | ) |
const |
|
noexcept |
Reports whether both snapshots share their complete backing store.
◆ size()
| std::size_t pulp::timeline::SlotList::size |
( |
| ) |
const |
|
noexcept |
Returns the number of authored slots.
◆ detail::SlotListAccess
| friend class detail::SlotListAccess |
|
friend |
The documentation for this class was generated from the following file:
- /home/runner/work/pulp/pulp/core/timeline/include/pulp/timeline/clip_launch.hpp