17 lines
634 B
C
17 lines
634 B
C
|
typedef struct _py_lexer_str_buf_t {
|
||
|
bool free; // free src_beg when done
|
||
|
const char *src_beg; // beginning of source
|
||
|
const char *src_cur; // current location in source
|
||
|
const char *src_end; // end (exclusive) of source
|
||
|
} py_lexer_str_buf_t;
|
||
|
|
||
|
typedef struct _py_lexer_file_buf_t {
|
||
|
FIL fp;
|
||
|
char buf[20];
|
||
|
uint16_t len;
|
||
|
uint16_t pos;
|
||
|
} py_lexer_file_buf_t;
|
||
|
|
||
|
py_lexer_t *py_lexer_new_from_str_len(const char *src_name, const char *str, uint len, bool free_str, py_lexer_str_buf_t *sb);
|
||
|
py_lexer_t *py_lexer_new_from_file(const char *filename, py_lexer_file_buf_t *fb);
|