| Chunk |
|---|
| Conflicting content |
|---|
=======
@Override
protected LazyExpectation(JvmTypeReference declaredType) {
this.declaredType = declaredType;
<<<<<<< HEAD
substitutor = getState().createSubstitutor(getDeclaratorParameterMapping());
substitutor.enhanceMapping(getFeatureTypeParameterMapping());
substitutor = new UnboundTypeParameterPreservingSubstitutor(getDeclaratorParameterMapping(), getState().getServices()) {
@Override
public JvmTypeReference doVisitComputedTypeReference(XComputedTypeReference reference,
Set |
| Solution content |
|---|
protected LazyExpectation(JvmTypeReference declaredType) {
this.declaredType = declaredType;
substitutor = getState().createSubstitutor(getDeclaratorParameterMapping());
substitutor.enhanceMapping(typeParameterMapping);
}
@Override |
| File |
|---|
| AbstractLinkingCandidateWithTypeParameter.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Attribute |
| Method invocation |
| Method signature |
| Chunk |
|---|
| Conflicting content |
|---|
Set |
| Solution content |
|---|
Set |
| File |
|---|
| AbstractLinkingCandidateWithTypeParameter.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Cast expression |
| Comment |
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
if (feature instanceof JvmTypeParameterDeclarator) {
List |
| Solution content |
|---|
if (feature instanceof JvmTypeParameterDeclarator) {
List |
| File |
|---|
| AbstractLinkingCandidateWithTypeParameter.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
if (boundTo != null) {
throw new IllegalStateException("Type parameter was already bound. No more hints may be accepted.");
}
<<<<<<< HEAD
JvmTypeReference hint = boundArgument.getTypeReference();
if (hint instanceof XComputedTypeReference) {
IJvmTypeReferenceProvider typeProvider = ((XComputedTypeReference) hint).getTypeProvider();
if (typeProvider instanceof BaseUnboundTypeParameter) {
BaseUnboundTypeParameter other = (BaseUnboundTypeParameter) typeProvider;
if (other.getResolvedTypes() != getResolvedTypes()) {
throw new IllegalStateException("Other unbound parameter was not substituted properly");
}
if (other.getBoundTo() != null) {
throw new IllegalStateException("Other parameter was already bound");
} else {
if (other.getHandle().equals(getHandle())) {
throw new IllegalStateException("Cannot add recursive hint");
=======
if (boundArgument.getSource() == BoundTypeArgumentSource.EXPLICIT) {
boundTo = new MergedBoundTypeArgument(boundArgument.getTypeReference(), boundArgument.getActualVariance());
} else {
JvmTypeReference hint = boundArgument.getTypeReference();
if (hint instanceof XComputedTypeReference) {
IJvmTypeReferenceProvider typeProvider = ((XComputedTypeReference) hint).getTypeProvider();
if (typeProvider instanceof BaseUnboundTypeParameter) {
BaseUnboundTypeParameter other = (BaseUnboundTypeParameter) typeProvider;
// other = resolvedTypes.getUnboundTypeParameter(other.getHandle());
if (other.getBoundTo() != null) {
throw new IllegalStateException();
} else {
if (other.getHandle().equals(getHandle())) {
throw new IllegalStateException("Cannot add recursive hint");
}
equallyBoundHandles.add(other.getHandle());
other.equallyBoundHandles.add(getHandle());
return;
>>>>>>> 791341109925ee7e498cd8bb7e0ef26febffddb2
}
}
} |
| Solution content |
|---|
if (boundTo != null) {
throw new IllegalStateException("Type parameter was already bound. No more hints may be accepted.");
}
if (boundArgument.getSource() == BoundTypeArgumentSource.EXPLICIT) {
boundTo = new MergedBoundTypeArgument(boundArgument.getTypeReference(), boundArgument.getActualVariance());
} else {
JvmTypeReference hint = boundArgument.getTypeReference();
if (hint instanceof XComputedTypeReference) {
IJvmTypeReferenceProvider typeProvider = ((XComputedTypeReference) hint).getTypeProvider();
if (typeProvider instanceof BaseUnboundTypeParameter) {
BaseUnboundTypeParameter other = (BaseUnboundTypeParameter) typeProvider;
if (other.getResolvedTypes() != getResolvedTypes()) {
throw new IllegalStateException("Other unbound parameter was not substituted properly");
}
if (other.getBoundTo() != null) {
throw new IllegalStateException("Other parameter was already bound");
} else {
if (other.getHandle().equals(getHandle())) {
throw new IllegalStateException("Cannot add recursive hint");
}
equallyBoundHandles.add(other.getHandle());
other.equallyBoundHandles.add(getHandle());
return;
}
}
} |
| File |
|---|
| BaseUnboundTypeParameter.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Attribute |
| Cast expression |
| Comment |
| If statement |
| Method invocation |
| Return statement |
| Throw statement |
| Variable |