Trouvez-vous le code C # suivant lisible?
private bool CanExecuteAdd(string parameter) {
return
this.Script == null ? false
: parameter == "Step" ? true
: parameter == "Element" ? this.ElementSelectedInLibrary != null && this.SelectedStep != null
: parameter == "Choice" ? this.SelectedElement != null
: parameter == "Jump" ? this.SelectedStep != null
: parameter == "Conditional jump" ? false
: false.Throw("Unknown Add parameter {0} in XAML.".F(parameter));
}
où Throw est défini comme:
public static T Throw<T>(this T ignored, string message) {
throw new Exception(message);
}
Je sais que ce n'est pas idiomatique C #. Cependant, seriez-vous capable de le comprendre au premier ou au deuxième coup d'œil? Ou suis-je allé trop loin?