On Thursday, 2 May 2024 at 17:42:28 UTC, monkyyy wrote: > `foo?=bar:baz` is rewritten as `foo.opOpAssign!("?:")(bar,baz)` > > `foo[i]?=bar:baz` opIndexOpAssign > > for basic types it acts as `foo=(bool)bar?foo:(typeof(foo))baz` Isn’t this just `if (!bar) foo = baz;`? Where would the user-defined operator be useful?