diff options
author | Junegunn Choi <junegunn.c@gmail.com> | 2015-02-13 12:25:19 +0900 |
---|---|---|
committer | Junegunn Choi <junegunn.c@gmail.com> | 2015-02-13 12:25:19 +0900 |
commit | 6c2ce28d0dca357195d267406b90e705c35312d5 (patch) | |
tree | 2f146a8b81b2fd1cb53fb512f3afb86ab948eae5 /src/util | |
parent | ff09c275d4abf21920526f3134869bda0a7464d5 (diff) |
Add `--sync` option
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/eventbox.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/util/eventbox.go b/src/util/eventbox.go index 568ad9f7..a5821eab 100644 --- a/src/util/eventbox.go +++ b/src/util/eventbox.go @@ -78,3 +78,18 @@ func (b *EventBox) Unwatch(events ...EventType) { b.ignore[event] = true } } + +func (b *EventBox) WaitFor(event EventType) { + looping := true + for looping { + b.Wait(func(events *Events) { + for evt := range *events { + switch evt { + case event: + looping = false + return + } + } + }) + } +} |