///|
pub struct EventStream {
buf : Array[Event]
}
///|
pub fn EventStream::new(stream : Array[Event]) -> EventStream {
EventStream::{ buf: stream }
}
///|
pub fn EventStream::add(self : EventStream, event : Event) -> EventStream {
self.buf.push(event)
self
}
///|
pub fn EventStream::add_all(
self : EventStream,
stream : Array[Event],
) -> EventStream {
self.buf.append(stream)
self
}
///|
pub impl Add for EventStream with add(self : EventStream, other : EventStream) -> EventStream {
self.add_all(other.buf)
}