Здравствуйте, _Claus_, Вы писали:
_C_>собственно интуитивно ожидается, что должен работать и возвращать Value, однако же нет. _C_>недоработка или что-то другое?
?. защищает доступ к членам. Откровенно говоря я не предполагал, что кто-то будет использовать его с option[T] для обхода None.
С другой стороны ?? родственный оператор и он работает с option[T]. Так что даже не знаю.
К тому же option[T] — это сам по себе ссылочный тип и члены возвращающие этот тип могут содержать null. Так что если изменить его поведение, то могут быть проблемы в других местах.
В общем, хотелось бы услышать другие мнения. Нужно ли прикручивать поддержку option[T] к "?.", и что при этом делать с проверкой на null самого члена типа option[T]?
ЗЫ
Чем больше думаю над option[T], тем больше понимаю, что надо было его структурой делать.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.