From f79290084948f3cf140395c270c07cf29ca58e8d Mon Sep 17 00:00:00 2001
From: A404M <ahmadmahmoudiprogrammer@gmail.com>
Date: Sun, 22 Sep 2024 19:34:43 +0330
Subject: Better errors Added variables

---
 src/compiler/lexer/lexer.h | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

(limited to 'src/compiler/lexer/lexer.h')

diff --git a/src/compiler/lexer/lexer.h b/src/compiler/lexer/lexer.h
index 802b50c..8d88a90 100644
--- a/src/compiler/lexer/lexer.h
+++ b/src/compiler/lexer/lexer.h
@@ -1,5 +1,6 @@
 #pragma once
 
+#include <compiler/error_helper/error_helper.h>
 #include <stddef.h>
 #include <utils/memory/memory.h>
 #include <utils/types.h>
@@ -17,18 +18,25 @@ typedef enum Token {
   TOKEN_OPERATOR_ASSIGN,
   TOKEN_OPERATOR_EQUAL,
   TOKEN_OPERATOR_COLON,
+  TOKEN_OPERATOR_COMMA,
   TOKEN_OPERATOR_EOL,
+  TOKEN_OPERATOR_FUNCTION,
   TOKEN_SYMBOL,
+  TOKEN_KEYWORD_STRUCT,
+  TOKEN_KEYWORD_EXTERNAL,
+  TOKEN_KEYWORD_IMPORT,
   TOKEN_PARSED,
 } Token;
 
 extern const char *TOKEN_STRINGS[];
 
+struct ParsedNode;
+
 typedef struct Node {
   char const *strBegin;
   char const *strEnd;
   Token token;
-  void *parsedNode;
+  struct ParsedNode *parsedNode;
 } Node;
 
 typedef struct Nodes {
@@ -39,7 +47,7 @@ typedef struct Nodes {
 extern void printNodes(Nodes nodes);
 extern void deleteNodes(Nodes nodes);
 
-extern Nodes lexer(char const *restrict str);
+extern Nodes lexer(char const *const restrict code);
 
 extern void push_if_not_empty(Node **restrict nodes,
                               size_t *restrict nodes_size,
-- 
cgit v1.2.3