From ca66b2fdbda7fa342f350219f7d6bf125580e2b1 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Tue, 26 Apr 2011 13:43:03 +0400 Subject: [PATCH] Constructor descriptors are visible through BindingContext API --- .../src/org/jetbrains/jet/lang/resolve/BindingContext.java | 1 + .../jetbrains/jet/lang/resolve/BindingTraceContext.java | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/idea/src/org/jetbrains/jet/lang/resolve/BindingContext.java b/idea/src/org/jetbrains/jet/lang/resolve/BindingContext.java index ac4b9048111..5872c5b59f7 100644 --- a/idea/src/org/jetbrains/jet/lang/resolve/BindingContext.java +++ b/idea/src/org/jetbrains/jet/lang/resolve/BindingContext.java @@ -12,6 +12,7 @@ public interface BindingContext { ClassDescriptor getClassDescriptor(JetClass declaration); TypeParameterDescriptor getTypeParameterDescriptor(JetTypeParameter declaration); FunctionDescriptor getFunctionDescriptor(JetFunction declaration); + ConstructorDescriptor getConstructorDescriptor(JetElement declaration); VariableDescriptor getVariableDescriptor(JetProperty declaration); VariableDescriptor getParameterDescriptor(JetParameter declaration); diff --git a/idea/src/org/jetbrains/jet/lang/resolve/BindingTraceContext.java b/idea/src/org/jetbrains/jet/lang/resolve/BindingTraceContext.java index da6f721ed2c..b31ef953c21 100644 --- a/idea/src/org/jetbrains/jet/lang/resolve/BindingTraceContext.java +++ b/idea/src/org/jetbrains/jet/lang/resolve/BindingTraceContext.java @@ -2,6 +2,7 @@ package org.jetbrains.jet.lang.resolve; import com.intellij.psi.PsiElement; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.types.*; @@ -137,6 +138,12 @@ public class BindingTraceContext implements BindingContext, BindingTrace { return expressionTypes.get(expression); } + @Nullable + @Override + public ConstructorDescriptor getConstructorDescriptor(@NotNull JetElement declaration) { + return constructorDeclarationsToDescriptors.get(declaration); + } + @Override public DeclarationDescriptor resolveReferenceExpression(JetReferenceExpression referenceExpression) { return resolutionResults.get(referenceExpression);