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    
009    public class SimpleResolutionContext extends ResolutionContext<SimpleResolutionContext> {
010        public SimpleResolutionContext(
011                @NotNull BindingTrace trace,
012                @NotNull JetScope scope,
013                @NotNull JetType expectedType,
014                @NotNull DataFlowInfo dataFlowInfo,
015                @NotNull ExpressionPosition expressionPosition
016        ) {
017            super(trace, scope, expectedType, dataFlowInfo, expressionPosition);
018        }
019    
020        @Override
021        protected SimpleResolutionContext create(
022                @NotNull BindingTrace trace,
023                @NotNull JetScope scope,
024                @NotNull DataFlowInfo dataFlowInfo,
025                @NotNull JetType expectedType,
026                @NotNull ExpressionPosition expressionPosition
027        ) {
028            return new SimpleResolutionContext(trace, scope, expectedType, dataFlowInfo, expressionPosition);
029        }
030    
031        @Override
032        protected SimpleResolutionContext self() {
033            return this;
034        }
035    }