From da4848610682f64bc577504576fe5b7c3d50d433 Mon Sep 17 00:00:00 2001 From: Semyon Proshev Date: Thu, 1 Nov 2018 19:33:47 +0300 Subject: [PATCH] Use new string literal API (PY-32321) --- .../python/validation/CompatibilityVisitor.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java b/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java index 6182fbf404bd..6220133d98ee 100644 --- a/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java +++ b/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java @@ -216,17 +216,15 @@ public abstract class CompatibilityVisitor extends PyAnnotator { public void visitPyStringLiteralExpression(final PyStringLiteralExpression node) { super.visitPyStringLiteralExpression(node); - for (ASTNode stringNode : node.getStringNodes()) { - final String text = stringNode.getText(); - final int prefixLength = PyStringLiteralUtil.getPrefixLength(text); - final String prefix = text.substring(0, prefixLength).toUpperCase(); + for (PyStringElement element : node.getStringElements()) { + final String prefix = element.getPrefix().toUpperCase(); if (prefix.isEmpty()) continue; - final TextRange range = TextRange.create(stringNode.getStartOffset(), stringNode.getStartOffset() + prefixLength); + final int elementStart = element.getTextOffset(); registerForAllMatchingVersions(level -> !getSupportedStringPrefixes(level).contains(prefix), " not support a '" + prefix + "' prefix", node, - range, + TextRange.create(elementStart, elementStart + element.getPrefixLength()), new RemovePrefixQuickFix(prefix), true); }