Compare commits

...

3 Commits

Author SHA1 Message Date
58e20bb513 Fixed Enums 2026-05-11 00:10:44 +02:00
502f22cea3 Removed java 25 support. Gradlew isn't supporting this yet. 2026-05-10 22:11:18 +02:00
90e3b7110a Updated Actions 2026-05-10 22:09:21 +02:00
5 changed files with 34 additions and 21 deletions

View File

@ -11,20 +11,20 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
jdk: [8, 11, 17, 20, 21, 25] jdk: [8, 11, 17, 20, 21]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v6
- name: Set up JDK ${{ matrix.jdk }} - name: Set up JDK ${{ matrix.jdk }}
uses: actions/setup-java@v3 uses: actions/setup-java@v5
with: with:
distribution: 'temurin' distribution: 'temurin'
java-version: ${{ matrix.jdk }} java-version: ${{ matrix.jdk }}
- name: Validate Gradle wrapper - name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1 uses: gradle/actions/wrapper-validation@v6
- name: Make gradlew executable - name: Make gradlew executable
run: chmod +x ./gradlew run: chmod +x ./gradlew

View File

@ -9,12 +9,12 @@ jobs:
name: Unit Tests name: Unit Tests
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v6
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Set up JDK 11 - name: Set up JDK 11
uses: actions/setup-java@v3 uses: actions/setup-java@v5
with: with:
distribution: temurin distribution: temurin
java-version: 11 java-version: 11
@ -54,7 +54,7 @@ jobs:
esac esac
- name: Create Test Badge - name: Create Test Badge
uses: emibcn/badge-action@v1.2.4 uses: emibcn/badge-action@v2
with: with:
label: Tests label: Tests
status: '${{ fromJSON( steps.test-results.outputs.json ).conclusion }}, Passed: ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_succ }}, Skipped: ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_skip }}, Failed: ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_fail }}' status: '${{ fromJSON( steps.test-results.outputs.json ).conclusion }}, Passed: ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_succ }}, Skipped: ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_skip }}, Failed: ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_fail }}'

View File

@ -8,11 +8,11 @@ jobs:
name: Code Quality Check name: Code Quality Check
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v6
with: with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Set up JDK 11 - name: Set up JDK 11
uses: actions/setup-java@v3 uses: actions/setup-java@v5
with: with:
distribution: 'temurin' distribution: 'temurin'
java-version: 11 java-version: 11

View File

@ -9,12 +9,12 @@ jobs:
name: Unit Tests name: Unit Tests
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v6
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Set up JDK 11 - name: Set up JDK 11
uses: actions/setup-java@v3 uses: actions/setup-java@v5
with: with:
distribution: temurin distribution: temurin
java-version: 11 java-version: 11

View File

@ -519,7 +519,7 @@ public class LINKED_ENUM_MAP KEY_ENUM_VALUE_GENERIC_TYPE extends ENUM_MAP KEY_VA
@Override @Override
public ObjectBidirectionalIterator<MAP.Entry KEY_VALUE_GENERIC_TYPE> reverseIterator() { public ObjectBidirectionalIterator<MAP.Entry KEY_VALUE_GENERIC_TYPE> reverseIterator() {
return new ReverseBiIterator<>(new EntryIterator(false)); return new EntryIterator(false);
} }
@Override @Override
@ -661,7 +661,7 @@ public class LINKED_ENUM_MAP KEY_ENUM_VALUE_GENERIC_TYPE extends ENUM_MAP KEY_VA
@Override @Override
public LIST_ITERATOR KEY_GENERIC_TYPE reverseIterator() { public LIST_ITERATOR KEY_GENERIC_TYPE reverseIterator() {
return new ReverseBiIteratorBRACES(new KeyIterator(false)); return new KeyIterator(false);
} }
@Override @Override
@ -746,7 +746,7 @@ public class LINKED_ENUM_MAP KEY_ENUM_VALUE_GENERIC_TYPE extends ENUM_MAP KEY_VA
@Override @Override
public VALUE_ORDERED_COLLECTION VALUE_GENERIC_TYPE reversed() { return new VALUE_ABSTRACT_COLLECTION.VALUE_REVERSED_ORDERED_COLLECTIONVALUE_BRACES(this, this::reverseIterator); } public VALUE_ORDERED_COLLECTION VALUE_GENERIC_TYPE reversed() { return new VALUE_ABSTRACT_COLLECTION.VALUE_REVERSED_ORDERED_COLLECTIONVALUE_BRACES(this, this::reverseIterator); }
private VALUE_ITERATOR VALUE_GENERIC_TYPE reverseIterator() { private VALUE_ITERATOR VALUE_GENERIC_TYPE reverseIterator() {
return new VALUE_ABSTRACT_COLLECTION.ReverseBiIteratorVALUE_BRACES(new ValueIterator(false)); return new ValueIterator(false);
} }
@Override @Override
public void addFirst(VALUE_TYPE e) { throw new UnsupportedOperationException(); } public void addFirst(VALUE_TYPE e) { throw new UnsupportedOperationException(); }
@ -892,17 +892,20 @@ public class LINKED_ENUM_MAP KEY_ENUM_VALUE_GENERIC_TYPE extends ENUM_MAP KEY_VA
} }
private class MapIterator { private class MapIterator {
boolean forward;
int previous = -1; int previous = -1;
int next = -1; int next = -1;
int current = -1; int current = -1;
int index = 0; int index = 0;
MapIterator(boolean start) { MapIterator(boolean start) {
this.forward = start;
if(start) next = firstIndex; if(start) next = firstIndex;
else previous = lastIndex; else previous = lastIndex;
} }
MapIterator(T from) { MapIterator(T from) {
this.forward = true;
previous = from.ordinal() - 1; previous = from.ordinal() - 1;
index = from.ordinal(); index = from.ordinal();
next = from.ordinal(); next = from.ordinal();
@ -910,11 +913,11 @@ public class LINKED_ENUM_MAP KEY_ENUM_VALUE_GENERIC_TYPE extends ENUM_MAP KEY_VA
} }
public boolean hasNext() { public boolean hasNext() {
return next != -1; return (forward ? next : previous) != -1;
} }
public boolean hasPrevious() { public boolean hasPrevious() {
return previous != -1; return (forward ? previous : next) != -1;
} }
public int nextIndex() { public int nextIndex() {
@ -949,20 +952,30 @@ public class LINKED_ENUM_MAP KEY_ENUM_VALUE_GENERIC_TYPE extends ENUM_MAP KEY_VA
public int previousEntry() { public int previousEntry() {
if(!hasPrevious()) throw new NoSuchElementException(); if(!hasPrevious()) throw new NoSuchElementException();
current = previous; if(forward) moveBackwards();
previous = (int)(links[current] >> 32); else moveForwards();
next = current;
if(index >= 0) index--; if(index >= 0) index--;
return current; return current;
} }
public int nextEntry() { public int nextEntry() {
if(!hasNext()) throw new NoSuchElementException(); if(!hasNext()) throw new NoSuchElementException();
if(forward) moveForwards();
else moveBackwards();
if(index >= 0) index++;
return current;
}
private void moveBackwards() {
current = previous;
previous = (int)(links[current] >> 32);
next = current;
}
private void moveForwards() {
current = next; current = next;
next = (int)(links[current]); next = (int)(links[current]);
previous = current; previous = current;
if(index >= 0) index++;
return current;
} }
private void ensureIndexKnown() { private void ensureIndexKnown() {