use crate::widgets::document_viewer::DocumentOutlineItem;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct CodeOutlineItem {
pub name: String,
pub line: usize,
pub level: usize,
pub kind: String,
}
impl CodeOutlineItem {
pub fn new(
name: impl Into<String>,
line: usize,
level: usize,
kind: impl Into<String>,
) -> Self {
Self {
name: name.into(),
line,
level,
kind: kind.into(),
}
}
pub fn into_document_item(self) -> DocumentOutlineItem {
DocumentOutlineItem::new(self.name, self.line, self.level, self.kind)
}
}