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
Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
May 02 ternary op assign | ||||
---|---|---|---|---|
| ||||
for basic types it acts as |
May 02 Re: ternary op assign | ||||
---|---|---|---|---|
| ||||
Posted in reply to monkyyy | On Thursday, 2 May 2024 at 17:42:28 UTC, monkyyy wrote: >
for basic types it acts as I find this syntax confusing, I would interpret that as:
|
May 02 Re: ternary op assign | ||||
---|---|---|---|---|
| ||||
Posted in reply to Stefan Koch | On Thursday, 2 May 2024 at 18:17:12 UTC, Stefan Koch wrote: >On Thursday, 2 May 2024 at 17:42:28 UTC, monkyyy wrote: >
for basic types it acts as I find this syntax confusing, I would interpret that as:
often the statement you want to write is a=condition?b:a which repeats a, the way to simplify (and prevent int promtion issues) is with the += family of statements; but there isnt a clear one for if(cond)a=b Simd(/waterfalled code) has to do bit mask tricks, and I think you could wrap that up in a data structure with the opslice as recursive templates for opindex logic
|
May 16 Re: ternary op assign | ||||
---|---|---|---|---|
| ||||
Posted in reply to monkyyy | On Thursday, 2 May 2024 at 17:42:28 UTC, monkyyy wrote: >
for basic types it acts as Isn’t this just Where would the user-defined operator be useful? |
May 16 Re: ternary op assign | ||||
---|---|---|---|---|
| ||||
Posted in reply to Quirin Schroll | On Thursday, 16 May 2024 at 16:57:17 UTC, Quirin Schroll wrote: >On Thursday, 2 May 2024 at 17:42:28 UTC, monkyyy wrote: >
for basic types it acts as Isn’t this just Where would the user-defined operator be useful? when bar depends on foo; such as a user defined cond, lets saya database query that takes in lamdas
and when its "multiable data single instruction", simd or parrellizism, ranges etc. and theres something in that index |