Commit graph

292 commits

Author SHA1 Message Date
Gu://em_
ac851fa895 fix: fixed A LOT of bugs and memory leaks. Removed ast_is_* commands as they're not really useful and seems redundant with ast_get_*. Also made some changes to lists utils to make architecture clearer and some other random tweaks or fixes. 2026-01-31 15:50:57 +01:00
Gu://em_
f31fca4204 feat: full while/until loops support, important bug fixes and more tests 2026-01-30 23:43:49 +01:00
Gu://em_
9e522b2a68 feat: lexer support for loops keywords 2026-01-30 22:55:07 +01:00
Gu://em_
d6e6bfacf2 feat: Merge branch 'parser' into dev 2026-01-30 21:32:57 +01:00
Gu://em_
b663655d53 fix: strdup a la con 2026-01-30 21:27:23 +01:00
Gu://em_
f721e6db72 fix: merge local changes 2026-01-30 20:58:15 +01:00
Gu://em_
49eca6f2df fix: random parser fixes 2026-01-30 20:58:10 +01:00
Matteo Flebus
828b0e8be3 fix: coverage tests and hash_map_free on NULL 2026-01-30 20:28:38 +01:00
Matteo Flebus
4870caa459 fix(lexer): and is now detected properly 2026-01-30 20:18:10 +01:00
Matteo Flebus
3fb5d71d66 Merge branch 'parser' into dev 2026-01-30 20:08:54 +01:00
Gu://em_
a5e355e427 fix: local merge conflict 2026-01-30 20:02:40 +01:00
Gu://em_
9f967dc9b4 refactor: removed duplicate code for while/until loops in parser 2026-01-30 20:00:44 +01:00
Matteo Flebus
8ca7a92e7d fix(parser): removed unused old version of static function 2026-01-30 20:00:09 +01:00
Matteo Flebus
4d271981df merge parser into dev with ast loops 2026-01-30 19:57:36 +01:00
Matteo Flebus
32c35c4bf7 fix: add dependencies in Makefile for new ast 2026-01-30 19:55:09 +01:00
Gu://em_
423793903d feat: while and for loops support for parser, plus new ASTs, new tokens and fixes inside parser 2026-01-30 19:48:31 +01:00
Matteo Flebus
aa45e3d30f feat: export handling, except exec 2026-01-30 19:37:05 +01:00
Matteo Flebus
1367598047 fix(lexer): typo on export 2026-01-30 19:14:01 +01:00
Matteo Flebus
115377edfe feat(lexer + parser): export handling 2026-01-30 19:13:27 +01:00
Matteo Flebus
bada9c6a29 fix: building now 2026-01-30 18:35:26 +01:00
Matteo Flebus
fcfc7fedc9 fix(clang-tidy): for clang, function cannot return bool if it takes no arguments ???? 2026-01-30 18:26:56 +01:00
matteo
fd59d63c47 fix(lexer): recongize OR as PIPE 2026-01-30 17:47:51 +01:00
Matteo Flebus
30e30f55e7 fix(lexer): ongoing-> recongize OR as PIPE 2026-01-30 17:43:18 +01:00
matteo
52d35cf355 fix: memory issues, parser errors and get_ast_if returning always NULL 2026-01-30 17:42:42 +01:00
matteo
5740195cb3 fix: heap-use-after-free and memory leaks on erorr cases 2026-01-30 17:42:42 +01:00
matteo
f8b91d4da3 fix: memory issues, parser errors and get_ast_if returning always NULL 2026-01-30 16:51:10 +01:00
matteo
3fa7b97282 fix: heap-use-after-free and memory leaks on erorr cases 2026-01-30 12:21:29 +01:00
william.valenduc
f0b39535fb feat(utils): lists tests 2026-01-29 20:35:56 +00:00
william.valenduc
c448776268 fix(execution): var update leak 2026-01-29 19:56:21 +00:00
william.valenduc
e32715ce13 feat(execution): var assign 2026-01-29 19:46:22 +00:00
Matteo Flebus
5784f557b8 fix: Makefile 2026-01-29 20:39:58 +01:00
matteo
028d4312af feat: fuckning working 2026-01-29 20:29:02 +01:00
matteo
56f0a979a7 merge parser in dev 2026-01-29 19:50:42 +01:00
Guillem George
3601c3136f feat: final firsts initialization 2026-01-29 19:47:59 +01:00
Jean
6ca10b673a feat(compiling en fait): Execution 2026-01-29 19:35:08 +01:00
matteo
08803bd591 fix(ast_command): ast_list redir -> list redir 2026-01-29 19:20:29 +01:00
Jean
4315eb5c0d fix(execution): Redir ahah type 2026-01-29 19:12:58 +01:00
matteo
a70943e5cc fix(parser): small typo 2026-01-29 19:11:13 +01:00
matteo
98d18eef7d fix: ast_redir and ast_assignment accorded for every part 2026-01-29 18:46:11 +01:00
matteo
e0032dd991 merge parser into dev for redirections 2026-01-29 18:23:28 +01:00
matteo
25079bfebf feat(lexer + grammar): inch les redirections ca marche 2026-01-29 18:21:44 +01:00
Jean
ec63be42e5 fix(execution): Reimplemented the redirection logic 2026-01-29 18:18:04 +01:00
william.valenduc
a98161d885 fix(ast)!: assignment typo 2026-01-29 11:40:55 +00:00
matteo
28749a2992 feat(parser): assignments handled 2026-01-29 12:38:03 +01:00
william.valenduc
988d8ef298 feat(execution): update $PWD and $OLD_PWD 2026-01-29 11:29:03 +00:00
matteo
fe3c4243c8 Revert "feat(ast_assignement): changed (name, value) to assignement"
This reverts commit ac77d79a60.
2026-01-29 11:37:20 +01:00
matteo
ac77d79a60 feat(ast_assignement): changed (name, value) to assignement 2026-01-29 11:32:15 +01:00
matteo
f0a7173b11 feat(lexer): implementing assignements 2026-01-29 11:18:56 +01:00
matteo
e1291107d4 fix: small errors in exec and parser 2026-01-29 09:59:16 +01:00
matteo
fde653ac5d feat(ast): add ast_assignements. Similar to how redirections are handled. 2026-01-29 09:56:28 +01:00