dsalgo 0.3.10

A package for Datastructures and Algorithms.
Documentation
use std::ops::*;

pub fn dist2<T>(
    x0: T,
    y0: T,
    x1: T,
    y1: T,
) -> T
where
    T: Sub<Output = T> + Clone + Mul<Output = T> + Add<Output = T>,
{
    let dx = x1 - x0;

    let dy = y1 - y0;

    dx.clone() * dx + dy.clone() * dy
}

#[cfg(test)]

mod tests {

    use super::*;

    #[test]

    fn test() {
        assert_eq!(dist2(-1, 1, 2, 3), 13);
    }
}