AbstractBinding.kt (523B) - raw
1 package me.rhunk.snapenhance.common.scripting.bindings 2 3 abstract class AbstractBinding( 4 val name: String, 5 val side: BindingSide 6 ) { 7 lateinit var context: BindingsContext 8 9 private val bridgeReloadList = mutableListOf<() -> Unit>() 10 11 fun bridgeAutoReload(block: () -> Unit) { 12 bridgeReloadList += block 13 block() 14 } 15 16 open fun onInit() {} 17 18 open fun onBridgeReloaded() { 19 bridgeReloadList.forEach { it() } 20 } 21 22 open fun onDispose() {} 23 24 abstract fun getObject(): Any 25 }