Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR updates documentation and enhances the codebase with improved documentation, repository migration, and test refinements. The changes focus on making the project more maintainable and accessible through better documentation and cleaner test cases.
- Updated README with comprehensive syntax guide and examples
- Added extensive code documentation with detailed comments and function descriptions
- Migrated repository references from YaRiabtsev to ninjaro across all badges and links
Reviewed Changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| readme.md | Complete overhaul with expanded syntax guide, examples, and updated repository references |
| include/reader.hpp | Added comprehensive documentation for tokenizer functions and structures |
| include/grouper.hpp | Enhanced documentation for AST parsing and grouping functionality |
| include/expression.hpp | Added detailed documentation for expression parsing components |
| include/ast.hpp | Improved documentation for AST node structures and memory management |
| tests/arithmetic_tests.cpp | Simplified test inputs by removing semicolons and updated assertions |
| .github/workflows/tests.yml | Added path filters to optimize CI execution |
| .github/workflows/html.yml | Added Codacy integration and path filters |
| std::ostream& os, const std::string& prefix, bool is_last, bool full | ||
| ) const override; | ||
| const position& get_start() const override; | ||
| [[nodiscard]] const position& get_start() const override; |
There was a problem hiding this comment.
The [[nodiscard]] attribute is inconsistent with the base class declaration. Either add it to the base class or remove it here for consistency.
| struct token final { | ||
| token_kind kind; | ||
| position pos; | ||
| std::string word; | ||
|
|
||
| virtual ~token(); | ||
| ~token(); |
There was a problem hiding this comment.
Adding final to the token struct may be a breaking change if client code previously inherited from token. The destructor was also changed from virtual to non-virtual, which could cause issues if there are existing derived classes.
| std::string word; | ||
|
|
||
| virtual ~token(); | ||
| ~token(); |
There was a problem hiding this comment.
Removing the virtual keyword from the destructor while adding final to the class is correct, but this is a breaking change if existing code inherits from token.
| ~token(); | ||
|
|
||
| virtual void dump( | ||
| void dump( |
There was a problem hiding this comment.
Removing the virtual keyword from the dump method is a breaking change that could affect polymorphic behavior if client code relies on virtual dispatch.
No description provided.