diff options
| author | Simon Ogorodnik <Simon.Ogorodnik@jetbrains.com> | 2017-12-11 16:01:51 +0300 |
|---|---|---|
| committer | Simon Ogorodnik <Simon.Ogorodnik@jetbrains.com> | 2017-12-11 16:01:51 +0300 |
| commit | 6ef35accd16533c84be5d0164739b146cfb55b73 (patch) | |
| tree | 08564235782d2cebd0203da0ab82e860c2111b05 /core/src/main/kotlin/Utilities | |
| parent | 214e16e07d93b3565c433ed67b78796e80f43ec5 (diff) | |
| download | dokka-6ef35accd16533c84be5d0164739b146cfb55b73.tar.gz dokka-6ef35accd16533c84be5d0164739b146cfb55b73.tar.bz2 dokka-6ef35accd16533c84be5d0164739b146cfb55b73.zip | |
Fix optional binding
Diffstat (limited to 'core/src/main/kotlin/Utilities')
| -rw-r--r-- | core/src/main/kotlin/Utilities/DokkaModules.kt | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/core/src/main/kotlin/Utilities/DokkaModules.kt b/core/src/main/kotlin/Utilities/DokkaModules.kt index 6b5e153e..763e29a9 100644 --- a/core/src/main/kotlin/Utilities/DokkaModules.kt +++ b/core/src/main/kotlin/Utilities/DokkaModules.kt @@ -73,7 +73,9 @@ private inline fun <reified Base : Any, reified T : Base> Binder.bindNameAnnotat inline fun <reified T: Any> Binder.bind(): AnnotatedBindingBuilder<T> = bind(T::class.java) -inline infix fun <reified T: Any, TKClass: KClass<out T>> AnnotatedBindingBuilder<T>.toOptional(kClass: TKClass?) = - kClass?.let { to(it.java) } +inline fun <reified T: Any> Binder.lazyBind(): Lazy<AnnotatedBindingBuilder<T>> = lazy { bind(T::class.java) } + +inline infix fun <reified T: Any, TKClass: KClass<out T>> Lazy<AnnotatedBindingBuilder<T>>.toOptional(kClass: TKClass?) = + kClass?.let { value toType it } inline infix fun <reified T: Any, TKClass: KClass<out T>> AnnotatedBindingBuilder<T>.toType(kClass: TKClass) = to(kClass.java) |
