comments, use Nothing instead of voidptr

This commit is contained in:
2026-02-21 14:18:48 +11:00
parent cb13200545
commit f325b8deef
9 changed files with 84 additions and 44 deletions

View File

@@ -334,16 +334,16 @@ char* createParsingError(size_t lineNum, char* line, char* why) {
return error.str;
}
ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
ResultType(Nothing, charptr) lex(SolsLexer* lexer) {
if (lexer->input == NULL) {
return Error(voidptr, charptr, "Lexer is not initialised");
return Error(Nothing, charptr, "Lexer is not initialised");
}
ResultType(SolsTokens, charptr) tokens = createSolsTokens();
if (tokens.error) {
Estr e = CREATE_ESTR(tokens.as.error);
APPEND_ESTR(e, " (in createSolsTokens() function)");
return Error(voidptr, charptr, e.str);
return Error(Nothing, charptr, e.str);
}
lexer->output = tokens.as.success;
@@ -377,7 +377,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
chr = lexerConsume(lexer);
for (;;) {
chr = lexerConsume(lexer);
if (chr.error) return Success(voidptr, charptr, NULL);
if (chr.error) return Success(Nothing, charptr, {});
if (chr.as.success == '\n') {
chr = lexerConsume(lexer);
break;
@@ -386,7 +386,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
} else if (!peek.error && peek.as.success == '*') {
for (;;) {
chr = lexerConsume(lexer);
if (chr.error) return Success(voidptr, charptr, NULL);
if (chr.error) return Success(Nothing, charptr, {});
if (chr.as.success == '*') {
peek = lexerPeek(lexer, 1);
if (!peek.error && peek.as.success == '/') {
@@ -400,7 +400,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (chr.as.success == '#' && !inString) {
for (;;) {
chr = lexerConsume(lexer);
if (chr.error) return Success(voidptr, charptr, NULL);
if (chr.error) return Success(Nothing, charptr, {});
if (chr.as.success == '\n') {
chr = lexerConsume(lexer);
break;
@@ -446,7 +446,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (strcmp(buf.str, "") != 0) {
ResultType(SolsToken, charptr) result = identifyToken(buf.str);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
DESTROY_ESTR(buf);
@@ -455,7 +455,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
char tmp[] = {chr.as.success, '\0'};
ResultType(SolsToken, charptr) result = identifyToken(tmp);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
break;
@@ -467,7 +467,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (strcmp(buf.str, "") != 0) {
ResultType(SolsToken, charptr) result = identifyToken(buf.str);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
DESTROY_ESTR(buf);
@@ -478,7 +478,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
char tmp[] = {chr.as.success, '\0'};
ResultType(SolsToken, charptr) result = identifyToken(tmp);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
}
@@ -486,7 +486,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
char tmp[] = {chr.as.success, '=', '\0'};
ResultType(SolsToken, charptr) result = identifyToken(tmp);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
lexerConsume(lexer);
@@ -495,7 +495,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
char tmp[] = {chr.as.success, chr.as.success, '\0'};
ResultType(SolsToken, charptr) result = identifyToken(tmp);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
lexerConsume(lexer);
@@ -513,7 +513,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (strcmp(buf.str, "") != 0) {
ResultType(SolsToken, charptr) result = identifyToken(buf.str);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
DESTROY_ESTR(buf);
@@ -524,7 +524,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
char tmp[] = {chr.as.success, '\0'};
ResultType(SolsToken, charptr) result = identifyToken(tmp);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
}
@@ -532,7 +532,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
char tmp[] = {chr.as.success, '=', '\0'};
ResultType(SolsToken, charptr) result = identifyToken(tmp);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
lexerConsume(lexer);
@@ -545,7 +545,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
case '.': {
ResultType(char, Nothing) peek = lexerPeek(lexer, 1);
if (peek.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, "Expecting token after '.'"));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, "Expecting token after '.'"));
}
if (isdigit(peek.as.success)) {
char tmp[] = {peek.as.success, '\0'};
@@ -555,7 +555,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (strcmp(buf.str, "") != 0) {
ResultType(SolsToken, charptr) result = identifyToken(buf.str);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
DESTROY_ESTR(buf);
@@ -572,7 +572,7 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (strcmp(buf.str, "") != 0) {
ResultType(SolsToken, charptr) result = identifyToken(buf.str);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
addTokenToSolsTokens(&lexer->output, result.as.success);
DESTROY_ESTR(buf);
@@ -610,16 +610,16 @@ ResultType(voidptr, charptr) lex(SolsLexer* lexer) {
if (strcmp(buf.str, "") != 0) {
ResultType(SolsToken, charptr) result = identifyToken(buf.str);
if (result.error) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, result.as.error));
}
DESTROY_ESTR(buf);
}
if (inString) {
return Error(voidptr, charptr, createParsingError(lineNum, currentLine.str, "Unterminated string"));
return Error(Nothing, charptr, createParsingError(lineNum, currentLine.str, "Unterminated string"));
}
return Success(voidptr, charptr, NULL);
return Success(Nothing, charptr, {});
}
ResultType(Nothing, charptr) processTypeSignature(SolsLexer* lexer) {