Adds an update method for changes in current Event
This commit is contained in:
+6
@@ -60,6 +60,12 @@ class TagArrayBuilder<T : IEvent> {
|
|||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun addFirst(tag: Array<String>): TagArrayBuilder<T> {
|
||||||
|
if (tag.isEmpty() || tag[0].isEmpty()) return this
|
||||||
|
tagList.getOrPut(tag[0], ::mutableListOf).add(0, tag)
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
fun addUnique(tag: Array<String>): TagArrayBuilder<T> {
|
fun addUnique(tag: Array<String>): TagArrayBuilder<T> {
|
||||||
if (tag.isEmpty() || tag[0].isEmpty()) return this
|
if (tag.isEmpty() || tag[0].isEmpty()) return this
|
||||||
tagList[tag[0]] = mutableListOf(tag)
|
tagList[tag[0]] = mutableListOf(tag)
|
||||||
|
|||||||
+5
@@ -54,3 +54,8 @@ fun <T : Event> eventUpdate(
|
|||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
updater: TagArrayBuilder<T>.() -> Unit = {},
|
updater: TagArrayBuilder<T>.() -> Unit = {},
|
||||||
) = EventTemplate<T>(createdAt, base.kind, base.tags.builder(updater), base.content)
|
) = EventTemplate<T>(createdAt, base.kind, base.tags.builder(updater), base.content)
|
||||||
|
|
||||||
|
fun <T : Event> T.update(
|
||||||
|
createdAt: Long = TimeUtils.now(),
|
||||||
|
updater: TagArrayBuilder<T>.() -> Unit = {},
|
||||||
|
) = eventUpdate(this, createdAt, updater)
|
||||||
|
|||||||
Reference in New Issue
Block a user