#include "media/formats/hls/media_playlist.h"
#include <cmath>
#include <optional>
#include <string_view>
#include <utility>
#include <vector>
#include "base/memory/scoped_refptr.h"
#include "base/numerics/clamped_math.h"
#include "base/time/time.h"
#include "media/formats/hls/media_segment.h"
#include "media/formats/hls/multivariant_playlist.h"
#include "media/formats/hls/parse_status.h"
#include "media/formats/hls/playlist.h"
#include "media/formats/hls/playlist_common.h"
#include "media/formats/hls/source_string.h"
#include "media/formats/hls/tags.h"
#include "media/formats/hls/types.h"
#include "media/formats/hls/variable_dictionary.h"
#include "third_party/abseil-cpp/absl/types/variant.h"
#include "url/gurl.h"
namespace media::hls {
struct MediaPlaylist::CtorArgs { … };
MediaPlaylist::~MediaPlaylist() = default;
Playlist::Kind MediaPlaylist::GetKind() const { … }
ParseStatus::Or<scoped_refptr<MediaPlaylist>> MediaPlaylist::Parse(
std::string_view source,
GURL uri,
types::DecimalInteger version,
const MultivariantPlaylist* parent_playlist,
TagRecorder* tag_recorder) { … }
MediaPlaylist::MediaPlaylist(base::PassKey<MediaPlaylist>, CtorArgs args)
: … { … }
}