summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/everge/IntHolder.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/bjc/everge/IntHolder.java')
-rw-r--r--src/main/java/bjc/everge/IntHolder.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/main/java/bjc/everge/IntHolder.java b/src/main/java/bjc/everge/IntHolder.java
new file mode 100644
index 0000000..e137d61
--- /dev/null
+++ b/src/main/java/bjc/everge/IntHolder.java
@@ -0,0 +1,66 @@
+package bjc.everge;
+
+/**
+ * Utility class for ints by ref.
+ *
+ * @author Ben Culkin
+ */
+public class IntHolder {
+ /**
+ * The int value.
+ */
+ public int val;
+
+ /**
+ * Create a new int-holder set to 0.
+ */
+ public IntHolder() {
+ val = 0;
+ }
+
+ /**
+ * Create a new int-holder set to a value.
+ *
+ * @param i
+ * The value to set the int to.
+ */
+ public IntHolder(int i) {
+ val = i;
+ }
+
+ /**
+ * Increment the value by one, and return it.
+ *
+ * @return The value of the holder.
+ */
+ public int incr() {
+ return incr(1);
+ }
+
+ /**
+ * Increment the value by an amount and return it.
+ *
+ * @param i
+ * The amount to increment by.
+ *
+ * @return The value of the holder.
+ */
+ public int incr(int i) {
+ val += 1;
+
+ return val;
+ }
+
+ /**
+ * Get the value.
+ *
+ * @return The value.
+ */
+ public int get() {
+ return val;
+ }
+
+ public void set(int i) {
+ val = i;
+ }
+}