#include <algorithm>
#include "net/proxy_resolution/proxy_list.h"
#include "base/check.h"
#include "base/functional/callback.h"
#include "base/notreached.h"
#include "base/strings/string_tokenizer.h"
#include "base/time/time.h"
#include "base/values.h"
#include "net/base/proxy_chain.h"
#include "net/base/proxy_server.h"
#include "net/base/proxy_string_util.h"
#include "net/log/net_log.h"
#include "net/log/net_log_event_type.h"
#include "net/log/net_log_with_source.h"
TimeTicks;
namespace net {
ProxyList::ProxyList() = default;
ProxyList::ProxyList(const ProxyList& other) = default;
ProxyList::ProxyList(ProxyList&& other) = default;
ProxyList& ProxyList::operator=(const ProxyList& other) = default;
ProxyList& ProxyList::operator=(ProxyList&& other) = default;
ProxyList::~ProxyList() = default;
void ProxyList::Set(const std::string& proxy_uri_list) { … }
void ProxyList::SetSingleProxyChain(const ProxyChain& proxy_chain) { … }
void ProxyList::SetSingleProxyServer(const ProxyServer& proxy_server) { … }
void ProxyList::AddProxyChain(const ProxyChain& proxy_chain) { … }
void ProxyList::AddProxyServer(const ProxyServer& proxy_server) { … }
void ProxyList::DeprioritizeBadProxyChains(
const ProxyRetryInfoMap& proxy_retry_info) { … }
void ProxyList::RemoveProxiesWithoutScheme(int scheme_bit_field) { … }
void ProxyList::Clear() { … }
bool ProxyList::IsEmpty() const { … }
size_t ProxyList::size() const { … }
bool ProxyList::Equals(const ProxyList& other) const { … }
const ProxyChain& ProxyList::First() const { … }
const std::vector<ProxyChain>& ProxyList::AllChains() const { … }
void ProxyList::SetFromPacString(const std::string& pac_string) { … }
std::string ProxyList::ToPacString() const { … }
std::string ProxyList::ToDebugString() const { … }
base::Value ProxyList::ToValue() const { … }
bool ProxyList::Fallback(ProxyRetryInfoMap* proxy_retry_info,
int net_error,
const NetLogWithSource& net_log) { … }
void ProxyList::AddProxyChainToRetryList(
ProxyRetryInfoMap* proxy_retry_info,
base::TimeDelta retry_delay,
bool try_while_bad,
const ProxyChain& proxy_chain_to_retry,
int net_error,
const NetLogWithSource& net_log) const { … }
void ProxyList::UpdateRetryInfoOnFallback(
ProxyRetryInfoMap* proxy_retry_info,
base::TimeDelta retry_delay,
bool reconsider,
const std::vector<ProxyChain>& additional_proxies_to_bypass,
int net_error,
const NetLogWithSource& net_log) const { … }
}