Effective message: the explicit one if supplied, otherwise the canonical message attached to code.
String get message => _message ?? code.message;