Correctly update newline and indent state in multiline strings

This commit is contained in:
Joshua Warner 2024-12-14 10:39:33 -08:00
parent a15998872d
commit 2dd4fe03f8
No known key found for this signature in database
GPG key ID: 89AD497003F93FDD
5 changed files with 70 additions and 1 deletions

View file

@ -324,8 +324,10 @@ pub fn parse_str_like_literal<'a>() -> impl Parser<'a, StrLikeLiteral<'a>, EStri
let without_newline = &state.bytes()[0..(segment_parsed_bytes - 1)];
let with_newline = &state.bytes()[0..segment_parsed_bytes];
state.advance_mut(segment_parsed_bytes);
state.advance_mut(segment_parsed_bytes - 1);
state = state.advance_newline();
state = consume_indent(state, indent)?;
state = state.mark_current_indent();
bytes = state.bytes().iter();
if state.bytes().starts_with(b"\"\"\"") {