events

Generated by tinox doc

tinox.core.events, bundled with the compiler and also available as a standalone tinox-central package.

Pubsub

import tinox.core.events
import tinox.core.json
class Main
{
    fnc main() -> Int32
    {
        const emitter: EventEmitter = EventEmitter::new()
        const handler: fnc(JsonValue) -> Nothing = payload => {
            println("got greeting: " + Json::stringify(payload))
        }
        EventEmitter::on(emitter, "greet", handler)
        const payload: JsonValue = Json::parse("\"hello world\"")
        EventEmitter::emit(emitter, "greet", payload)
        println("listeners: " + EventEmitter::listenerCount(emitter, "greet").toString())
        EventEmitter::removeListener(emitter, "greet", handler)
        return 0
    }
}

class EventEmitter

Fields

listenersMap<String, List<fnc(JsonValue) -> Nothing>>

Methods

fn new() → EventEmitter
fn on(emitter: EventEmitter, event: String, handler: fnc(JsonValue) -> Nothing) → Nothing
fn once(emitter: EventEmitter, event: String, handler: fnc(JsonValue) -> Nothing) → Nothing
fn emit(emitter: EventEmitter, event: String, data: JsonValue) → Nothing
fn removeListener(emitter: EventEmitter, event: String, handler: fnc(JsonValue) -> Nothing) → Nothing
fn removeAllListeners(emitter: EventEmitter, event: String) → Nothing
fn listenerCount(emitter: EventEmitter, event: String) → Int64