refactoring receive only chan type
Vladimir Bauer
3 years ago
| 24 | 24 | |
| 25 | 25 | type iterData struct { |
| 26 | 26 | iter chan<- *Bar |
| 27 | drop chan struct{} | |
| 27 | drop <-chan struct{} | |
| 28 | 28 | } |
| 29 | 29 | |
| 30 | 30 | type pushData struct { |
| 112 | 112 | m <- heapRequest{cmd: h_push, data: data} |
| 113 | 113 | } |
| 114 | 114 | |
| 115 | func (m heapManager) iter(iter chan<- *Bar, drop chan struct{}) { | |
| 115 | func (m heapManager) iter(iter chan<- *Bar, drop <-chan struct{}) { | |
| 116 | 116 | data := iterData{iter, drop} |
| 117 | 117 | m <- heapRequest{cmd: h_iter, data: data} |
| 118 | 118 | } |
| 119 | 119 | |
| 120 | func (m heapManager) drain(iter chan<- *Bar, drop chan struct{}) { | |
| 120 | func (m heapManager) drain(iter chan<- *Bar, drop <-chan struct{}) { | |
| 121 | 121 | data := iterData{iter, drop} |
| 122 | 122 | m <- heapRequest{cmd: h_drain, data: data} |
| 123 | 123 | } |