package org.erlide.engine.services.codeassist; import java.util.Comparator; public class CompletionNameComparer implements Comparator<CompletionData> { private final String prefix; public CompletionNameComparer(final String prefix) { this.prefix = prefix; } @Override public int compare(final CompletionData o1, final CompletionData o2) { final String s1 = o1.getDisplayString(); final String s2 = o2.getDisplayString(); // exact prefix matches get higher priority if (s1.startsWith(prefix) && s2.startsWith(prefix)) { return s1.compareTo(s2); } if (s1.startsWith(prefix)) { return -1; } if (s2.startsWith(prefix)) { return 1; } return s1.compareTo(s2); } }