summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser/CaseElement.java
diff options
context:
space:
mode:
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/CaseElement.java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/CaseElement.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/CaseElement.java b/RGens/src/main/java/bjc/rgens/newparser/CaseElement.java
index fe088b8..a15cb9b 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/CaseElement.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/CaseElement.java
@@ -92,11 +92,35 @@ public class CaseElement {
}
/**
+
+ /**
* Get the literal string value for this element.
*
* @return The literal string value for this element.
+ *
+ * @throws IllegalStateException
+ * If this type doesn't have a literal string value.
*/
public String getLiteral() {
+ switch(type) {
+ case LITERAL:
+ case RULEREF:
+ break;
+ default:
+ throw new IllegalStateException(String.format("Type '%s' doesn't have a literal string value"));
+ }
+
return literalVal;
}
+
+ @Override
+ public String toString() {
+ switch(type) {
+ case LITERAL:
+ case RULEREF:
+ return literalVal;
+ default:
+ return String.format("Unknown type '%s'", type);
+ }
+ }
} \ No newline at end of file