001 package org.jetbrains.jet.lang.resolve.calls.context;
002
003 import org.jetbrains.annotations.NotNull;
004 import org.jetbrains.jet.lang.resolve.BindingTrace;
005 import org.jetbrains.jet.lang.resolve.calls.autocasts.DataFlowInfo;
006 import org.jetbrains.jet.lang.resolve.scopes.JetScope;
007 import org.jetbrains.jet.lang.types.JetType;
008 import org.jetbrains.jet.lang.types.expressions.LabelResolver;
009
010 public class SimpleResolutionContext extends ResolutionContext<SimpleResolutionContext> {
011 public SimpleResolutionContext(
012 @NotNull BindingTrace trace,
013 @NotNull JetScope scope,
014 @NotNull JetType expectedType,
015 @NotNull DataFlowInfo dataFlowInfo,
016 @NotNull ExpressionPosition expressionPosition,
017 @NotNull ContextDependency contextDependency,
018 @NotNull ResolutionResultsCache resolutionResultsCache,
019 @NotNull LabelResolver labelResolver
020 ) {
021 super(trace, scope, expectedType, dataFlowInfo, expressionPosition, contextDependency, resolutionResultsCache, labelResolver);
022 }
023
024 @Override
025 protected SimpleResolutionContext create(
026 @NotNull BindingTrace trace,
027 @NotNull JetScope scope,
028 @NotNull DataFlowInfo dataFlowInfo,
029 @NotNull JetType expectedType,
030 @NotNull ExpressionPosition expressionPosition,
031 @NotNull ContextDependency contextDependency,
032 @NotNull ResolutionResultsCache resolutionResultsCache,
033 @NotNull LabelResolver labelResolver
034 ) {
035 return new SimpleResolutionContext(
036 trace, scope, expectedType, dataFlowInfo, expressionPosition, contextDependency, resolutionResultsCache, labelResolver);
037 }
038
039 @Override
040 protected SimpleResolutionContext self() {
041 return this;
042 }
043 }