cp_ast_core/structure/
structure_node.rs1use super::node_id::NodeId;
2use super::node_kind::NodeKind;
3
4#[derive(Debug, Clone, PartialEq)]
10pub struct StructureNode {
11 id: NodeId,
12 kind: NodeKind,
13}
14
15impl StructureNode {
16 #[must_use]
18 pub fn new(id: NodeId, kind: NodeKind) -> Self {
19 Self { id, kind }
20 }
21
22 #[must_use]
24 pub fn id(&self) -> NodeId {
25 self.id
26 }
27
28 #[must_use]
30 pub fn kind(&self) -> &NodeKind {
31 &self.kind
32 }
33
34 pub fn set_kind(&mut self, kind: NodeKind) {
36 self.kind = kind;
37 }
38}