Search code examples
javaintellij-ideaeclipse-collections

IntelliJ Java Type Renderers for Eclipse Collections with primitives


I have found Eclipse Collections very useful. Especially collections for primitive types (for example: IntObjectHashMap). Unfortunately there is a problem with rendering these collections in IntelliJ IDEA debugger.

Let's have a sample code:

import org.eclipse.collections.impl.map.mutable.primitive.IntObjectHashMap;
import java.util.HashMap;

public class Test {
    public static void main(String[] args) {
        IntObjectHashMap<String> eclipseMap = new IntObjectHashMap<>(4);
        eclipseMap.put(1, "one");
        eclipseMap.put(2, "two");

        HashMap<Integer, String> hashMap = new HashMap<>(4);
        hashMap.put(1, "one");
        hashMap.put(2, "two");

        System.out.println("" + eclipseMap);
        System.out.println("" + hashMap);
    }
}

Here we have a debugger variables view:

enter image description here

As we can see JDK HashMap is rendered perfectly, but IntObjectHashMap Eclipse Collection is not.

The situation is even worse when I drop down values for Eclipse Collection:

enter image description here

As we can see - there is no one element on the values list.

You can say: OK, as a workaround, you can use standard toString renderer available in IntelliJ:

enter image description here

Unfortunately in my case it is not the case since my collections have tens of millions of elements.

So my question is:

Anybody know a place / a project where I can find IntelliJ Java type renderers for Eclipse Collections for primitive types?


Solution

  • you can create a type renderer, for example like this: enter image description here