Existe C # idiomático equivalente ao operador de vírgula do
Estou usando algumas coisas funcionais em c # e continuo preso ao fato de queList.Add
não retorna a lista atualizada.
Em geral, gostaria de chamar uma função em um objeto e retornar o objeto atualizad
or exemplo, seria ótimo se o C # tivesse um operador de vírgula:
((accum, data) => accum.Add(data), accum)
Eu poderia escrever meu próprio "operador de vírgula" assim:
static T comma(Action a, Func<T> result) {
a();
return result();
}
Parece que funcionaria, mas o site de chamadas seria feio. Meu primeiro exemplo seria algo como:
((accum, data) => comma(accum.Add(data), ()=>accum))
Exemplos suficientes! Qual é a maneira mais limpa de fazer isso sem que outro desenvolvedor apareça mais tarde e torça o nariz com o cheiro do código?