Minor tinkers

This commit is contained in:
2025-05-13 11:21:51 -04:00
parent bf9ff80a6d
commit b6adb2885f

View File

@@ -479,7 +479,6 @@ private:
callbacks->on_end_number(data); callbacks->on_end_number(data);
return true; return true;
} }
bool parse_string() { bool parse_string() {
callbacks->on_begin_string(data); callbacks->on_begin_string(data);
if (!parseLiteral("\"")) { if (!parseLiteral("\"")) {
@@ -502,7 +501,7 @@ private:
typedef PRESERVE_NONE bool (*continuation)(Parser2 *); typedef PRESERVE_NONE bool (*continuation)(Parser2 *);
void printStack() { [[maybe_unused]] void printStack() {
printf("token: %s\n", symbolNames[currentToken]); printf("token: %s\n", symbolNames[currentToken]);
for (int i = 0; i < stackPtr - stack; ++i) { for (int i = 0; i < stackPtr - stack; ++i) {
printf("%s ", symbolNames[stack[i]]); printf("%s ", symbolNames[stack[i]]);
@@ -522,8 +521,7 @@ private:
assert(self->currentToken == T_EOF); assert(self->currentToken == T_EOF);
return true; return true;
} }
auto top = *(self->stackPtr - 1); MUSTTAIL return table[*(self->stackPtr - 1)][self->currentToken](self);
MUSTTAIL return table[top][self->currentToken](self);
} }
PRESERVE_NONE static bool reject(Parser2 *self) { PRESERVE_NONE static bool reject(Parser2 *self) {