describeEnum function
Returns a short description of an enum value.
Strips off the enum class name from the enumEntry.toString()
.
{@tool snippet}
enum EthChain {
mainnet, ropsten, kovan, rinkeby, homestead
}
void validateDescribeEnum() {
assert(EthChain.ropsten.toString() == 'EthChain.ropsten');
assert(describeEnum(EthChain.ropsten) == 'ropsten');
}
{@end-tool}
Implementation
String describeEnum(Object enumEntry) {
final description = enumEntry.toString();
final indexOfDot = description.indexOf('.');
assert(
indexOfDot != -1 && indexOfDot < description.length - 1,
'The provided object "$enumEntry" is not an enum.',
);
return description.substring(indexOfDot + 1);
}