88import org .jspecify .annotations .NullMarked ;
99
1010/**
11- * <p>
1211 * Represents a simple arithmetic operation between two integers.
1312 * An {@link Operation} backs an operator.
1413 * Most arithmetic operators (like {@code +=, -=, /=, etc.}) are
1514 * supported, alongside certain conditional operators ({@code >=, <=, ==, etc.}).
16- * </p>
1715 * <p>
1816 * Note that conditional operators, instead of yielding a boolean value, return the value
1917 * that matches the operation.
2018 * For example, the {@code <=} operator always returns the <strong>smaller</strong> value
2119 * of two given values.
22- * </p>
2320 */
2421@ ApiStatus .Experimental
2522@ NullMarked
2623public interface Operation {
2724
2825 /**
29- * <p>
3026 * Applies this operation to a pair of integers.
31- * </p>
3227 * <p>
3328 * Arithmetic between two integers always follows this pattern:
3429 * <pre>
3530 * return left <operator> right
3631 * </pre>
3732 * On certain operators, such as division, the order matters.
3833 * {@code 20 %= 10} yields a different result than{@code 10 %= 20}.
39- * </p>
4034 *
4135 * @param left left side of the expression
4236 * @param right right side of the expression
@@ -45,16 +39,13 @@ public interface Operation {
4539 int apply (int left , int right ) throws CommandSyntaxException ;
4640
4741 /**
48- * <p>
4942 * Applies this operation to a pair of {@link ScoreHolder}s, retrieving their
5043 * values from a {@link Scoreboard} and their respective {@link Objective}s.
51- * </p>
5244 * <p>
5345 * Arithmetic between two integers always follows this pattern:
5446 * <pre>return left <operator> right;</pre>
5547 * On certain operators, such as division, the order matters.
5648 * {@code 20 %= 10} yields a different result than{@code 10 %= 20}.
57- * </p>
5849 *
5950 * @param scoreboard scoreboard to edit the score of
6051 * @param sourceObjective objective to retrieve the score from
0 commit comments