You could consider to write this with a `T<:BlasFloat` parameter such that both `A` and `B` are restricted to be `StridedVecOrMat{T}`. Then you can also skip the `eltype` line.