Мысли по поводу оператора "is"
От: VladD2 Российская Империя www.nemerle.org
Дата: 01.07.14 19:47
Оценка: 1 (1) +1
Подумалось, что было бы здорово если бы оператор из можно было дополнять гуардом и as-ом как при паттерн-матчинге. Тогда можно было бы писать:
collection.All(x => x is SubruleInfo.TokenString as ts when ts.SomeTest())

В ts, при этом, помещается ссылка на x приведенная к типу SubruleInfo.TokenString, точно так же как это происходит в паттерн-матчинге.

А то в подобных случаях приходится создавать отдельные локальные функции, что громоздко и долго.

Как развитие этой идеи можно и частичное приведение операторов захачить. Тогда тот же пример можно было бы написать так:
collection.All(_ is SubruleInfo.TokenString as ts when ts.SomeTest())

Экономия, конечно, не велика. Но выглядит концептуальненько.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.