ConstraintPosition class improved
This commit is contained in:
+14
-15
@@ -23,30 +23,29 @@ import java.util.Map;
|
|||||||
/**
|
/**
|
||||||
* @author svtk
|
* @author svtk
|
||||||
*/
|
*/
|
||||||
public abstract class ConstraintPosition {
|
public class ConstraintPosition {
|
||||||
public static final ConstraintPosition RECEIVER_POSITION = new ConstraintPosition() {};
|
public static final ConstraintPosition RECEIVER_POSITION = new ConstraintPosition("RECEIVER_POSITION");
|
||||||
public static final ConstraintPosition EXPECTED_TYPE_POSITION = new ConstraintPosition() {};
|
public static final ConstraintPosition EXPECTED_TYPE_POSITION = new ConstraintPosition("EXPECTED_TYPE_POSITION");
|
||||||
|
|
||||||
private static final Map<Integer, ValueParameterPosition> valueParameterPositions = Maps.newHashMap();
|
private static final Map<Integer, ConstraintPosition> valueParameterPositions = Maps.newHashMap();
|
||||||
|
|
||||||
public static ConstraintPosition valueParameterPosition(int index) {
|
public static ConstraintPosition getValueParameterPosition(int index) {
|
||||||
ValueParameterPosition position = valueParameterPositions.get(index);
|
ConstraintPosition position = valueParameterPositions.get(index);
|
||||||
if (position == null) {
|
if (position == null) {
|
||||||
position = new ValueParameterPosition(index);
|
position = new ConstraintPosition("VALUE_PARAMETER_POSITION(" + index + ")");
|
||||||
valueParameterPositions.put(index, position);
|
valueParameterPositions.put(index, position);
|
||||||
}
|
}
|
||||||
return position;
|
return position;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class ValueParameterPosition extends ConstraintPosition {
|
private final String debugName;
|
||||||
private final int index;
|
|
||||||
|
|
||||||
private ValueParameterPosition(int index) {
|
private ConstraintPosition(String name) {
|
||||||
this.index = index;
|
debugName = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getIndex() {
|
@Override
|
||||||
return index;
|
public String toString() {
|
||||||
}
|
return debugName;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ public class HtmlTabledDescriptorRenderer extends TabledDescriptorRenderer {
|
|||||||
for (Iterator<JetType> iterator = argumentTypes.iterator(); iterator.hasNext(); ) {
|
for (Iterator<JetType> iterator = argumentTypes.iterator(); iterator.hasNext(); ) {
|
||||||
JetType argumentType = iterator.next();
|
JetType argumentType = iterator.next();
|
||||||
boolean error = false;
|
boolean error = false;
|
||||||
if (errorPositions.contains(ConstraintPosition.valueParameterPosition(i))) {
|
if (errorPositions.contains(ConstraintPosition.getValueParameterPosition(i))) {
|
||||||
error = true;
|
error = true;
|
||||||
}
|
}
|
||||||
String renderedArgument = IdeRenderers.HTML_RENDER_TYPE.render(argumentType);
|
String renderedArgument = IdeRenderers.HTML_RENDER_TYPE.render(argumentType);
|
||||||
|
|||||||
Reference in New Issue
Block a user