1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
v/examples/eventbus/modules/some_module/some_module.v

35 lines
451 B
V
Raw Normal View History

module some_module
2020-04-26 14:49:31 +03:00
import eventbus
const (
eb = eventbus.new()
)
2019-12-18 08:16:33 +03:00
pub struct Work {
2021-02-22 19:44:15 +03:00
pub:
2019-12-18 08:16:33 +03:00
hours int
}
2021-02-22 19:44:15 +03:00
pub struct MyError {
pub:
2020-01-22 19:41:08 +03:00
message string
}
pub fn do_work(){
2019-12-18 08:16:33 +03:00
work := Work{20}
for i in 0..20 {
println("working...")
if i == 15 {
2021-02-22 19:44:15 +03:00
error := &MyError{"There was an error."}
2020-01-22 19:41:08 +03:00
eb.publish("error", work, error)
eb.publish("error", work, error)
return
}
}
}
pub fn get_subscriber() eventbus.Subscriber {
return *eb.subscriber
2019-12-01 10:33:26 +03:00
}