rot
Apply a plane rotation (BLAS drot). Each pair (x_i, y_i) becomes (c*x_i + s*y_i, c*y_i - s*x_i), so both x and y are overwritten in place. Dense vectors use the same overlap semantics as the borrowed overload.
The rotation arrives as its cosine and sine rather than through a generator. BLAS drotg produced those two from a pair of scalars, along with the rotated length only it consumed, and is not part of Koblas: c = a / hypot(a, b) and s = b / hypot(a, b) is the whole of it, and a caller who wants a different sign convention than Netlib's, which is what LAPACK's own dlartg exists to provide, would have to write it out anyway.
rot over borrowed strided storage. Negative strides are supported. If the views overlap, both logical input sequences are snapshotted before writing; at a shared physical entry the final write is from y.