picoc/stats.h
Russell Joyce 409f520b61
Added functions to log and count parsing of statements and expressions
Currently prints all expressions and statements to stderr, then outputs
a total count of each token to stderr after program execution.
2020-05-13 18:44:09 +01:00

27 lines
552 B
C

//
// Created by Russell Joyce on 12/05/2020.
//
#ifndef PICOC_STATS_H
#define PICOC_STATS_H
#include "interpreter.h"
#define NO_RUN_MODES 7
#define NO_TOKENS 97
extern const char *RunModeNames[NO_RUN_MODES];
struct LexTokenStat {
const char* name;
int count[NO_RUN_MODES];
};
extern struct LexTokenStat LexTokenStats[NO_TOKENS];
void stats_log_statement(enum LexToken token, struct ParseState *parser);
void stats_log_expression(enum LexToken token, struct ParseState *parser);
void stats_print_tokens(int all);
#endif //PICOC_STATS_H