From 57eb4450af37333229cdd3cab7fdfd7f878b314a Mon Sep 17 00:00:00 2001 From: German Mikheev Date: Wed, 24 Jun 2026 23:04:58 +0300 Subject: [PATCH] minor changes --- include/lexer/Cursor.h | 21 +++++++++++++++++++++ include/lexer/Token.h | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/include/lexer/Cursor.h b/include/lexer/Cursor.h index 3f59c93..4d28772 100644 --- a/include/lexer/Cursor.h +++ b/include/lexer/Cursor.h @@ -1,2 +1,23 @@ #pragma once +#include + +namespace lexer { +// controlled character stream access +class Cursor { +private: + const std::string &source; + int position; // current index in string + int line; // current index of line + int column; // + +public: + char current(); // returns current symbol + + char peek(int offset); // + void advance(); + + bool eol() const; + bool eof() const; +}; +} \ No newline at end of file diff --git a/include/lexer/Token.h b/include/lexer/Token.h index 48bc2f4..bfac365 100644 --- a/include/lexer/Token.h +++ b/include/lexer/Token.h @@ -6,7 +6,7 @@ namespace lexer { struct Token { TokenKind kind; - std::string lexeme; + std::string value; int line; int column;