Rename AnyStringKind -> AnyStringFlags (#11405)

## Summary

This PR renames `AnyStringKind` to `AnyStringFlags` and `AnyStringFlags`
to `AnyStringFlagsInner`.

The main motivation is to have consistent usage of "kind" and "flags".
For each string kind, it's "flags" like `StringLiteralFlags`,
`BytesLiteralFlags`, and `FStringFlags` but it was `AnyStringKind` for
the "any" variant.
This commit is contained in:
Dhruv Manilawala 2024-05-13 18:48:07 +05:30 committed by GitHub
parent be0ccabbaa
commit 6ecb4776de
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
54 changed files with 378 additions and 371 deletions

View file

@ -1231,17 +1231,17 @@ impl<'src> Parser<'src> {
///
/// See: <https://docs.python.org/3.13/reference/lexical_analysis.html#string-and-bytes-literals>
fn parse_string_or_byte_literal(&mut self) -> StringType {
let (Tok::String { value, kind }, range) = self.bump(TokenKind::String) else {
let (Tok::String { value, flags }, range) = self.bump(TokenKind::String) else {
unreachable!()
};
match parse_string_literal(value, kind, range) {
match parse_string_literal(value, flags, range) {
Ok(string) => string,
Err(error) => {
let location = error.location();
self.add_error(ParseErrorType::Lexical(error.into_error()), location);
if kind.is_byte_string() {
if flags.is_byte_string() {
// test_err invalid_byte_literal
// b'123a𝐁c'
// rb"a𝐁c123"
@ -1249,7 +1249,7 @@ impl<'src> Parser<'src> {
StringType::Bytes(ast::BytesLiteral {
value: Box::new([]),
range,
flags: ast::BytesLiteralFlags::from(kind).with_invalid(),
flags: ast::BytesLiteralFlags::from(flags).with_invalid(),
})
} else {
// test_err invalid_string_literal
@ -1258,7 +1258,7 @@ impl<'src> Parser<'src> {
StringType::Str(ast::StringLiteral {
value: "".into(),
range,
flags: ast::StringLiteralFlags::from(kind).with_invalid(),
flags: ast::StringLiteralFlags::from(flags).with_invalid(),
})
}
}
@ -1306,12 +1306,12 @@ impl<'src> Parser<'src> {
FStringElement::Expression(parser.parse_fstring_expression_element())
}
TokenKind::FStringMiddle => {
let (Tok::FStringMiddle { value, kind, .. }, range) = parser.next_token()
let (Tok::FStringMiddle { value, flags, .. }, range) = parser.next_token()
else {
unreachable!()
};
FStringElement::Literal(
parse_fstring_literal_element(value, kind, range).unwrap_or_else(
parse_fstring_literal_element(value, flags, range).unwrap_or_else(
|lex_error| {
// test_err invalid_fstring_literal_element
// f'hello \N{INVALID} world'