type Rotor[E any] interface {
// Next returns the next item in the rotation.// This method is safe for concurrent use by multiple goroutines.
Next() E
}
Rotor provides thread-safe round-robin access to a slice of items.
It must be initialized with the New function.
New creates a new Rotor.
It makes a defensive copy of the provided items slice to ensure immutability.
This function panics if the items slice is empty.