@@ -16,8 +16,8 @@ import kotlin.experimental.ExperimentalTypeInference
1616private fun <S : Item .Builder <* >> S.reactiveItemProvider (
1717 itemProviderProvider : Provider <ItemProvider >
1818): S {
19- modify { item -> itemProviderProvider.observe { item .notifyWindows() } }
20- return itemProvider (itemProviderProvider) as S
19+ addModifier { item -> itemProviderProvider.observeWeak(item) { weakItem -> weakItem .notifyWindows() } }
20+ return setItemProvider (itemProviderProvider) as S
2121}
2222
2323@OverloadResolutionByLambdaReturnType
@@ -136,7 +136,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I, J> S.itemProvider(
136136): S = reactiveItemProvider(combinedProvider(a, b, c, d, e, f, g, h, i, j, mapValue))
137137
138138private fun <S : Item .Builder <* >> S.observeAndNotify (vararg providers : Provider <* >) {
139- providers.forEach { provider -> modify { item -> provider.observe { item .notifyWindows() } } }
139+ providers.forEach { provider -> addModifier { item -> provider.observeWeak(item) { weakItem -> weakItem .notifyWindows() } } }
140140}
141141
142142@OverloadResolutionByLambdaReturnType
@@ -147,7 +147,7 @@ fun <S : Item.Builder<*>, A> S.itemProvider(
147147 mapValue : (Player , A ) -> ItemProvider
148148): S {
149149 observeAndNotify(a)
150- return itemProvider { player: Player -> mapValue(player, a.get()) } as S
150+ return setItemProvider { player: Player -> mapValue(player, a.get()) } as S
151151}
152152
153153@OverloadResolutionByLambdaReturnType
@@ -159,7 +159,7 @@ fun <S : Item.Builder<*>, A, B> S.itemProvider(
159159 mapValue : (Player , A , B ) -> ItemProvider
160160): S {
161161 observeAndNotify(a, b)
162- return itemProvider { player: Player -> mapValue(player, a.get(), b.get()) } as S
162+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get()) } as S
163163}
164164
165165@OverloadResolutionByLambdaReturnType
@@ -172,7 +172,7 @@ fun <S : Item.Builder<*>, A, B, C> S.itemProvider(
172172 mapValue : (Player , A , B , C ) -> ItemProvider
173173): S {
174174 observeAndNotify(a, b, c)
175- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get()) } as S
175+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get()) } as S
176176}
177177
178178@OverloadResolutionByLambdaReturnType
@@ -186,7 +186,7 @@ fun <S : Item.Builder<*>, A, B, C, D> S.itemProvider(
186186 mapValue : (Player , A , B , C , D ) -> ItemProvider
187187): S {
188188 observeAndNotify(a, b, c, d)
189- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get()) } as S
189+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get()) } as S
190190}
191191
192192@OverloadResolutionByLambdaReturnType
@@ -201,7 +201,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E> S.itemProvider(
201201 mapValue : (Player , A , B , C , D , E ) -> ItemProvider
202202): S {
203203 observeAndNotify(a, b, c, d, e)
204- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get()) } as S
204+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get()) } as S
205205}
206206
207207@OverloadResolutionByLambdaReturnType
@@ -217,7 +217,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F> S.itemProvider(
217217 mapValue : (Player , A , B , C , D , E , F ) -> ItemProvider
218218): S {
219219 observeAndNotify(a, b, c, d, e, f)
220- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get()) } as S
220+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get()) } as S
221221}
222222
223223@OverloadResolutionByLambdaReturnType
@@ -234,7 +234,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I, J> S.itemProvider(
234234 mapValue : (Player , A , B , C , D , E , F , G ) -> ItemProvider
235235): S {
236236 observeAndNotify(a, b, c, d, e, f, g)
237- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get()) } as S
237+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get()) } as S
238238}
239239
240240@OverloadResolutionByLambdaReturnType
@@ -252,7 +252,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H> S.itemProvider(
252252 mapValue : (Player , A , B , C , D , E , F , G , H ) -> ItemProvider
253253): S {
254254 observeAndNotify(a, b, c, d, e, f, g, h)
255- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get()) } as S
255+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get()) } as S
256256}
257257
258258@OverloadResolutionByLambdaReturnType
@@ -271,7 +271,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I> S.itemProvider(
271271 mapValue : (Player , A , B , C , D , E , F , G , H , I ) -> ItemProvider
272272): S {
273273 observeAndNotify(a, b, c, d, e, f, g, h, i)
274- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get()) } as S
274+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get()) } as S
275275}
276276
277277@OverloadResolutionByLambdaReturnType
@@ -291,7 +291,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I, J> S.itemProvider(
291291 mapValue : (Player , A , B , C , D , E , F , G , H , I , J ) -> ItemProvider
292292): S {
293293 observeAndNotify(a, b, c, d, e, f, g, h, i, j)
294- return itemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get(), j.get()) } as S
294+ return setItemProvider { player: Player -> mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get(), j.get()) } as S
295295}
296296
297297@OverloadResolutionByLambdaReturnType
@@ -434,7 +434,7 @@ fun <S : Item.Builder<*>, A> S.itemProvider(
434434 mapValue : (Player , A ) -> ItemStack
435435): S {
436436 observeAndNotify(a)
437- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get())) } as S
437+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get())) } as S
438438}
439439
440440@OverloadResolutionByLambdaReturnType
@@ -446,7 +446,7 @@ fun <S : Item.Builder<*>, A, B> S.itemProvider(
446446 mapValue : (Player , A , B ) -> ItemStack
447447): S {
448448 observeAndNotify(a, b)
449- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get())) } as S
449+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get())) } as S
450450}
451451
452452@OverloadResolutionByLambdaReturnType
@@ -459,7 +459,7 @@ fun <S : Item.Builder<*>, A, B, C> S.itemProvider(
459459 mapValue : (Player , A , B , C ) -> ItemStack
460460): S {
461461 observeAndNotify(a, b, c)
462- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get())) } as S
462+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get())) } as S
463463}
464464
465465@OverloadResolutionByLambdaReturnType
@@ -473,7 +473,7 @@ fun <S : Item.Builder<*>, A, B, C, D> S.itemProvider(
473473 mapValue : (Player , A , B , C , D ) -> ItemStack
474474): S {
475475 observeAndNotify(a, b, c, d)
476- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get())) } as S
476+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get())) } as S
477477}
478478
479479@OverloadResolutionByLambdaReturnType
@@ -488,7 +488,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E> S.itemProvider(
488488 mapValue : (Player , A , B , C , D , E ) -> ItemStack
489489): S {
490490 observeAndNotify(a, b, c, d, e)
491- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get())) } as S
491+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get())) } as S
492492}
493493
494494@OverloadResolutionByLambdaReturnType
@@ -504,7 +504,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F> S.itemProvider(
504504 mapValue : (Player , A , B , C , D , E , F ) -> ItemStack
505505): S {
506506 observeAndNotify(a, b, c, d, e, f)
507- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get())) } as S
507+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get())) } as S
508508}
509509
510510@OverloadResolutionByLambdaReturnType
@@ -521,7 +521,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I, J> S.itemProvider(
521521 mapValue : (Player , A , B , C , D , E , F , G ) -> ItemStack
522522): S {
523523 observeAndNotify(a, b, c, d, e, f, g)
524- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get())) } as S
524+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get())) } as S
525525}
526526
527527@OverloadResolutionByLambdaReturnType
@@ -539,7 +539,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H> S.itemProvider(
539539 mapValue : (Player , A , B , C , D , E , F , G , H ) -> ItemStack
540540): S {
541541 observeAndNotify(a, b, c, d, e, f, g, h)
542- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get())) } as S
542+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get())) } as S
543543}
544544
545545@OverloadResolutionByLambdaReturnType
@@ -558,7 +558,7 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I> S.itemProvider(
558558 mapValue : (Player , A , B , C , D , E , F , G , H , I ) -> ItemStack
559559): S {
560560 observeAndNotify(a, b, c, d, e, f, g, h, i)
561- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get())) } as S
561+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get())) } as S
562562}
563563
564564@OverloadResolutionByLambdaReturnType
@@ -578,5 +578,5 @@ fun <S : Item.Builder<*>, A, B, C, D, E, F, G, H, I, J> S.itemProvider(
578578 mapValue : (Player , A , B , C , D , E , F , G , H , I , J ) -> ItemStack
579579): S {
580580 observeAndNotify(a, b, c, d, e, f, g, h, i, j)
581- return itemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get(), j.get())) } as S
581+ return setItemProvider { player: Player -> ItemWrapper (mapValue(player, a.get(), b.get(), c.get(), d.get(), e.get(), f.get(), g.get(), h.get(), i.get(), j.get())) } as S
582582}
0 commit comments