Move some stuff around

This commit is contained in:
bʰedoh₂ swé 2024-06-10 20:24:57 +05:00
parent f0e6936008
commit 24042b3f88

View File

@ -5,23 +5,9 @@
#include "syntax.h"
#include "process.h"
bool replace(tSyntaxElement* tree, tProcessingData* pdata) {
tProcessingData* pd = pdata;
bool didreplace = false;
while (1) {
if (pd->data.replace.replacethis == NULL)
break;
if (tree->type == TOKEN)
bool replace(tSyntaxElement* tree, tProcessingData* pd) {
if (strcmp(tree->content.string, pd->data.replace.replacethis) == 0) {
didreplace = true;
free(tree->content.none);
tSyntaxElement* clone = se_clone_no_next(pd->data.replace.replacewiththis, tree);
@ -30,6 +16,28 @@ bool replace(tSyntaxElement* tree, tProcessingData* pdata) {
free(clone);
return true;
} else
return false;
}
void process_mod(tSyntaxElement* tree, tProcessingData* pdata) {
tProcessingData* pd = pdata;
while (1) {
if (pd->data.replace.replacethis == NULL)
break;
if (tree->type == TOKEN) {
switch (pd->type) {
case REPLACE:
replace(tree,pd);
break;
case FUNCTION:
break;
}
}
if (pd->prev != NULL)
@ -39,8 +47,6 @@ bool replace(tSyntaxElement* tree, tProcessingData* pdata) {
}
return didreplace;
}
bool process_find(tSyntaxElement* tree, tProcessingData** p_pdata) {
@ -144,16 +150,7 @@ void process(tSyntaxElement* tree, tProcessingData* pdata) {
if (se_istraversable(tree))
process(tree->content.syntax, pd);
switch (pd->type) {
case REPLACE:
replace(tree, pd);
break;
case FUNCTION: // TODO
break;
}
process_mod(tree, pd);
}