cert_info.h 853 B

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef CPR_CERT_INFO_H
  2. #define CPR_CERT_INFO_H
  3. #include <initializer_list>
  4. #include <string>
  5. #include <vector>
  6. namespace cpr {
  7. class CertInfo {
  8. private:
  9. std::vector<std::string> cert_info_;
  10. public:
  11. CertInfo() = default;
  12. CertInfo(const std::initializer_list<std::string>& entry) : cert_info_{entry} {};
  13. ~CertInfo() noexcept = default;
  14. using iterator = std::vector<std::string>::iterator;
  15. using const_iterator = std::vector<std::string>::const_iterator;
  16. std::string& operator[](const size_t& pos);
  17. iterator begin();
  18. iterator end();
  19. const_iterator begin() const;
  20. const_iterator end() const;
  21. const_iterator cbegin() const;
  22. const_iterator cend() const;
  23. void emplace_back(const std::string& str);
  24. void push_back(const std::string& str);
  25. void pop_back();
  26. };
  27. } // namespace cpr
  28. #endif