See also
The idea would be to support a version of the ?: operator that yields an lvalue. The current proposal is to do so using ref after the : and ?, for example
(array1 != null ? ref array1[index] : ref dummy) = value;
ref Node next = ref (node != null) ? ref node.Next : ref head;
(https://github.com/dotnet/csharplang/blob/master/proposals/csharp-7.2/conditional-ref.md)
See also
https://github.com/dotnet/csharplang/blob/master/proposals/csharp-7.2/readonly-ref.md
The idea would be to support a version of the
?:operator that yields an lvalue. The current proposal is to do so usingrefafter the:and?, for example