From 515122a275c367dce1b8102c864e807223fdebdb Mon Sep 17 00:00:00 2001 From: Roman Makeev Date: Wed, 20 Dec 2023 05:35:46 +0300 Subject: [PATCH] add lazy to Single --- gradle.properties | 2 +- gradle/libs.versions.toml | 2 +- .../kotlin/ru/astrainteractive/klibs/kdi/Single.kt | 12 +++++------- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/gradle.properties b/gradle.properties index a7039f2..928b402 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,7 +19,7 @@ makeevrserg.java.ktarget=17 # Project makeevrserg.project.name=KDI makeevrserg.project.group=ru.astrainteractive.klibs -makeevrserg.project.version.string=1.3.0 +makeevrserg.project.version.string=1.3.1 makeevrserg.project.description=KMM library for manual DI makeevrserg.project.developers=makeevrserg|Makeev Roman|makeevrserg@gmail.com makeevrserg.project.url=https://github.com/makeevrserg/kdi diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index a1d0809..672f4be 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,7 +1,7 @@ [versions] # Kotlin kotlin-version = "1.9.0" -makeevrserg-gradleplugin = "0.0.10" +makeevrserg-gradleplugin = "0.5.1" gradle-android = "7.4.2" [libraries] makeevrserg-gradleplugin-convention = { module = "ru.astrainteractive.gradleplugin:convention", version.ref = "makeevrserg-gradleplugin" } diff --git a/kdi/src/commonMain/kotlin/ru/astrainteractive/klibs/kdi/Single.kt b/kdi/src/commonMain/kotlin/ru/astrainteractive/klibs/kdi/Single.kt index 0dcfc20..c365632 100644 --- a/kdi/src/commonMain/kotlin/ru/astrainteractive/klibs/kdi/Single.kt +++ b/kdi/src/commonMain/kotlin/ru/astrainteractive/klibs/kdi/Single.kt @@ -4,11 +4,9 @@ package ru.astrainteractive.klibs.kdi * [Single] is a singleton value which will be a unique and single instant * * This can be helpful for repository storing, DB connection and etc + * + * Also implements [Lazy] */ -class Single(factory: Factory) : Dependency { - private val instance by lazy { - factory.create() - } - override val value: T - get() = instance -} +class Single( + factory: Factory +) : Dependency, Lazy by lazy(initializer = { factory.create() })