+\r
+ public enum Register\r
+ {\r
+ r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, rA, rB, rC, rD, rE, rF, Q;\r
+\r
+ public String toBitString()\r
+ {\r
+ if (this.ordinal() > 0xF)\r
+ throw new UnsupportedOperationException();\r
+ return TestUtil.to4bitBin(this.ordinal());\r
+ }\r
+\r
+ public static Stream<Register> stream()\r
+ {\r
+ return Arrays.stream(values());\r
+ }\r
+ }\r
+\r
+ public static class RegisterProvider implements ArgumentsProvider\r
+ {\r
+\r
+ @Override\r
+ public Stream<? extends Arguments> provideArguments(ExtensionContext context) throws Exception\r
+ {\r
+ return Register.stream().map(Arguments::of);\r
+ }\r
+\r
+ }\r