diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java index b73a2b56279..607d88d6b20 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java @@ -562,8 +562,8 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen { @Override protected void generateDeclaration(PropertyCodegen propertyCodegen, JetDeclaration declaration, FunctionCodegen functionCodegen) { - if (declaration instanceof JetConstructor) { - generateSecondaryConstructor((JetConstructor) declaration); + if (declaration instanceof JetSecondaryConstructor) { + generateSecondaryConstructor((JetSecondaryConstructor) declaration); } else if (declaration instanceof JetClassObject) { generateClassObject((JetClassObject) declaration); @@ -622,7 +622,7 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen { } } - private void generateSecondaryConstructor(JetConstructor constructor) { + private void generateSecondaryConstructor(JetSecondaryConstructor constructor) { ConstructorDescriptor constructorDescriptor = state.getBindingContext().get(BindingContext.CONSTRUCTOR, constructor); if (constructorDescriptor == null) { throw new UnsupportedOperationException("failed to get descriptor for secondary constructor"); diff --git a/compiler/frontend/src/org/jetbrains/jet/JetNodeTypes.java b/compiler/frontend/src/org/jetbrains/jet/JetNodeTypes.java index e26d14c12dc..3f7fe8350e5 100644 --- a/compiler/frontend/src/org/jetbrains/jet/JetNodeTypes.java +++ b/compiler/frontend/src/org/jetbrains/jet/JetNodeTypes.java @@ -19,7 +19,7 @@ public interface JetNodeTypes { JetNodeType OBJECT_DECLARATION_NAME = new JetNodeType("OBJECT_DECLARATION_NAME", JetObjectDeclarationName.class); JetNodeType CLASS_OBJECT = new JetNodeType("CLASS_OBJECT", JetClassObject.class); - JetNodeType CONSTRUCTOR = new JetNodeType("CONSTRUCTOR", JetConstructor.class); + JetNodeType CONSTRUCTOR = new JetNodeType("CONSTRUCTOR", JetSecondaryConstructor.class); JetNodeType ENUM_ENTRY = new JetNodeType("ENUM_ENTRY", JetEnumEntry.class); JetNodeType ANONYMOUS_INITIALIZER = new JetNodeType("ANONYMOUS_INITIALIZER", JetClassInitializer.class); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java index 6844d746734..e569ff1327d 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java @@ -553,7 +553,7 @@ public class JetControlFlowProcessor { trace.report(RETURN_NOT_ALLOWED.on(expression)); error = true; } - if (subroutine instanceof JetFunction || subroutine instanceof JetPropertyAccessor || subroutine instanceof JetConstructor) { + if (subroutine instanceof JetFunction || subroutine instanceof JetPropertyAccessor || subroutine instanceof JetSecondaryConstructor) { if (returnedExpression == null) { builder.returnNoValue(expression, subroutine); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClass.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClass.java index c03bf3a471e..81f1dc63fae 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClass.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClass.java @@ -26,7 +26,7 @@ public class JetClass extends JetTypeParameterListOwner implements JetClassOrObj } @NotNull - public List getSecondaryConstructors() { + public List getSecondaryConstructors() { JetClassBody body = (JetClassBody) findChildByType(JetNodeTypes.CLASS_BODY); if (body == null) return Collections.emptyList(); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClassBody.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClassBody.java index ea4768639d1..efe170fdc49 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClassBody.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetClassBody.java @@ -23,8 +23,8 @@ public class JetClassBody extends JetElement { return PsiTreeUtil.getChildrenOfTypeAsList(this, JetDeclaration.class); } - public List getSecondaryConstructors() { - return PsiTreeUtil.getChildrenOfTypeAsList(this, JetConstructor.class); + public List getSecondaryConstructors() { + return PsiTreeUtil.getChildrenOfTypeAsList(this, JetSecondaryConstructor.class); } @Override diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetConstructor.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSecondaryConstructor.java similarity index 92% rename from compiler/frontend/src/org/jetbrains/jet/lang/psi/JetConstructor.java rename to compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSecondaryConstructor.java index 70f9846a356..6d20610771c 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetConstructor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSecondaryConstructor.java @@ -12,8 +12,8 @@ import java.util.List; /** * @author max */ -public class JetConstructor extends JetDeclaration implements JetDeclarationWithBody { - public JetConstructor(@NotNull ASTNode node) { +public class JetSecondaryConstructor extends JetDeclaration implements JetDeclarationWithBody { + public JetSecondaryConstructor(@NotNull ASTNode node) { super(node); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitor.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitor.java index 4817657f54c..7b62fcac518 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitor.java @@ -27,7 +27,7 @@ public class JetVisitor extends PsiElementVisitor { return visitDeclaration(classObject, data); } - public R visitConstructor(JetConstructor constructor, D data) { + public R visitConstructor(JetSecondaryConstructor constructor, D data) { return visitDeclaration(constructor, data); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitorVoid.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitorVoid.java index e62e607a705..0f649207239 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitorVoid.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetVisitorVoid.java @@ -26,7 +26,7 @@ public class JetVisitorVoid extends PsiElementVisitor { visitDeclaration(classObject); } - public void visitConstructor(JetConstructor constructor) { + public void visitConstructor(JetSecondaryConstructor constructor) { visitDeclaration(constructor); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java index c08a8fc9cc1..0048d2e6439 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java @@ -282,8 +282,8 @@ public class BodyResolver { } private void resolveSecondaryConstructorBodies() { - for (Map.Entry entry : this.context.getConstructors().entrySet()) { - JetConstructor constructor = entry.getKey(); + for (Map.Entry entry : this.context.getConstructors().entrySet()) { + JetSecondaryConstructor constructor = entry.getKey(); ConstructorDescriptor descriptor = entry.getValue(); resolveSecondaryConstructorBody(constructor, descriptor, ((MutableClassDescriptor) descriptor.getContainingDeclaration()).getScopeForMemberResolution()); @@ -292,7 +292,7 @@ public class BodyResolver { } } - private void resolveSecondaryConstructorBody(JetConstructor declaration, final ConstructorDescriptor descriptor, final JetScope declaringScope) { + private void resolveSecondaryConstructorBody(JetSecondaryConstructor declaration, final ConstructorDescriptor descriptor, final JetScope declaringScope) { if (!context.completeAnalysisNeeded(declaration)) return; final JetScope functionInnerScope = getInnerScopeForConstructor(descriptor, declaringScope, false); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ClassDescriptorResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ClassDescriptorResolver.java index f5af5a3b92a..3de809f0f8b 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ClassDescriptorResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ClassDescriptorResolver.java @@ -731,7 +731,7 @@ public class ClassDescriptorResolver { } @NotNull - public ConstructorDescriptorImpl resolveSecondaryConstructorDescriptor(@NotNull JetScope scope, @NotNull ClassDescriptor classDescriptor, @NotNull JetConstructor constructor) { + public ConstructorDescriptorImpl resolveSecondaryConstructorDescriptor(@NotNull JetScope scope, @NotNull ClassDescriptor classDescriptor, @NotNull JetSecondaryConstructor constructor) { return createConstructorDescriptor(scope, classDescriptor, false, constructor.getModifierList(), constructor, classDescriptor.getTypeConstructor().getParameters(), constructor.getValueParameters()); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.java index 601668ac784..6055cc166ff 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.java @@ -45,7 +45,7 @@ public class ControlFlowAnalyzer { : functionDescriptor.getReturnType(); checkFunction(function, expectedReturnType); } - for (JetConstructor constructor : this.context.getConstructors().keySet()) { + for (JetSecondaryConstructor constructor : this.context.getConstructors().keySet()) { if (!context.completeAnalysisNeeded(constructor)) continue; checkFunction(constructor, JetStandardClasses.getUnitType()); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DeclarationResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DeclarationResolver.java index 0d1cc073e49..84f80ad1328 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DeclarationResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DeclarationResolver.java @@ -37,7 +37,7 @@ public class DeclarationResolver { MutableClassDescriptor classDescriptor = entry.getValue(); processPrimaryConstructor(classDescriptor, jetClass); - for (JetConstructor jetConstructor : jetClass.getSecondaryConstructors()) { + for (JetSecondaryConstructor jetConstructor : jetClass.getSecondaryConstructors()) { processSecondaryConstructor(classDescriptor, jetConstructor); } } @@ -75,7 +75,7 @@ public class DeclarationResolver { resolveFunctionAndPropertyHeaders(jetClass.getDeclarations(), classDescriptor.getScopeForMemberResolution(), classDescriptor); // processPrimaryConstructor(classDescriptor, jetClass); -// for (JetConstructor jetConstructor : jetClass.getSecondaryConstructors()) { +// for (JetSecondaryConstructor jetConstructor : jetClass.getSecondaryConstructors()) { // processSecondaryConstructor(classDescriptor, jetConstructor); // } } @@ -154,7 +154,7 @@ public class DeclarationResolver { } } - private void processSecondaryConstructor(MutableClassDescriptor classDescriptor, JetConstructor constructor) { + private void processSecondaryConstructor(MutableClassDescriptor classDescriptor, JetSecondaryConstructor constructor) { if (classDescriptor.getKind() == ClassKind.TRAIT) { // context.getTrace().getErrorHandler().genericError(constructor.getNameNode(), "A trait may not have a constructor"); context.getTrace().report(CONSTRUCTOR_IN_TRAIT.on(constructor.getNameNode())); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.java index 012d5bebf7c..f03bfdbd5c7 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.java @@ -33,7 +33,7 @@ import java.util.Set; private final Map declaringScopes = Maps.newHashMap(); private final Map functions = Maps.newLinkedHashMap(); - private final Map constructors = Maps.newLinkedHashMap(); + private final Map constructors = Maps.newLinkedHashMap(); private final Map properties = Maps.newLinkedHashMap(); private final Set primaryConstructorParameterProperties = Sets.newHashSet(); @@ -117,7 +117,7 @@ import java.util.Set; return primaryConstructorParameterProperties; } - public Map getConstructors() { + public Map getConstructors() { return constructors; } diff --git a/compiler/tests/org/jetbrains/jet/cfg/JetControlFlowTest.java b/compiler/tests/org/jetbrains/jet/cfg/JetControlFlowTest.java index 3a63dc0f92c..820bc7a431d 100644 --- a/compiler/tests/org/jetbrains/jet/cfg/JetControlFlowTest.java +++ b/compiler/tests/org/jetbrains/jet/cfg/JetControlFlowTest.java @@ -101,7 +101,7 @@ public class JetControlFlowTest extends JetLiteFixture { for (Pseudocode pseudocode : pseudocodes) { JetElement correspondingElement = pseudocode.getCorrespondingElement(); String label = ""; - assert (correspondingElement instanceof JetNamedDeclaration || correspondingElement instanceof JetConstructor || correspondingElement instanceof JetPropertyAccessor) : + assert (correspondingElement instanceof JetNamedDeclaration || correspondingElement instanceof JetSecondaryConstructor || correspondingElement instanceof JetPropertyAccessor) : "Unexpected element class is pseudocode: " + correspondingElement.getClass(); if (correspondingElement instanceof JetFunctionLiteral) { label = "anonymous_" + i++; @@ -114,7 +114,7 @@ public class JetControlFlowTest extends JetLiteFixture { String propertyName = ((JetProperty) correspondingElement.getParent()).getName(); label = (((JetPropertyAccessor) correspondingElement).isGetter() ? "get" : "set") + "_" + propertyName; } - else if (correspondingElement instanceof JetConstructor) { + else if (correspondingElement instanceof JetSecondaryConstructor) { label = "this"; } diff --git a/compiler/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java b/compiler/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java index 202905b1477..66941d6ac14 100644 --- a/compiler/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java +++ b/compiler/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java @@ -684,7 +684,7 @@ public class JetTypeCheckerTest extends JetLiteFixture { constructors, null ); - for (JetConstructor constructor : classElement.getSecondaryConstructors()) { + for (JetSecondaryConstructor constructor : classElement.getSecondaryConstructors()) { ConstructorDescriptorImpl functionDescriptor = classDescriptorResolver.resolveSecondaryConstructorDescriptor(memberDeclarations, classDescriptor, constructor); functionDescriptor.setReturnType(classDescriptor.getDefaultType()); constructors.add(functionDescriptor);