#![allow(dead_code, reason = "will be used by builders")]
use crate::NodeId;
use alloc::boxed::Box;
use alloc::string::String;
use alloc::vec::Vec;
#[derive(Clone, PartialEq, Eq, Debug)]
pub enum CoreSyntaxNode {
Comment(Comment),
BoolLiteral(BoolLiteral),
NumberLiteral(NumberLiteral),
StringLiteral(StringLiteral),
ArgumentList(Box<ArgumentList>),
ArrayExpression(Box<ArrayExpression>),
}
pub type CoreSyntaxNodeWithId = (CoreSyntaxNode, NodeId);
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct BoolLiteral {
pub value: bool,
}
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct NumberLiteral {
pub value: String,
}
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct StringLiteral {
pub value: String,
}
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct Comment {
pub value: String,
}
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct ArgumentList {
pub args: Vec<CoreSyntaxNodeWithId>,
}
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct ArrayExpression {
pub elements: Vec<CoreSyntaxNodeWithId>,
}
#[derive(Clone, PartialEq, Eq, Debug)]
pub struct ArrayRepetition {
pub element: CoreSyntaxNodeWithId,
pub repetition: u64,
}