just/src/item.rs

24 lines
672 B
Rust
Raw Normal View History

use crate::common::*;
/// A single top-level item
2021-06-08 01:01:27 -07:00
#[derive(Debug, Clone)]
pub(crate) enum Item<'src> {
Alias(Alias<'src, Name<'src>>),
Assignment(Assignment<'src>),
2021-06-08 01:01:27 -07:00
Comment(&'src str),
Recipe(UnresolvedRecipe<'src>),
Set(Set<'src>),
}
2021-06-08 01:01:27 -07:00
impl<'src> Display for Item<'src> {
fn fmt(&self, f: &mut Formatter) -> fmt::Result {
match self {
Item::Alias(alias) => write!(f, "{}", alias),
Item::Assignment(assignment) => write!(f, "{}", assignment),
Item::Comment(comment) => write!(f, "{}", comment),
Item::Recipe(recipe) => write!(f, "{}", recipe.color_display(Color::never())),
2021-06-08 01:01:27 -07:00
Item::Set(set) => write!(f, "{}", set),
}
}
}