On Thursday, 14 January 2021 at 18:24:44 UTC, ddcovery wrote:
I know there is other threads about null safety and the "possible" ways to support this in D and so on.

This is only an open question to know what code patterns you usually use to solve this situation in D:

  if(person.father.father.name == "Peter") doSomething();
  if(person.father.age > 80 ) doSomething();

knowing that *person*, or its *father* property can be null

i.e.: the incremental null check solution

I just use this most simple one:

if(
  person !is null &&
  person.father !is null &&
  person.father.father !is null &&
  person.father.father.name == "Peter"
)
{
  doSomething();
}

Reason: easy to read and reason about, esp for non-authors of this piece of the code.

Reply via email to