9abf00e2d3
Actual contents of the pragma are currently just discarded. This supports both #pragma and _Pragma() definitions, but the pragma must end the line it is on and cannot be in the middle of a statement.
27 lines
553 B
C
27 lines
553 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 100
|
|
|
|
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
|