std::string EpollLoop::formatEpollEvents()

in tensorpipe/common/epoll_loop.cc [197:220]


std::string EpollLoop::formatEpollEvents(uint32_t events) {
  std::string res;
  if (events & EPOLLIN) {
    res = res.empty() ? "IN" : res + " | IN";
    events &= ~EPOLLIN;
  }
  if (events & EPOLLOUT) {
    res = res.empty() ? "OUT" : res + " | OUT";
    events &= ~EPOLLOUT;
  }
  if (events & EPOLLERR) {
    res = res.empty() ? "ERR" : res + " | ERR";
    events &= ~EPOLLERR;
  }
  if (events & EPOLLHUP) {
    res = res.empty() ? "HUP" : res + " | HUP";
    events &= ~EPOLLHUP;
  }
  if (events > 0) {
    std::string eventsStr = std::to_string(events);
    res = res.empty() ? eventsStr : res + " | " + eventsStr;
  }
  return res;
}