mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
PyUtil.strValue() moved to PyPsiUtils
This commit is contained in:
@@ -368,6 +368,11 @@ public class PyPsiUtils {
|
||||
return expr;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static String strValue(@Nullable PyExpression expression) {
|
||||
return expression instanceof PyStringLiteralExpression ? ((PyStringLiteralExpression)expression).getStringValue() : null;
|
||||
}
|
||||
|
||||
private static abstract class TopLevelVisitor extends PyRecursiveElementVisitor {
|
||||
public void visitPyElement(final PyElement node) {
|
||||
super.visitPyElement(node);
|
||||
|
||||
@@ -112,7 +112,7 @@ public class PyNamedTupleType extends PyClassTypeImpl implements PyCallableType
|
||||
|
||||
@Nullable
|
||||
public static PyType fromCall(PyCallExpression call) {
|
||||
final String name = PyUtil.strValue(call.getArgument(0, PyExpression.class));
|
||||
final String name = PyPsiUtils.strValue(call.getArgument(0, PyExpression.class));
|
||||
final PyExpression fieldNamesExpression = PyPsiUtils.flattenParens(call.getArgument(1, PyExpression.class));
|
||||
if (name == null || fieldNamesExpression == null) {
|
||||
return null;
|
||||
@@ -122,7 +122,7 @@ public class PyNamedTupleType extends PyClassTypeImpl implements PyCallableType
|
||||
fieldNames = PyUtil.strListValue(fieldNamesExpression);
|
||||
}
|
||||
else {
|
||||
final String fieldNamesString = PyUtil.strValue(fieldNamesExpression);
|
||||
final String fieldNamesString = PyPsiUtils.strValue(fieldNamesExpression);
|
||||
if (fieldNamesString != null) {
|
||||
fieldNames = parseFieldNamesString(fieldNamesString);
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.jetbrains.python.console.PyConsoleUtil;
|
||||
import com.jetbrains.python.psi.*;
|
||||
import com.jetbrains.python.psi.impl.PyBuiltinCache;
|
||||
import com.jetbrains.python.psi.impl.PyCallExpressionHelper;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
import com.jetbrains.python.psi.resolve.PyResolveContext;
|
||||
import com.jetbrains.python.psi.resolve.QualifiedResolveResult;
|
||||
import com.jetbrains.python.psi.resolve.RootVisitor;
|
||||
@@ -356,7 +357,7 @@ class DocumentationBuilder {
|
||||
private void addParameterDoc(PyNamedParameter followed) {
|
||||
PyFunction function = PsiTreeUtil.getParentOfType(followed, PyFunction.class);
|
||||
if (function != null) {
|
||||
final String docString = PyUtil.strValue(function.getDocStringExpression());
|
||||
final String docString = PyPsiUtils.strValue(function.getDocStringExpression());
|
||||
StructuredDocString structuredDocString = StructuredDocString.parse(docString);
|
||||
if (structuredDocString != null) {
|
||||
final String name = followed.getName();
|
||||
@@ -388,7 +389,7 @@ class DocumentationBuilder {
|
||||
.addItem(" of class ").addWith(PythonDocumentationProvider.LinkMyClass, $().addWith(TagCode, $(cls.getName()))).addItem(BR)
|
||||
;
|
||||
|
||||
final String docString = PyUtil.strValue(PyUtil.getAttributeDocString((PyTargetExpression)myElement));
|
||||
final String docString = PyPsiUtils.strValue(PyUtil.getAttributeDocString((PyTargetExpression)myElement));
|
||||
if (docString != null) {
|
||||
addFormattedDocString(myElement, docString, myBody, myEpilog);
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ import com.intellij.util.xmlb.annotations.Transient;
|
||||
import com.jetbrains.python.PyNames;
|
||||
import com.jetbrains.python.psi.PyFile;
|
||||
import com.jetbrains.python.psi.PyTargetExpression;
|
||||
import com.jetbrains.python.psi.PyUtil;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -41,7 +41,7 @@ public class PyDocumentationSettings implements PersistentStateComponent<PyDocum
|
||||
if (file instanceof PyFile) {
|
||||
PyTargetExpression expr = ((PyFile) file).findTopLevelAttribute(PyNames.DOCFORMAT);
|
||||
if (expr != null) {
|
||||
String docformat = PyUtil.strValue(expr.findAssignedValue());
|
||||
String docformat = PyPsiUtils.strValue(expr.findAssignedValue());
|
||||
if (docformat != null) {
|
||||
final List<String> words = StringUtil.split(docformat, " ");
|
||||
return words.size() > 0 && format.equalsIgnoreCase(words.get(0));
|
||||
|
||||
@@ -24,6 +24,7 @@ import com.jetbrains.python.console.PydevConsoleRunner;
|
||||
import com.jetbrains.python.console.PydevDocumentationProvider;
|
||||
import com.jetbrains.python.psi.*;
|
||||
import com.jetbrains.python.psi.impl.PyBuiltinCache;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
import com.jetbrains.python.psi.impl.PyQualifiedName;
|
||||
import com.jetbrains.python.psi.resolve.QualifiedNameFinder;
|
||||
import com.jetbrains.python.psi.types.*;
|
||||
@@ -284,7 +285,7 @@ public class PythonDocumentationProvider extends AbstractDocumentationProvider i
|
||||
}
|
||||
|
||||
private static boolean specifiesReturnType(PyStringLiteralExpression docStringExpression) {
|
||||
String value = PyUtil.strValue(docStringExpression);
|
||||
String value = PyPsiUtils.strValue(docStringExpression);
|
||||
if (value == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -103,7 +103,7 @@ public class SetupTaskIntrospector {
|
||||
if (taskClass != null) {
|
||||
final PyTargetExpression description = taskClass.findClassAttribute("description", true);
|
||||
if (description != null) {
|
||||
final String descriptionText = PyUtil.strValue(PyPsiUtils.flattenParens(description.findAssignedValue()));
|
||||
final String descriptionText = PyPsiUtils.strValue(PyPsiUtils.flattenParens(description.findAssignedValue()));
|
||||
if (descriptionText != null) {
|
||||
task.setDescription(descriptionText);
|
||||
}
|
||||
@@ -112,7 +112,7 @@ public class SetupTaskIntrospector {
|
||||
final List<PyExpression> booleanOptions = resolveSequenceValue(taskClass, "boolean_options");
|
||||
final List<String> booleanOptionsList = new ArrayList<String>();
|
||||
for (PyExpression option : booleanOptions) {
|
||||
final String s = PyUtil.strValue(option);
|
||||
final String s = PyPsiUtils.strValue(option);
|
||||
if (s != null) {
|
||||
booleanOptionsList.add(s);
|
||||
}
|
||||
@@ -167,8 +167,8 @@ public class SetupTaskIntrospector {
|
||||
if (dict instanceof PyDictLiteralExpression) {
|
||||
final PyKeyValueExpression[] elements = ((PyDictLiteralExpression)dict).getElements();
|
||||
for (PyKeyValueExpression element : elements) {
|
||||
String key = PyUtil.strValue(PyPsiUtils.flattenParens(element.getKey()));
|
||||
String value = PyUtil.strValue(PyPsiUtils.flattenParens(element.getValue()));
|
||||
String key = PyPsiUtils.strValue(PyPsiUtils.flattenParens(element.getKey()));
|
||||
String value = PyPsiUtils.strValue(PyPsiUtils.flattenParens(element.getValue()));
|
||||
if (key != null && value != null) {
|
||||
result.put(key, value);
|
||||
}
|
||||
@@ -183,8 +183,8 @@ public class SetupTaskIntrospector {
|
||||
if (tuple instanceof PyTupleExpression) {
|
||||
final PyExpression[] elements = ((PyTupleExpression)tuple).getElements();
|
||||
if (elements.length == 3) {
|
||||
String name = PyUtil.strValue(elements[0]);
|
||||
final String description = PyUtil.strValue(elements[2]);
|
||||
String name = PyPsiUtils.strValue(elements[0]);
|
||||
final String description = PyPsiUtils.strValue(elements[2]);
|
||||
if (name != null && description != null) {
|
||||
if (negativeOptMap.containsKey(name)) {
|
||||
return null;
|
||||
|
||||
@@ -39,6 +39,7 @@ import com.jetbrains.python.codeInsight.dataflow.scope.ScopeUtil;
|
||||
import com.jetbrains.python.codeInsight.stdlib.PyNamedTupleType;
|
||||
import com.jetbrains.python.documentation.EpydocUtil;
|
||||
import com.jetbrains.python.psi.impl.PyBuiltinCache;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
import com.jetbrains.python.psi.resolve.PyResolveContext;
|
||||
import com.jetbrains.python.psi.resolve.QualifiedResolveResult;
|
||||
import com.jetbrains.python.psi.types.*;
|
||||
@@ -832,11 +833,6 @@ public class PyUtil {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static String strValue(@Nullable PyExpression expression) {
|
||||
return expression instanceof PyStringLiteralExpression ? ((PyStringLiteralExpression)expression).getStringValue() : null;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static Map<String, PyExpression> dictValue(@NotNull PyDictLiteralExpression dict) {
|
||||
Map<String, PyExpression> result = Maps.newLinkedHashMap();
|
||||
@@ -881,7 +877,7 @@ public class PyUtil {
|
||||
|
||||
@Nullable
|
||||
public static String getKeywordArgumentString(PyCallExpression expr, String keyword) {
|
||||
return strValue(expr.getKeywordArgument(keyword));
|
||||
return PyPsiUtils.strValue(expr.getKeywordArgument(keyword));
|
||||
}
|
||||
|
||||
public static boolean isExceptionClass(PyClass pyClass) {
|
||||
|
||||
@@ -1015,7 +1015,7 @@ public class PyClassImpl extends PyPresentableElementImpl<PyClassStub> implement
|
||||
if (stub != null) {
|
||||
return stub.getDocString();
|
||||
}
|
||||
return PyUtil.strValue(getDocStringExpression());
|
||||
return PyPsiUtils.strValue(getDocStringExpression());
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
|
||||
@@ -344,7 +344,7 @@ public class PyFunctionImpl extends PyPresentableElementImpl<PyFunctionStub> imp
|
||||
PyReferenceExpression warningClass = callExpression.getArgument(1, PyReferenceExpression.class);
|
||||
if (warningClass != null && (PyNames.DEPRECATION_WARNING.equals(warningClass.getReferencedName()) ||
|
||||
PyNames.PENDING_DEPRECATION_WARNING.equals(warningClass.getReferencedName()))) {
|
||||
return PyUtil.strValue(callExpression.getArguments()[0]);
|
||||
return PyPsiUtils.strValue(callExpression.getArguments()[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -360,7 +360,7 @@ public class PyFunctionImpl extends PyPresentableElementImpl<PyFunctionStub> imp
|
||||
return stub.getDocString();
|
||||
}
|
||||
final PyStringLiteralExpression docStringExpression = getDocStringExpression();
|
||||
return PyUtil.strValue(docStringExpression);
|
||||
return PyPsiUtils.strValue(docStringExpression);
|
||||
}
|
||||
|
||||
private boolean isGeneratedStub() {
|
||||
|
||||
@@ -210,7 +210,7 @@ public class PyTargetExpressionImpl extends PyPresentableElementImpl<PyTargetExp
|
||||
|
||||
@Nullable
|
||||
public static PyType getTypeFromDocString(PyTargetExpressionImpl targetExpression) {
|
||||
final String docString = PyUtil.strValue(PyUtil.getAttributeDocString(targetExpression));
|
||||
final String docString = PyPsiUtils.strValue(PyUtil.getAttributeDocString(targetExpression));
|
||||
if (docString != null) {
|
||||
StructuredDocString structuredDocString = StructuredDocString.parse(docString);
|
||||
if (structuredDocString != null) {
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.intellij.util.io.StringRef;
|
||||
import com.jetbrains.python.PyElementTypes;
|
||||
import com.jetbrains.python.psi.*;
|
||||
import com.jetbrains.python.psi.impl.PyClassImpl;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
import com.jetbrains.python.psi.impl.PyQualifiedName;
|
||||
import com.jetbrains.python.psi.stubs.PyClassNameIndex;
|
||||
import com.jetbrains.python.psi.stubs.PyClassNameIndexInsensitive;
|
||||
@@ -48,7 +49,7 @@ public class PyClassElementType extends PyStubElementType<PyClassStub, PyClass>
|
||||
return new PyClassStubImpl(psi.getName(), parentStub,
|
||||
superClasses.toArray(new PyQualifiedName[superClasses.size()]),
|
||||
((PyClassImpl) psi).getOwnSlots(),
|
||||
PyUtil.strValue(docStringExpression),
|
||||
PyPsiUtils.strValue(docStringExpression),
|
||||
getStubElementType());
|
||||
}
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@ import com.jetbrains.python.PyElementTypes;
|
||||
import com.jetbrains.python.psi.PyFunction;
|
||||
import com.jetbrains.python.psi.PyStringLiteralExpression;
|
||||
import com.jetbrains.python.psi.PyStubElementType;
|
||||
import com.jetbrains.python.psi.PyUtil;
|
||||
import com.jetbrains.python.psi.impl.PyFunctionImpl;
|
||||
import com.jetbrains.python.psi.impl.PyPsiUtils;
|
||||
import com.jetbrains.python.psi.stubs.PyFunctionNameIndex;
|
||||
import com.jetbrains.python.psi.stubs.PyFunctionStub;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -40,7 +40,7 @@ public class PyFunctionElementType extends PyStubElementType<PyFunctionStub, PyF
|
||||
PyFunctionImpl function = (PyFunctionImpl)psi;
|
||||
String message = function.extractDeprecationMessage();
|
||||
final PyStringLiteralExpression docStringExpression = function.getDocStringExpression();
|
||||
return new PyFunctionStubImpl(psi.getName(), PyUtil.strValue(docStringExpression),
|
||||
return new PyFunctionStubImpl(psi.getName(), PyPsiUtils.strValue(docStringExpression),
|
||||
message == null ? null : StringRef.fromString(message), parentStub, getStubElementType());
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user