diff options
| author | Ben Culkin <scorpress@gmail.com> | 2022-07-11 17:54:24 -0400 |
|---|---|---|
| committer | Ben Culkin <scorpress@gmail.com> | 2022-07-11 17:54:24 -0400 |
| commit | 3466585b41432e20098bcabd9f4ab92de4e473d5 (patch) | |
| tree | 5d08a25fbd796103d90de594061f82f7cea56e5d | |
| parent | 82289d4aba4ccaaed99ecf46f4757f07b67baa45 (diff) | |
General improvements
| -rw-r--r-- | base/.settings/org.eclipse.jdt.core.prefs | 3 | ||||
| -rw-r--r-- | dice/src/main/java/bjc/dicelang/dicev2/DieMods.java | 48 |
2 files changed, 26 insertions, 25 deletions
diff --git a/base/.settings/org.eclipse.jdt.core.prefs b/base/.settings/org.eclipse.jdt.core.prefs index 714351a..2f5cc74 100644 --- a/base/.settings/org.eclipse.jdt.core.prefs +++ b/base/.settings/org.eclipse.jdt.core.prefs @@ -1,5 +1,8 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled org.eclipse.jdt.core.compiler.source=1.8 diff --git a/dice/src/main/java/bjc/dicelang/dicev2/DieMods.java b/dice/src/main/java/bjc/dicelang/dicev2/DieMods.java index 5e82097..0ef9c1b 100644 --- a/dice/src/main/java/bjc/dicelang/dicev2/DieMods.java +++ b/dice/src/main/java/bjc/dicelang/dicev2/DieMods.java @@ -35,7 +35,7 @@ public class DieMods { * The die pool. * @return A die that performs a reduction over the pool. */ - public Die reduce(LongBinaryOperator fold, long initial, Die... dice) { + public static Die reduce(LongBinaryOperator fold, long initial, Die... dice) { return new ReduceDieMod(fold, initial, dice); } @@ -46,7 +46,7 @@ public class DieMods { * The input die pool. * @return A die that concatenates the provided pool. */ - public Die concat(Die... dice) { + public static Die concat(Die... dice) { return new ConcatDieMod(dice); } @@ -59,7 +59,7 @@ public class DieMods { * The input die pool. * @return A die that counts the successes. */ - public Die counted(LongPredicate success, Die... dice) { + public static Die counted(LongPredicate success, Die... dice) { return new CountDieMod(success, dice); } @@ -74,7 +74,7 @@ public class DieMods { * The input die pool. * @return A die that counts the successes. */ - public Die counted(LongPredicate success, LongPredicate failure, Die... dice) { + public static Die counted(LongPredicate success, LongPredicate failure, Die... dice) { return new CountDieMod(success, failure, dice); } @@ -87,7 +87,7 @@ public class DieMods { * The input die pool. * @return An exploding variant of the die pool. */ - public Die explode(LongPredicate explode, Die... dice) { + public static Die explode(LongPredicate explode, Die... dice) { return new ExplodingDieMod(explode, dice); } @@ -102,7 +102,7 @@ public class DieMods { * The input die pool. * @return An exploding variant of the die pool. */ - public Die explode(LongPredicate explode, boolean penetrate, Die... dice) { + public static Die explode(LongPredicate explode, boolean penetrate, Die... dice) { return new ExplodingDieMod(explode, penetrate, dice); } @@ -115,7 +115,7 @@ public class DieMods { * The input die pool. * @return An compounding variant of the die pool. */ - public Die compound(LongPredicate compound, Die... dice) { + public static Die compound(LongPredicate compound, Die... dice) { return new CompoundDieMod(compound, dice); } @@ -130,7 +130,7 @@ public class DieMods { * The input die pool. * @return An compounding variant of the die pool. */ - public Die compound(LongPredicate compound, boolean penetrate, Die... dice) { + public static Die compound(LongPredicate compound, boolean penetrate, Die... dice) { return new CompoundDieMod(compound, penetrate, dice); } @@ -141,7 +141,7 @@ public class DieMods { * The die that will form the pool. * @return A pooled variant of the dice. */ - public Die pool(Die... dice) { + public static Die pool(Die... dice) { return new PoolDiceMod(dice); } @@ -154,7 +154,7 @@ public class DieMods { * The input die pool. * @return The die pool with certain dice filtered out. */ - public Die filter(LongPredicate filter, Die... dice) { + public static Die filter(LongPredicate filter, Die... dice) { return new FilterDieMod(filter, dice); } @@ -167,7 +167,7 @@ public class DieMods { * The input die pool. * @return A sorted die pool. */ - public Die sort(Comparator<Long> sorter, Die die) { + public static Die sort(Comparator<Long> sorter, Die die) { return new SortDieMod(sorter, die); } @@ -180,7 +180,7 @@ public class DieMods { * The input die pool. * @return The die pool with the transform applied. */ - public Die map(LongUnaryOperator map, Die die) { + public static Die map(LongUnaryOperator map, Die die) { return new MapDieMod(map, die); } @@ -192,7 +192,7 @@ public class DieMods { * The input die pool. * @return A die that sums the input dice. */ - public Die sum(Die... dice) { + public static Die sum(Die... dice) { return reduce((l, r) -> l + r, 0, dice); } @@ -204,7 +204,7 @@ public class DieMods { * The input die pool. * @return A die that subtracts the input dice. */ - public Die subtract(Die... dice) { + public static Die subtract(Die... dice) { return reduce((l, r) -> l - r, 0, dice); } @@ -216,7 +216,7 @@ public class DieMods { * The input die pool. * @return A die that multiplies the input dice. */ - public Die multiply(Die... dice) { + public static Die multiply(Die... dice) { return reduce((l, r) -> l * r, 1, dice); } @@ -228,7 +228,7 @@ public class DieMods { * The input die pool. * @return A die that divides the input dice. */ - public Die divide(Die... dice) { + public static Die divide(Die... dice) { return reduce((l, r) -> l / r, 1, dice); } @@ -238,7 +238,7 @@ public class DieMods { * @param die The input die pool. * @return A die pool that sorts in ascending order. */ - public Die ascending(Die die) { + public static Die ascending(Die die) { return new SortDieMod(Comparator.naturalOrder(), die); } @@ -248,10 +248,8 @@ public class DieMods { * @param die The input die pool. * @return A die pool that sorts in descending order. */ - public Die descending(Die die) { - return new SortDieMod((v1, v2) -> { - return Long.compare(v1, v2); - }, die); + public static Die descending(Die die) { + return new SortDieMod(Long::compare, die); } /* :SyntheticMod */ @@ -261,7 +259,7 @@ public class DieMods { * @param die The input die pool. * @return The die pool that takes the first n dice. */ - public Die take(int num, Die die) { + public static Die take(int num, Die die) { GeneratingIterator<Integer> itr = new GeneratingIterator<>(num, (val) -> { return val - 1; }, (val) -> val == 0); @@ -283,7 +281,7 @@ public class DieMods { * @param die The input die pool. * @return The die pool that drops the first n dice. */ - public Die drop(int num, Die die) { + public static Die drop(int num, Die die) { GeneratingIterator<Integer> itr = new GeneratingIterator<>(num, (val) -> { return val - 1; }, (val) -> val == 0); @@ -305,7 +303,7 @@ public class DieMods { * @param die The input die pool. * @return A die pool that rerolls certain dice once. */ - public Die rerollOnce(LongPredicate reroll, Die die) { + public static Die rerollOnce(LongPredicate reroll, Die die) { return map((val) -> { if (reroll.test(val)) return die.rollSingle(); @@ -321,7 +319,7 @@ public class DieMods { * @param die The input die pool. * @return A die pool that rerolls certain dice. */ - public Die reroll(LongPredicate reroll, Die die) { + public static Die reroll(LongPredicate reroll, Die die) { return map((val) -> { long nVal = val; |
