/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; const {arg, DebuggerClient} = require("devtools/shared/client/debugger-client"); /** * A ArrayBufferClient provides a way to access ArrayBuffer from the * debugger server. * * @param client DebuggerClient * The debugger client parent. * @param grip Object * A pause-lifetime ArrayBuffer grip returned by the protocol. */ function ArrayBufferClient(client, grip) { this._grip = grip; this._client = client; this.request = this._client.request; } ArrayBufferClient.prototype = { get actor() { return this._grip.actor; }, get length() { return this._grip.length; }, get _transport() { return this._client._transport; }, valid: true, slice: DebuggerClient.requester({ type: "slice", start: arg(0), count: arg(1) }), }; module.exports = ArrayBufferClient;