#include "components/feed/core/v2/web_feed_subscriptions/web_feed_index.h"
#include <memory>
#include <ostream>
#include <string_view>
#include <vector>
#include "base/containers/flat_map.h"
#include "base/strings/strcat.h"
#include "base/substring_set_matcher/matcher_string_pattern.h"
#include "components/feed/core/proto/v2/store.pb.h"
#include "components/feed/core/proto/v2/wire/web_feed_matcher.pb.h"
#include "components/feed/core/v2/feedstore_util.h"
#include "components/url_matcher/url_matcher.h"
#include "url/gurl.h"
namespace feed {
namespace {
Entry;
class HostSuffixMatcher { … };
constexpr base::MatcherStringPattern::ID kFirstConditionId = …;
struct MultiConditionSet { … };
}
namespace web_feed_index_internal {
class EntrySetBuilder;
class EntrySet { … };
class EntrySetBuilder { … };
}
namespace {
EntrySetBuilder;
}
WebFeedIndex::WebFeedIndex() { … }
WebFeedIndex::~WebFeedIndex() = default;
void WebFeedIndex::Populate(
const feedstore::RecommendedWebFeedIndex& recommended_feed_index) { … }
void WebFeedIndex::Populate(
const feedstore::SubscribedWebFeeds& subscribed_feeds) { … }
void WebFeedIndex::Clear() { … }
WebFeedIndex::Entry WebFeedIndex::FindWebFeed(
const std::string& web_feed_id) const { … }
Entry WebFeedIndex::FindWebFeed(const WebFeedPageInformation& page_info) { … }
bool WebFeedIndex::IsRecommended(const std::string& web_feed_id) const { … }
bool WebFeedIndex::HasSubscriptions() const { … }
int WebFeedIndex::SubscriptionCount() const { … }
int WebFeedIndex::RecommendedWebFeedCount() const { … }
const std::vector<Entry>& WebFeedIndex::GetSubscribedEntries() const { … }
std::vector<WebFeedIndex::Entry> WebFeedIndex::GetRecommendedEntriesForTesting()
const { … }
std::vector<WebFeedIndex::Entry> WebFeedIndex::GetSubscribedEntriesForTesting()
const { … }
void WebFeedIndex::DumpStateForDebugging(std::ostream& os) { … }
std::ostream& operator<<(std::ostream& os, const WebFeedIndex::Entry& entry) { … }
}