summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Expand)Author
2023-05-09parser: Add the bool typeCarlos Maniero
2023-05-06lexer: Tokenize logical and bitwise operatorsCarlos Maniero
2023-05-06cli: Fix bitwise handling on --ast-dumpJohnny Richard
2023-05-05pretty-printer: Remove unused fieldCarlos Maniero
2023-05-05cli: Add AST pretty-printing option (--ast-dump)Johnny Richard
2023-05-04lexer: Allows snake_case token namesCarlos Maniero
2023-05-04parser: Introduce statement keywordsCarlos Maniero
2023-05-04lexer: Avoiding computation after find an EOFCarlos Maniero
2023-05-03cli: Rename src/pipac.c to src/main.cJohnny Richard
2023-05-03parser: Fixes block parser memory leakCarlos Maniero
2023-05-03ast: Replace init by allocation (new) functionsCarlos Maniero
2023-05-03parser: Parser allocate memory for expressionsCarlos Maniero
2023-05-03parser: Variable assignment allocates their own nodeCarlos Maniero
2023-05-03parser: Variable declaration allocates their own nodeCarlos Maniero
2023-05-03parser: Split block into small functionsCarlos Maniero
2023-05-03parser: Use lookahead instead of consuming tokensCarlos Maniero
2023-05-03parser: Refactor return statement to return an ast_nodeCarlos Maniero
2023-05-03Parser: Make the parser function return the ast_nodeCarlos Maniero
2023-05-03style: Improve ast node initializationCarlos Maniero
2023-05-01parser: Implement variable assignmentJohnny Richard
2023-05-01parser: Use peek and drop token when parsing expressionsJohnny Richard
2023-05-01lexer: Peek next tokenJohnny Richard
2023-04-30style: Invert parameters order on parser_parse_typeJohnny Richard
2023-04-30gas: Optimize variable reference on assemblyJohnny Richard
2023-04-30style: Rename evaluation kinds on gas generatorJohnny Richard
2023-04-30gas: Optimize the stack utilizationCarlos Maniero
2023-04-30gas: Compile variable expression with scope supportJohnny Richard
2023-04-30polish: Remove unnecessary token creation when dropping tokenJohnny Richard
2023-04-30ast: Rename variable and variable_declaration correctlyJohnny Richard
2023-04-30parser: Registry identifiers on scopeJohnny Richard
2023-04-30style: Add void to function without argumentsJohnny Richard
2023-04-30style: Add -Wmissing-declarations to CC CFLAGSJohnny Richard
2023-04-29ast: Introduce ast_identifier_t for named ast nodesCarlos Maniero
2023-04-29scope: Add a scope stack for identifier resolutionsCarlos Maniero
2023-04-29ast: Remove ast visitor pattern to simplify the codeJohnny Richard
2023-04-26ast: Include a Binary Operation kind enumCarlos Maniero
2023-04-26lexer: Remove duplicated validationCarlos Maniero
2023-04-26lexer: Split operation tokens into their own tokenCarlos Maniero
2023-04-25style: Use clang-format as formatter and linter toolJohnny Richard
2023-04-25parser: Add support for variables and identifiers in function bodyCarlos Maniero
2023-04-24util: Implement dynamic vector array for storing AST childrenJohnny Richard
2023-04-21gas: Generate arithmetics expressionsCarlos Maniero
2023-04-21ast: Create an init function for ast_binary_operation_tCarlos Maniero
2023-04-21parser: Parse integers arithmetic expressionJohnny Richard
2023-04-20gas: Remove duplicated inst when generating exit SYSCALLJohnny Richard
2023-04-20parser: Create the literal node typeCarlos Maniero
2023-04-20parser: Stop exiting on parser errorCarlos Maniero
2023-04-20ast: Allows recursive nodesCarlos Maniero
2023-04-18style: Fix identation on lexer.cCarlos Maniero
2023-04-18lexer: Add tokenizer for OP and UNKNOWN tokensJohnny Richard