Skip to content

Commit 7fc2f42

Browse files
committed
Simplify Wave string alias set.
1 parent 917e1ec commit 7fc2f42

File tree

1 file changed

+10
-19
lines changed

1 file changed

+10
-19
lines changed

app/src/main/java/sogott/tones/Wave.java

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
import static java.util.Arrays.asList;
1010
import static java.util.Collections.unmodifiableList;
11-
import static java.util.Collections.unmodifiableSet;
1211
import static java.util.Comparator.comparingInt;
1312

1413
/**
@@ -38,49 +37,41 @@ enum Wave {
3837
/**
3938
* A <i>SINE</i> wave.
4039
*/
41-
SINE(GenerateWaveByteBuffer::sine, "SIN"),
40+
SINE(GenerateWaveByteBuffer::sine, "SIN", Set.of("SINE","SIN")),
4241

4342
/**
4443
* A <i>SQUARE</i> wave.
4544
*/
46-
SQUARE(GenerateWaveByteBuffer::square, "SQR"),
45+
SQUARE(GenerateWaveByteBuffer::square, "SQR", Set.of("SQUARE", "SQR")),
4746

4847
/**
4948
* A <i>TRIANGLE</i> wave.
5049
*/
51-
TRIANGLE(GenerateWaveByteBuffer::triangle, "TRI"),
50+
TRIANGLE(GenerateWaveByteBuffer::triangle, "TRI", Set.of("TRIANGLE", "TRI")),
5251

5352
/**
5453
* A <i>SAW UP</i> wave.
5554
*/
56-
SAW_UP(GenerateWaveByteBuffer::sawUp, "SUP", Set.of("SAWUP")),
55+
SAW_UP(GenerateWaveByteBuffer::sawUp, "SUP", Set.of("SAW_UP", "SAWUP", "SUP")),
5756

5857
/**
5958
* A <i>SAW DOWN</i> wave.
6059
*/
61-
SAW_DOWN(GenerateWaveByteBuffer::sawDown, "SDN", Set.of("SAWDOWN"));
60+
SAW_DOWN(GenerateWaveByteBuffer::sawDown, "SDN", Set.of("SAW_DOWN", "SAWDOWN", "SDN"));
6261

63-
private final static List<Wave> _waves = unmodifiableList(asList(Wave.values()));
62+
private final static List<Wave> WAVES = unmodifiableList(asList(Wave.values()));
6463

6564
private final BiFunction<Double, Integer, byte[]> _generatorFunc;
6665

6766
private final String _stringValue;
6867

6968
private final Set<String> _stringValueAliases;
7069

71-
private Wave(BiFunction<Double, Integer, byte[]> generatorFunc, String stringValue) {
72-
this._generatorFunc = generatorFunc;
73-
this._stringValue = stringValue;
74-
this._stringValueAliases = Set.of(this._stringValue, this.name());
75-
}
76-
7770
private Wave(BiFunction<Double, Integer, byte[]> generatorFunc, String stringValue,
7871
Set<String> stringValueAliases) {
7972
this._generatorFunc = generatorFunc;
8073
this._stringValue = stringValue;
81-
final Set<String> stringSet = new HashSet<String>(asList(this._stringValue, this.name()));
82-
stringSet.addAll(stringValueAliases);
83-
this._stringValueAliases = unmodifiableSet(stringSet);
74+
this._stringValueAliases = stringValueAliases;
8475
}
8576

8677
/**
@@ -167,7 +158,7 @@ boolean prefixes(String aString) {
167158
* present or an empty optional if not.
168159
*/
169160
static Optional<String> extractPrefix(String aString, boolean ignoreCase) {
170-
return _waves.stream()
161+
return WAVES.stream()
171162
.flatMap(wave -> wave.stringValueAliases().stream())
172163
.filter(waveStringAlias -> aString.length() >= waveStringAlias.length()
173164
&& aString.regionMatches(ignoreCase, 0, waveStringAlias, 0, waveStringAlias.length()))
@@ -217,11 +208,11 @@ static Optional<Wave> parse(String aString, boolean ignoreCase) {
217208
}
218209

219210
if (ignoreCase) {
220-
return _waves.stream().filter(wave -> wave._stringValueAliases.stream()
211+
return WAVES.stream().filter(wave -> wave._stringValueAliases.stream()
221212
.anyMatch(waveStringValue -> aString.equalsIgnoreCase(waveStringValue))).findFirst();
222213
}
223214

224-
return _waves.stream().filter(wave -> wave._stringValueAliases.stream()
215+
return WAVES.stream().filter(wave -> wave._stringValueAliases.stream()
225216
.anyMatch(waveStringValue -> aString.equals(waveStringValue))).findFirst();
226217
}
227218

0 commit comments

Comments
 (0)