+ return stringValues.clone();
+ }
+
+ @Override
+ public int hashCode()
+ {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + Arrays.hashCode(values);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj)
+ {
+ return this == obj;
+ }
+
+ @Override
+ public Mnemonic parse(String toParse)
+ {
+ Mnemonic parsed = get(toParse);
+ if(parsed == null)
+ throw new UnknownMnemonicException(toParse);
+ return parsed;
+ }
+
+ public static class MnemonicPair
+ {
+ public final String name;
+ public final BitVector value;
+
+ public MnemonicPair(String name, BitVector value)
+ {
+ this.name = name;
+ this.value = value;
+ }