Compare commits
2 Commits
5cc866637e
...
71ee935f7b
Author | SHA1 | Date | |
---|---|---|---|
71ee935f7b | |||
1c9de73b91 |
@ -237,7 +237,7 @@ char* compile(tSyntaxElement* syntaxtree) {
|
||||
|
||||
tSyntaxElement* token = syntaxtree->content.syntax;
|
||||
|
||||
if (strcmp(token->content.string, "def") == 0) {
|
||||
if (strcmp(token->content.string, "#def") == 0) {
|
||||
} else if (strcmp(token->content.string, "set") == 0) {
|
||||
|
||||
compile_enter_tag(&result);
|
||||
|
@ -10,9 +10,14 @@ bool replace(tSyntaxElement* tree, tProcessingData* pd) {
|
||||
|
||||
free(tree->content.none);
|
||||
|
||||
tSyntaxElement* clone = se_clone_no_next(pd->data.replace.replacewiththis, tree);
|
||||
tSyntaxElement* clone = se_clone(pd->data.replace.replacewiththis, tree);
|
||||
tree->content = clone->content;
|
||||
tree->type = clone->type;
|
||||
if (clone->next != NULL) {
|
||||
tSyntaxElement* tmp = se_find_last(clone);
|
||||
tmp->next = tree->next;
|
||||
tree->next = clone->next;
|
||||
}
|
||||
|
||||
free(clone);
|
||||
|
||||
@ -61,7 +66,7 @@ bool process_find(tSyntaxElement* tree, tProcessingData** p_pdata) {
|
||||
|
||||
tSyntaxElement* token = tree->content.syntax;
|
||||
|
||||
if (strcmp(token->content.string,"def") == 0 &&
|
||||
if (strcmp(token->content.string,"#def") == 0 &&
|
||||
token->next != NULL &&
|
||||
token->next->next != NULL) {
|
||||
|
||||
|
10
src/syntax.c
10
src/syntax.c
@ -142,3 +142,13 @@ tSyntaxElement* se_clone_no_next(tSyntaxElement* syntaxelement, tSyntaxElement*
|
||||
return clone;
|
||||
|
||||
}
|
||||
|
||||
tSyntaxElement* se_find_last(tSyntaxElement* syntaxelement) {
|
||||
tSyntaxElement* i = syntaxelement;
|
||||
while (1)
|
||||
if (i->next == NULL)
|
||||
return i;
|
||||
else
|
||||
i = i->next;
|
||||
}
|
||||
|
||||
|
@ -47,4 +47,6 @@ tSyntaxElement* se_clone(tSyntaxElement*, tSyntaxElement*);
|
||||
|
||||
tSyntaxElement* se_clone_no_next(tSyntaxElement*, tSyntaxElement*);
|
||||
|
||||
tSyntaxElement* se_find_last(tSyntaxElement*);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user