#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_WEBCODECS_ARRAY_BUFFER_UTIL_H_
#define THIRD_PARTY_BLINK_RENDERER_MODULES_WEBCODECS_ARRAY_BUFFER_UTIL_H_
#include "base/containers/span.h"
#include "media/base/decoder_buffer.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_union_arraybufferallowshared_arraybufferviewallowshared.h"
#include "third_party/blink/renderer/core/typed_arrays/array_buffer/array_buffer_contents.h"
#include "third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
namespace blink {
AllowSharedBufferSource;
template <typename T>
base::span<T> AsSpan(const AllowSharedBufferSource* buffer_union) { … }
ArrayBufferContents PinArrayBufferContent(
const AllowSharedBufferSource* buffer_union);
ArrayBufferContents TransferArrayBufferForSpan(
const HeapVector<Member<DOMArrayBuffer>>& transfer_list,
base::span<const uint8_t> data_range,
ExceptionState& exception_state,
v8::Isolate* isolate);
class ArrayBufferContentsExternalMemory
: public media::DecoderBuffer::ExternalMemory { … };
}
#endif