Annotation Type MayOptionallyUse
Indicates that a parameter to a placeholder method is not required to be used in the
placeholder's implementation. For example, the pattern
abstract class Utf8Bytes {
@Placeholder abstract void handleException(
@MayOptionallyUse UnsupportedEncodingException e);
@Placeholder abstract void useString(String str);
@BeforeTemplate void before(byte[] array) {
try {
useString(new String(array, "UTF_8"));
} catch (UnsupportedEncodingException e) {
handleException(e);
}
}
@AfterTemplate void after(byte[] array) {
useString(new String(array, StandardCharsets.UTF_8));
}
}
would match even if the catch statement were empty, or didn't refer to e.