Skip to content

Commit 52e062e

Browse files
committed
py/frozenmod: Allow port to override lexer to use for frozen modules.
1 parent 664f03f commit 52e062e

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

py/frozenmod.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@
3232

3333
#if MICROPY_MODULE_FROZEN
3434

35+
#ifndef MICROPY_MODULE_FROZEN_LEXER
36+
#define MICROPY_MODULE_FROZEN_LEXER mp_lexer_new_from_str_len
37+
#else
38+
mp_lexer_t *MICROPY_MODULE_FROZEN_LEXER(qstr src_name, const char *str, mp_uint_t len, mp_uint_t free_len);
39+
#endif
40+
3541
extern const char mp_frozen_names[];
3642
extern const uint32_t mp_frozen_sizes[];
3743
extern const char mp_frozen_content[];
@@ -43,7 +49,7 @@ mp_lexer_t *mp_find_frozen_module(const char *str, int len) {
4349
for (int i = 0; *name != 0; i++) {
4450
int l = strlen(name);
4551
if (l == len && !memcmp(str, name, l)) {
46-
mp_lexer_t *lex = mp_lexer_new_from_str_len(MP_QSTR_, mp_frozen_content + offset, mp_frozen_sizes[i], 0);
52+
mp_lexer_t *lex = MICROPY_MODULE_FROZEN_LEXER(MP_QSTR_, mp_frozen_content + offset, mp_frozen_sizes[i], 0);
4753
return lex;
4854
}
4955
name += l + 1;

0 commit comments

Comments
 (0)