better var name
Vladimir Bauer
4 years ago
| 137 | 137 |
|
| 138 | 138 |
// TraverseDecorators traverses all available decorators and calls cb func on each.
|
| 139 | 139 |
func (b *Bar) TraverseDecorators(cb func(decor.Decorator)) {
|
| 140 | |
done := make(chan struct{})
|
|
140 |
sync := make(chan struct{})
|
| 141 | 141 |
select {
|
| 142 | 142 |
case b.operateState <- func(s *bState) {
|
| 143 | 143 |
for _, decorators := range [...][]decor.Decorator{
|
|
| 148 | 148 |
cb(extractBaseDecorator(d))
|
| 149 | 149 |
}
|
| 150 | 150 |
}
|
| 151 | |
close(done)
|
| 152 | |
}:
|
| 153 | |
<-done
|
|
151 |
close(sync)
|
|
152 |
}:
|
|
153 |
<-sync
|
| 154 | 154 |
case <-b.done:
|
| 155 | 155 |
}
|
| 156 | 156 |
}
|