| Index: net/base/address_list.h
|
| diff --git a/net/base/address_list.h b/net/base/address_list.h
|
| index 93255e789856da936b1ff7e199f430e278629d7b..c87add8d5eac52ab1432966620dcf0b1a3d2791a 100644
|
| --- a/net/base/address_list.h
|
| +++ b/net/base/address_list.h
|
| @@ -21,10 +21,10 @@ namespace net {
|
|
|
| class IPAddress;
|
|
|
| -class NET_EXPORT AddressList
|
| - : NON_EXPORTED_BASE(private std::vector<IPEndPoint>) {
|
| +class NET_EXPORT AddressList {
|
| public:
|
| AddressList();
|
| + AddressList(const AddressList&);
|
| ~AddressList();
|
|
|
| // Creates an address list for a single IP literal.
|
| @@ -33,9 +33,8 @@ class NET_EXPORT AddressList
|
| static AddressList CreateFromIPAddress(const IPAddress& address,
|
| uint16_t port);
|
|
|
| - static AddressList CreateFromIPAddressList(
|
| - const IPAddressList& addresses,
|
| - const std::string& canonical_name);
|
| + static AddressList CreateFromIPAddressList(const IPAddressList& addresses,
|
| + const std::string& canonical_name);
|
|
|
| // Copies the data from |head| and the chained list into an AddressList.
|
| static AddressList CreateFromAddrinfo(const struct addrinfo* head);
|
| @@ -44,9 +43,7 @@ class NET_EXPORT AddressList
|
| static AddressList CopyWithPort(const AddressList& list, uint16_t port);
|
|
|
| // TODO(szym): Remove all three. http://crbug.com/126134
|
| - const std::string& canonical_name() const {
|
| - return canonical_name_;
|
| - }
|
| + const std::string& canonical_name() const { return canonical_name_; }
|
|
|
| void set_canonical_name(const std::string& canonical_name) {
|
| canonical_name_ = canonical_name;
|
| @@ -60,26 +57,33 @@ class NET_EXPORT AddressList
|
| // |this| is.
|
| NetLog::ParametersCallback CreateNetLogCallback() const;
|
|
|
| - // Exposed methods from std::vector.
|
| - using std::vector<IPEndPoint>::size;
|
| - using std::vector<IPEndPoint>::empty;
|
| - using std::vector<IPEndPoint>::clear;
|
| - using std::vector<IPEndPoint>::reserve;
|
| - using std::vector<IPEndPoint>::capacity;
|
| - using std::vector<IPEndPoint>::operator[];
|
| - using std::vector<IPEndPoint>::front;
|
| - using std::vector<IPEndPoint>::back;
|
| - using std::vector<IPEndPoint>::push_back;
|
| - using std::vector<IPEndPoint>::insert;
|
| - using std::vector<IPEndPoint>::erase;
|
| - using std::vector<IPEndPoint>::iterator;
|
| - using std::vector<IPEndPoint>::const_iterator;
|
| - using std::vector<IPEndPoint>::begin;
|
| - using std::vector<IPEndPoint>::end;
|
| - using std::vector<IPEndPoint>::rbegin;
|
| - using std::vector<IPEndPoint>::rend;
|
| + using iterator = std::vector<IPEndPoint>::iterator;
|
| + using const_iterator = std::vector<IPEndPoint>::const_iterator;
|
| +
|
| + size_t size() const { return endpoints_.size(); }
|
| + bool empty() const { return endpoints_.empty(); }
|
| + void clear() { endpoints_.clear(); }
|
| + void reserve(size_t count) { endpoints_.reserve(count); }
|
| + size_t capacity() const { return endpoints_.capacity(); }
|
| + IPEndPoint& operator[](size_t index) { return endpoints_[index]; }
|
| + const IPEndPoint& operator[](size_t index) const { return endpoints_[index]; }
|
| + IPEndPoint& front() { return endpoints_.front(); }
|
| + const IPEndPoint& front() const { return endpoints_.front(); }
|
| + IPEndPoint& back() { return endpoints_.back(); }
|
| + const IPEndPoint& back() const { return endpoints_.back(); }
|
| + void push_back(const IPEndPoint& val) { endpoints_.push_back(val); }
|
| +
|
| + template <typename InputIt>
|
| + void insert(iterator pos, InputIt first, InputIt last) {
|
| + endpoints_.insert(pos, first, last);
|
| + }
|
| + iterator begin() { return endpoints_.begin(); }
|
| + const_iterator begin() const { return endpoints_.begin(); }
|
| + iterator end() { return endpoints_.end(); }
|
| + const_iterator end() const { return endpoints_.end(); }
|
|
|
| private:
|
| + std::vector<IPEndPoint> endpoints_;
|
| // TODO(szym): Remove. http://crbug.com/126134
|
| std::string canonical_name_;
|
| };
|
|
|