Add doxygen documentation #4

Merged
CHatingPython merged 10 commits from docs into master 2026-06-02 12:01:39 +00:00
Showing only changes of commit 16ca41b75a - Show all commits
+34 -3
View File
@@ -6,19 +6,50 @@
namespace furc { namespace furc {
namespace front { namespace front {
/**
* @brief Lexer.
*
* Furlang's lazy tokenizer.
*/
class lexer { class lexer {
public: public:
lexer() = default; lexer() = default;
/**
* @brief Construct a new lexer.
*
* @param filename Filename for debugging.
* @param content Content.
*/
lexer(std::string_view filename, std::string_view content); lexer(std::string_view filename, std::string_view content);
~lexer() = default; ~lexer() = default;
lexer(lexer&&) = default; /**
lexer(const lexer&) = delete; * @brief Move constructor.
lexer& operator=(lexer&&) = default; */
lexer(lexer&&) = default;
lexer(const lexer&) = delete;
/**
* @brief Move constructor.
*/
lexer& operator=(lexer&&) = default;
lexer& operator=(const lexer&) = delete; lexer& operator=(const lexer&) = delete;
public: public:
/**
* @brief Returns a handle to next token.
*
* @return The token handle.
*/
token_handle<> next_token(); token_handle<> next_token();
/**
* @brief Checks whether the cursor is at the EOF.
*
* @return true if the cursor is at the EOF.
*/
bool empty() const { return m_cursor >= m_content.size(); } bool empty() const { return m_cursor >= m_content.size(); }
private: private:
void next(); void next();