use super::*;
use core::fmt::Debug;
#[derive(Clone, Debug, PartialEq, Eq, Hash)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct ClassDeclarationNode {
pub namepath: Vec<IdentifierNode>,
pub modifiers: Vec<IdentifierNode>,
pub extends: Option<String>,
pub implements: Vec<String>,
pub statements: Vec<IdentifierNode>,
}
impl Default for ClassDeclarationNode {
fn default() -> Self {
Self { namepath: Vec::new(), modifiers: Vec::new(), extends: None, implements: Vec::new(), statements: Vec::new() }
}
}
impl Display for ClassDeclarationNode {
fn fmt(&self, f: &mut Formatter<'_>) -> core::fmt::Result {
f.write_str("class")?;
todo!()
}
}