35 lines
449 B
V
35 lines
449 B
V
module some_module
|
|
|
|
import eventbus
|
|
|
|
const (
|
|
eb = eventbus.new()
|
|
)
|
|
|
|
pub struct Work {
|
|
pub:
|
|
hours int
|
|
}
|
|
|
|
pub struct Error {
|
|
pub:
|
|
message string
|
|
}
|
|
|
|
pub fn do_work(){
|
|
work := Work{20}
|
|
for i in 0..20 {
|
|
println("working...")
|
|
if i == 15 {
|
|
error := &Error{"There was an error."}
|
|
eb.publish("error", work, error)
|
|
eb.publish("error", work, error)
|
|
return
|
|
}
|
|
}
|
|
}
|
|
|
|
pub fn get_subscriber() eventbus.Subscriber {
|
|
return *eb.subscriber
|
|
}
|