summaryrefslogtreecommitdiff
path: root/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java')
-rw-r--r--java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java21
1 files changed, 15 insertions, 6 deletions
diff --git a/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java b/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java
index 13e8f155dff4..eeaa1c21015e 100644
--- a/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java
+++ b/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java
@@ -285,13 +285,20 @@ public class JVMNameUtil {
return DebuggerManager.getInstance(aClass.getProject()).getVMClassQualifiedName(aClass);
}
+ public static JVMName getJVMConstructorSignature(@Nullable PsiMethod method, @Nullable PsiClass declaringClass) {
+ return getJVMSignature(method, true, declaringClass);
+ }
+
+ public static JVMName getJVMSignature(@NotNull PsiMethod method) {
+ return getJVMSignature(method, method.isConstructor(), method.getContainingClass());
+ }
+
@SuppressWarnings({"HardCodedStringLiteral"})
- public static JVMName getJVMSignature(PsiMethod method) {
+ private static JVMName getJVMSignature(@Nullable PsiMethod method, boolean constructor, @Nullable PsiClass declaringClass) {
JVMNameBuffer signature = new JVMNameBuffer();
signature.append("(");
- if (method.isConstructor()) {
- final PsiClass declaringClass = method.getContainingClass();
+ if (constructor) {
if (declaringClass != null) {
final PsiClass outerClass = declaringClass.getContainingClass();
if (outerClass != null) {
@@ -302,11 +309,13 @@ public class JVMNameUtil {
}
}
}
- for (PsiParameter psiParameter : method.getParameterList().getParameters()) {
- appendJVMSignature(signature, psiParameter.getType());
+ if (method != null) {
+ for (PsiParameter psiParameter : method.getParameterList().getParameters()) {
+ appendJVMSignature(signature, psiParameter.getType());
+ }
}
signature.append(")");
- if (!method.isConstructor()) {
+ if (!constructor && method != null) {
appendJVMSignature(signature, method.getReturnType());
}
else {