use disposition_ir_model::IrDiagram;
use crate::issue::ModelToIrIssue;
#[cfg_attr(
all(feature = "schemars", not(feature = "test")),
derive(schemars::JsonSchema)
)]
#[derive(Clone, Debug)]
pub struct IrDiagramAndIssues<'id> {
pub diagram: IrDiagram<'id>,
pub issues: Vec<ModelToIrIssue>,
}
impl<'id> IrDiagramAndIssues<'id> {
pub fn diagram(&self) -> &IrDiagram<'id> {
&self.diagram
}
pub fn issues(&self) -> &[ModelToIrIssue] {
&self.issues
}
pub fn into_static(self) -> IrDiagramAndIssues<'static> {
IrDiagramAndIssues {
diagram: self.diagram.into_static(),
issues: self.issues,
}
}
}