Many of our APIs have a const vector passed by reference (i.e. const std::vector<T> &). We can make these APIs more flexible (i.e. able to take a wider range of arguments) if we switch to std::span<const T>. Passing a std::vector will still work so it should just be a case of changing the declarations and perhaps some of the logic related to handling the argument in the implementation.