This commit is contained in:
2026-02-23 18:17:44 +11:00
parent 44aace638a
commit ca3aec6962

View File

@@ -22,7 +22,6 @@ ResultType(SolsParser, charptr) createSolsParser(SolsTokens* input) {
if (parser.errors.at == NULL) {
return Error(SolsParser, charptr, "Couldn't allocate memory to store errors (in createSolsParser() function)");
}
parser.currentParent = &parser.output;
return Success(SolsParser, charptr, parser);
}
@@ -107,7 +106,7 @@ static inline ResultType(Nothing, charptr) parseIdentifier(SolsParser* parser) {
APPEND_ESTR(err, " (in parseLiteral() function)");
return Error(Nothing, charptr, err.str);
}
// addChildToSolsNode(parser->currentParent, node.as.success);
addChildToSolsNode(parser->currentParent, node.as.success);
return Success(Nothing, charptr, {});
}
static inline ResultType(Nothing, charptr) parseLiteral(SolsParser* parser) {
@@ -121,7 +120,7 @@ static inline ResultType(Nothing, charptr) parseLiteral(SolsParser* parser) {
APPEND_ESTR(err, " (in parseLiteral() function)");
return Error(Nothing, charptr, err.str);
}
// addChildToSolsNode(parser->currentParent, node.as.success);
addChildToSolsNode(parser->currentParent, node.as.success);
return Success(Nothing, charptr, {});
}
@@ -131,6 +130,7 @@ static inline ResultType(Nothing, charptr) parsePuts(SolsParser* parser) {
}
ResultType(Nothing, charptr) parse(SolsParser* parser) {
parser->currentParent = &parser->output;
for (;;) {
ResultType(SolsToken, Nothing) token = parserConsume(parser);
if (token.error) {
@@ -177,7 +177,7 @@ ResultType(SolsToken, Nothing) parserConsume(SolsParser* parser) {
if (parser->input == NULL) {
return Error(SolsToken, Nothing, {});
}
if (parser->current + 1 >= parser->input->count) {
if (parser->current >= parser->input->count) {
return Error(SolsToken, Nothing, {});
}
return Success(SolsToken, Nothing, parser->input->at[parser->current ++]);