From ef10784998a02c7d640d0af4f5bc79284a3d2496 Mon Sep 17 00:00:00 2001 From: NotAShelf Date: Mon, 2 Jun 2025 11:30:53 +0300 Subject: [PATCH] cst: improve `from_raw` method to handle invalid `SyntaxKind` values --- src/cst.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/cst.rs b/src/cst.rs index 4d76340..6feaa60 100644 --- a/src/cst.rs +++ b/src/cst.rs @@ -324,7 +324,13 @@ impl SyntaxKind { } pub fn from_raw(raw: RawSyntaxKind) -> Self { - unsafe { std::mem::transmute(raw.0 as u16) } + match raw.0 { + 0 => SyntaxKind::Root, + 1 => SyntaxKind::Table, + // ... other variants ... + 116 => SyntaxKind::PacketTooBigKw, + _ => SyntaxKind::Error, // Fallback to Error for invalid values + } } }