code: func (f *Selectable) GetResult() (interface{}, error) {
  	if atomic.LoadUint32(&f.filled) == 0 {
  		<-f.wchan()
  	}
  	return f.val, f.err
  }
docs: // GetResult waits for future to be fullfilled and returns value or error,
  // whatever is set first