The docs start by saying
A (half-open) range bounded inclusively below and exclusively above
So, no, it's quite clearly not trying to be a generic sort of range. It's just the default range type, and Rust defaults to right-exclusive.
Rust doesn't have a single type for a generic sort of range, but it has a trait for them:https://doc.rust-lang.org/nightly/std/ops/trait.RangeBounds.html. If you need a type, you can use
(Bound<T>, Bound<T>).https://lobste.rs/c/hz1tp7
