refactored ast, started lexer

This commit is contained in:
2026-05-18 20:19:17 +03:00
parent 24750ddcbe
commit eb85acf224
29 changed files with 315 additions and 181 deletions
+39 -37
View File
@@ -3,45 +3,47 @@
#include <unordered_map>
#include <string>
enum class NodeKind {
CodeBlock,
Header,
List,
ListItem,
Paragraph,
namespace ast {
enum class NodeKind {
CodeBlock,
Header,
List,
ListItem,
Paragraph,
Bold,
InlineCode,
Italic,
Link,
Text
};
Bold,
InlineCode,
Italic,
Link,
Text
};
const std::string toString(NodeKind kind) {
switch (kind) {
case NodeKind::CodeBlock:
return "CodeBlock";
case NodeKind::Header:
return "Header";
case NodeKind::List:
return "List";
case NodeKind::ListItem:
return "ListItem";
case NodeKind::Paragraph:
return "Paragraph";
const std::string toString(NodeKind kind) {
switch (kind) {
case NodeKind::CodeBlock:
return "CodeBlock";
case NodeKind::Header:
return "Header";
case NodeKind::List:
return "List";
case NodeKind::ListItem:
return "ListItem";
case NodeKind::Paragraph:
return "Paragraph";
case NodeKind::Bold:
return "Bold";
case NodeKind::InlineCode:
return "InlineCode";
case NodeKind::Italic:
return "Italic";
case NodeKind::Link:
return "Link";
case NodeKind::Text:
return "Text";
case NodeKind::Bold:
return "Bold";
case NodeKind::InlineCode:
return "InlineCode";
case NodeKind::Italic:
return "Italic";
case NodeKind::Link:
return "Link";
case NodeKind::Text:
return "Text";
default:
return "";
default:
return "";
}
}
}
}