akkurate icon indicating copy to clipboard operation
akkurate copied to clipboard

Provide some conditional helpers

Open nesk opened this issue 2 years ago • 0 comments

We could provide some conditional helpers :

  • ifNotNull
  • ifInstanceOf

Instead of:

if (prop.unwrap() != null) prop { // this: Validatable<SomeClass?>
    constrain { it?.someBool == true }
}

we could write:

prop.ifNotNull { // this: Validatable<SomeClass>
    constrain { it.someBool }
}

We avoid calling unwrap, the receiver is automatically defined, and it's no longer nullable.

Some helpers unrelated to type casting could be useful too:

  • ifNotEmpty (CharSequence and iterables)
  • ifNotBlank
  • ifNotNullOrEmpty
  • ifNotNullOrBlank

nesk avatar Oct 30 '23 12:10 nesk