Skip to content

Commit

Permalink
Rename semantic model flag LITERAL to TYPING_LITERAL (#8997)
Browse files Browse the repository at this point in the history
This PR renames the semantic model flag `LITERAL` to `TYPING_LITERAL` to
better reflect its purpose. The main motivation behind this change is to
avoid any confusion with the "literal" terminology used in the AST for
literal nodes like string, bytes, numbers, etc.
  • Loading branch information
dhruvmanila committed Dec 4, 2023
1 parent f5d4676 commit 060a25d
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 6 deletions.
6 changes: 3 additions & 3 deletions crates/ruff_linter/src/checkers/ast/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -816,7 +816,7 @@ where
fn visit_expr(&mut self, expr: &'b Expr) {
// Step 0: Pre-processing
if !self.semantic.in_f_string()
&& !self.semantic.in_literal()
&& !self.semantic.in_typing_literal()
&& !self.semantic.in_deferred_type_definition()
&& self.semantic.in_type_definition()
&& self.semantic.future_annotations()
Expand Down Expand Up @@ -1198,7 +1198,7 @@ where
) {
// Ex) Literal["Class"]
Some(typing::SubscriptKind::Literal) => {
self.semantic.flags |= SemanticModelFlags::LITERAL;
self.semantic.flags |= SemanticModelFlags::TYPING_LITERAL;

self.visit_expr(slice);
self.visit_expr_context(ctx);
Expand Down Expand Up @@ -1239,7 +1239,7 @@ where
}
Expr::StringLiteral(ast::ExprStringLiteral { value, .. }) => {
if self.semantic.in_type_definition()
&& !self.semantic.in_literal()
&& !self.semantic.in_typing_literal()
&& !self.semantic.in_f_string()
{
self.deferred.string_type_definitions.push((
Expand Down
6 changes: 3 additions & 3 deletions crates/ruff_python_semantic/src/model.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1359,8 +1359,8 @@ impl<'a> SemanticModel<'a> {
}

/// Return `true` if the model is in a `typing::Literal` annotation.
pub const fn in_literal(&self) -> bool {
self.flags.intersects(SemanticModelFlags::LITERAL)
pub const fn in_typing_literal(&self) -> bool {
self.flags.intersects(SemanticModelFlags::TYPING_LITERAL)
}

/// Return `true` if the model is in a subscript expression.
Expand Down Expand Up @@ -1576,7 +1576,7 @@ bitflags! {
/// def f(x: Literal["A", "B", "C"]):
/// ...
/// ```
const LITERAL = 1 << 9;
const TYPING_LITERAL = 1 << 9;

/// The model is in a subscript expression.
///
Expand Down

0 comments on commit 060a25d

Please sign in to comment.