MCPcopy Index your code
hub / github.com/processing/processing / sortImpl

Method sortImpl

core/src/processing/data/IntDict.java:697–731  ·  view source on GitHub ↗
(final boolean useKeys, final boolean reverse,
                          final boolean stable)

Source from the content-addressed store, hash-verified

695
696
697 protected void sortImpl(final boolean useKeys, final boolean reverse,
698 final boolean stable) {
699 Sort s = new Sort() {
700 @Override
701 public int size() {
702 return count;
703 }
704
705 @Override
706 public int compare(int a, int b) {
707 int diff = 0;
708 if (useKeys) {
709 diff = keys[a].compareToIgnoreCase(keys[b]);
710 if (diff == 0) {
711 diff = values[a] - values[b];
712 }
713 } else { // sort values
714 diff = values[a] - values[b];
715 if (diff == 0 && stable) {
716 diff = keys[a].compareToIgnoreCase(keys[b]);
717 }
718 }
719 return reverse ? -diff : diff;
720 }
721
722 @Override
723 public void swap(int a, int b) {
724 IntDict.this.swap(a, b);
725 }
726 };
727 s.run();
728
729 // Set the indices after sort/swaps (performance fix 160411)
730 resetIndices();
731 }
732
733
734 /**

Callers 4

sortKeysMethod · 0.95
sortKeysReverseMethod · 0.95
sortValuesMethod · 0.95
sortValuesReverseMethod · 0.95

Calls 2

runMethod · 0.95
resetIndicesMethod · 0.95

Tested by

no test coverage detected