objectbox/objectbox-java

Additional Kotlin extensions

Open

#446 opened on May 14, 2018

View on GitHub
 (9 comments) (0 reactions) (1 assignee)Java (348 forks)batch import
help wanted

Repository metrics

Stars
 (4,275 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

ObjectBox already provides some minimal Kotlin extensions:

// Regular
val box: Box<DataClassEntity> = store.boxFor(DataClassEntity::class.java)

// With extension
val box: Box<DataClassEntity> = store.boxFor()
// Regular
val query = box.query().`in`(property, array).build()

// With extension
val query = box.query().inValues(property, array).build()

This issue is to track what other Kotlin extensions may be added.

Some ground rules:

  • should leverage features unique to Kotlin
  • should not just be a shorter version of an existing method
  • should not optimize fur just a single use case

Things to look out for:

  • default args for methods
  • builder pattern
  • making util methods discoverable from the type they operate on
  • destructuring

-ut

Contributor guide