T get() const // Get element at cursor void set(const T& t) // Set element at cursor to t T remove() // Remove element at cursor void insert(const T& t) // Insert t before cursor void reset() // Reset cursor to head void next() // Advance cursor bool is_done() // Check if cursor can be advanced