Използвам клас за откриване на имейл адреси, който използва статични крайни булеви стойности за конфигуриране на поведението на съвпадение. Тъй като надстроих до Eclipse 3.5, получавам предупреждения за мъртъв код, тъй като Eclipse забелязва, че един клон в това не може да бъде достигнат:
private static final boolean ALLOW_DOMAIN_LITERALS = false;
private static final String domain = ALLOW_DOMAIN_LITERALS ? rfc2822Domain : rfc1035DomainName;
Колкото и да е странно, той е доволен от това:
private static final String domain;
static {
if(ALLOW_DOMAIN_LITERALS) {
domain = rfc2822Domain;
} else {
domain= rfc1035DomainName;
}
}
тъй като изглежда, че разпознава общия модел if(DEBUG)
, но троичният оператор изглежда не се брои.
Тъй като предпочитам да не разклонявам класа твърде много, само за да поддържам Eclipse щастлив, бих предпочел да сложа @SuppressWarnings
в горната част, вместо да променям кода. За съжаление не мога да намеря подходящ освен brute-force "all"
. Има ли стойност само за откриване на мъртъв код?