use std::fmt::Debug;
use thiserror::Error;
#[derive(Error, Debug)]
pub enum TwoPTwoPGraphError<Id>
where
Id: Debug,
{
#[error("Vertex {0} already exists")]
VertexAlreadyExists(Id),
#[error("Vertex {0} does not exists")]
VertexDoesNotExists(Id),
#[error("Edge already exists")]
EdgeAlreadyExists(Id),
#[error("Edge does not exists")]
EdgeDoesNotExists(Id),
#[error("Vertex {0} has edge {1}")]
VertexHasEdge(Id, Id),
#[error("addVertex({0}) not yet delivered")]
AddVertexNotDelivered(Id),
#[error("addEdge({0}) not yet delivered")]
AddEdgeNotDelivered(Id),
}