public abstract class ResolutionContext<Context extends ResolutionContext> extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
DataFlowInfo |
dataFlowInfo |
JetType |
expectedType |
ExpressionPosition |
expressionPosition |
JetScope |
scope |
BindingTrace |
trace |
Modifier | Constructor and Description |
---|---|
protected |
ResolutionContext(BindingTrace trace,
JetScope scope,
JetType expectedType,
DataFlowInfo dataFlowInfo,
ExpressionPosition expressionPosition) |
Modifier and Type | Method and Description |
---|---|
protected abstract Context |
create(BindingTrace trace,
JetScope scope,
DataFlowInfo dataFlowInfo,
JetType expectedType,
ExpressionPosition expressionPosition) |
Context |
replaceBindingTrace(BindingTrace trace) |
Context |
replaceDataFlowInfo(DataFlowInfo newDataFlowInfo) |
Context |
replaceExpectedType(JetType newExpectedType) |
Context |
replaceExpressionPosition(ExpressionPosition expressionPosition) |
Context |
replaceScope(JetScope newScope) |
protected abstract Context |
self() |
public final BindingTrace trace
public final JetType expectedType
public final DataFlowInfo dataFlowInfo
public final ExpressionPosition expressionPosition
protected ResolutionContext(@NotNull BindingTrace trace, @NotNull JetScope scope, @NotNull JetType expectedType, @NotNull DataFlowInfo dataFlowInfo, @NotNull ExpressionPosition expressionPosition)
protected abstract Context create(@NotNull BindingTrace trace, @NotNull JetScope scope, @NotNull DataFlowInfo dataFlowInfo, @NotNull JetType expectedType, @NotNull ExpressionPosition expressionPosition)
public Context replaceBindingTrace(@NotNull BindingTrace trace)
@NotNull public Context replaceExpressionPosition(@NotNull ExpressionPosition expressionPosition)
@NotNull public Context replaceDataFlowInfo(@NotNull DataFlowInfo newDataFlowInfo)
@NotNull public Context replaceExpectedType(@Nullable JetType newExpectedType)
@NotNull public Context replaceScope(@NotNull JetScope newScope)