aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Parser/lexer/state.h
diff options
context:
space:
mode:
Diffstat (limited to 'Parser/lexer/state.h')
-rw-r--r--Parser/lexer/state.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/Parser/lexer/state.h b/Parser/lexer/state.h
index 9ed3babfdbf..5e8cac7249b 100644
--- a/Parser/lexer/state.h
+++ b/Parser/lexer/state.h
@@ -36,6 +36,11 @@ enum tokenizer_mode_kind_t {
TOK_FSTRING_MODE,
};
+enum string_kind_t {
+ FSTRING,
+ TSTRING,
+};
+
#define MAX_EXPR_NESTING 3
typedef struct _tokenizer_mode {
@@ -44,21 +49,23 @@ typedef struct _tokenizer_mode {
int curly_bracket_depth;
int curly_bracket_expr_start_depth;
- char f_string_quote;
- int f_string_quote_size;
- int f_string_raw;
- const char* f_string_start;
- const char* f_string_multi_line_start;
- int f_string_line_start;
+ char quote;
+ int quote_size;
+ int raw;
+ const char* start;
+ const char* multi_line_start;
+ int first_line;
- Py_ssize_t f_string_start_offset;
- Py_ssize_t f_string_multi_line_start_offset;
+ Py_ssize_t start_offset;
+ Py_ssize_t multi_line_start_offset;
Py_ssize_t last_expr_size;
Py_ssize_t last_expr_end;
char* last_expr_buffer;
- int f_string_debug;
+ int in_debug;
int in_format_spec;
+
+ enum string_kind_t string_kind;
} tokenizer_mode;
/* Tokenizer state */