Add some more keywords

This commit is contained in:
bʰedoh₂ swé 2024-06-11 19:44:40 +05:00
parent 13bb7399aa
commit 74d20d9f37

View File

@ -343,6 +343,29 @@ char* compile(tSyntaxElement* syntaxtree) {
compile_exit_tag(&result);
} else if (strcmp(token->content.string, "return") == 0) {
compile_enter_tag(&result);
string_append(&result, "return ");
string_append_free(&result,compile_expression(token->next));
compile_exit_tag(&result);
} else if (strcmp(token->content.string, "run") == 0) {
compile_enter_tag(&result);
string_append(&result, "run ");
string_append_free(&result,compile_expression(token->next));
if (token->next->next != NULL) {
string_append(&result, " with ");
string_append_free(&result,compile_expression(token->next->next));
}
compile_exit_tag(&result);
} else if (strcmp(token->content.string, "if") == 0) {
compile_enter_tag(&result);
@ -416,6 +439,29 @@ char* compile(tSyntaxElement* syntaxtree) {
compile_exit_tag(&result);
} else if (strcmp(token->content.string, "transform") == 0) {
compile_enter_tag(&result);
string_append(&result, "transform ");
string_append_free(&result, compile_expression(token->next->content.syntax));
string_append(&result, " in ");
string_append_free(&result, compile_expression(token->next->content.syntax->next));
string_append(&result, " as ");
string_append_free(&result, compile_expression(token->next->content.syntax->next->next));
compile_exit_tag(&result);
string_append_free(&result, compile(token->next->next));
compile_enter_tag(&result);
string_append(&result, "endtransform");
compile_exit_tag(&result);
} else if (strcmp(token->content.string, "for") == 0) {
compile_enter_tag(&result);