Is this object destroyed?
Binds new registration with itself. This registration/destroyable will be destroyed with this.
Checks, whether the object is not destroyed
Message that will replace default one before error
Callback runed before error is thrown; typically this can be some logging
Chcek whether the given object is destroyable
ThrottleQueue ensures that in every time block separated by throttler will be runned only one task (function run)
Imagine timeline of task runs:
Input: __🥝🍓🍋_____🍏🍍🍇__🍉_🍌🍒___🥑🍎🍈
Output: _________🍋🍋🍋_________🍇🍇🍇_🍉_🍒🍒_🍈🍈🍈
TODO: Error handling TODO: Probably debouncing TODO: timeouts