sockmap.h 394 B

123456789101112131415161718192021222324
  1. #pragma once
  2. #include <util/generic/hash.h>
  3. #include <util/generic/vector.h>
  4. template <class T>
  5. class TSocketMap {
  6. public:
  7. T& Get(size_t idx) {
  8. if (idx < 128000) {
  9. if (V_.size() <= idx) {
  10. V_.resize(idx + 1);
  11. }
  12. return V_[idx];
  13. }
  14. return H_[idx];
  15. }
  16. private:
  17. TVector<T> V_;
  18. THashMap<size_t, T> H_;
  19. };