Mutability of collections made explicit in BodiesResolveContext

This commit is contained in:
Andrey Breslav
2014-02-05 16:28:22 -08:00
parent d9dceca0c3
commit cbc132efba
@@ -18,7 +18,9 @@ package org.jetbrains.jet.lang.resolve;
import com.google.common.base.Function; import com.google.common.base.Function;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.Mutable;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.jet.context.GlobalContext; import org.jetbrains.jet.context.GlobalContext;
import org.jetbrains.jet.lang.descriptors.PropertyDescriptor; import org.jetbrains.jet.lang.descriptors.PropertyDescriptor;
import org.jetbrains.jet.lang.descriptors.ScriptDescriptor; import org.jetbrains.jet.lang.descriptors.ScriptDescriptor;
@@ -41,12 +43,20 @@ public interface BodiesResolveContext extends GlobalContext {
@NotNull @NotNull
@Override @Override
ExceptionTracker getExceptionTracker(); ExceptionTracker getExceptionTracker();
@ReadOnly
Collection<JetFile> getFiles(); Collection<JetFile> getFiles();
@Mutable
Map<JetClassOrObject, MutableClassDescriptor> getClasses(); Map<JetClassOrObject, MutableClassDescriptor> getClasses();
@Mutable
Map<JetProperty, PropertyDescriptor> getProperties(); Map<JetProperty, PropertyDescriptor> getProperties();
@Mutable
Map<JetNamedFunction, SimpleFunctionDescriptor> getFunctions(); Map<JetNamedFunction, SimpleFunctionDescriptor> getFunctions();
Function<JetDeclaration, JetScope> getDeclaringScopes(); Function<JetDeclaration, JetScope> getDeclaringScopes();
@Mutable
Map<JetScript, ScriptDescriptor> getScripts(); Map<JetScript, ScriptDescriptor> getScripts();
@Mutable
Map<JetScript, WritableScope> getScriptScopes(); Map<JetScript, WritableScope> getScriptScopes();
DataFlowInfo getOuterDataFlowInfo(); DataFlowInfo getOuterDataFlowInfo();