Initial commit

This commit is contained in:
2024-12-21 00:08:48 +01:00
commit 72681e349a
11 changed files with 1599 additions and 0 deletions

22
cli/main.cpp Normal file
View File

@ -0,0 +1,22 @@
#include "parser.hpp"
#include <sstream>
int main()
{
std::istringstream inp("const world = 5, hello = 7;");
std::unique_ptr<elna::source::program> program;
elna::syntax::FooLexer lexer(inp);
yy::parser parser(lexer, program);
auto result = parser();
for (auto& definition : program->definitions())
{
auto const_definition = dynamic_cast<elna::source::constant_definition *>(definition.get());
std::cout << "const " << const_definition->identifier() << " = "
<< const_definition->body().number() << std::endl;
}
return result;
}