void (final @NotNull PyNumericLiteralExpression node) { super.visitPyNumericLiteralExpression(node); final String text = node.getText(); if (node.isIntegerLiteral()) { String suffix = node.getIntegerLiteralSuffix(); if ("l".equalsIgnoreCase(suffix)) { registerForAllMatchingVersions(level -> level.isPy3K() && registerForLanguageLevel(level), PyPsiBundle.message("INSP.compatibility.feature.support.long.integer.literal.suffix", suffix), node, new RemoveTrailingSuffixQuickFix()); } if (text.length() > 1 && text.charAt(0) == '0') { final char secondChar = Character.toLowerCase(text.charAt(1)); if (secondChar != 'o' && secondChar != 'b' && secondChar != 'x' && text.chars().anyMatch(c -> c != '0')) { registerForAllMatchingVersions(level -> level.isPy3K() && registerForLanguageLevel(level), PyPsiBundle.message("INSP.compatibility.feature.support.old.style.octal.literals"), node, new ReplaceOctalNumericLiteralQuickFix()); } } } if (text.contains("_")) { registerForAllMatchingVersions(level -> level.isOlderThan(LanguageLevel.PYTHON36) && registerForLanguageLevel(level), PyPsiBundle.message("INSP.compatibility.feature.support.underscores.in.numeric.literals"), node, new PyRemoveUnderscoresInNumericLiteralsQuickFix()); } }