use crate::triangulation::{CausalTriangulation2D, simplices::CausalSimplex2};

impl CausalTriangulation2D {
    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `get_simplices()`"
    )]
    #[inline]
    pub fn get_triangles(&self) -> &[CausalSimplex2] {
        self.get_simplices()
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `num_simplices()`"
    )]
    #[inline]
    pub fn num_triangles(&self) -> usize {
        self.num_simplices()
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `num_timeslices()`"
    )]
    #[inline]
    pub fn ntime(&self) -> u16 {
        self.num_timeslices()
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `get_simplex()`"
    )]
    #[inline]
    pub fn get_triangle(&self, label: usize) -> &CausalSimplex2 {
        self.get_simplex(label)
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `get_simplex_time()`"
    )]
    #[inline]
    pub fn get_triangle_time(&self, label: usize) -> u16 {
        self.get_simplex_time(label)
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `get_simplex_vertices()`"
    )]
    #[inline]
    pub fn get_triangle_vertices(&self, label: usize) -> [usize; 3] {
        self.get_simplex_vertices(label)
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `num_faces()`"
    )]
    #[inline]
    pub fn num_edges(&self) -> usize {
        self.num_faces()
    }

    #[deprecated(
        since = "0.10.0",
        note = "To unify and generalize over dimensions this method is deprecated in favour of `num_halffaces()`"
    )]
    #[inline]
    pub fn num_halfedges(&self) -> usize {
        self.num_halffaces()
    }
}
