summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser/Rule.java
diff options
context:
space:
mode:
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/Rule.java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/Rule.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/Rule.java b/RGens/src/main/java/bjc/rgens/newparser/Rule.java
index a65f1ce..eca856f 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/Rule.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/Rule.java
@@ -3,6 +3,8 @@ package bjc.rgens.newparser;
import bjc.utils.funcdata.FunctionalList;
import bjc.utils.funcdata.IList;
+import java.util.Random;
+
/**
* A rule in a randomized grammar.
*
@@ -62,6 +64,18 @@ public class Rule {
}
/**
+ * Get a random case from this rule.
+ *
+ * @param rnd
+ * The random number generator to use.
+ *
+ * @return A random case from this rule.
+ */
+ public RuleCase getCase(Random rnd) {
+ return ruleCases.randItem(rnd::nextInt);
+ }
+
+ /**
* Get all the cases of this rule.
*
* @return All the cases in this rule.