tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

nsIArrayBufferInputStream.idl (1259B)


      1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this
      4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 #include "nsIInputStream.idl"
      7 
      8 %{C++
      9 #include "mozilla/UniquePtr.h"
     10 %}
     11 native Bytes(mozilla::UniquePtr<uint8_t[]>);
     12 
     13 /**
     14 * nsIArrayBufferInputStream
     15 *
     16 * Provides scriptable methods for initializing a nsIInputStream
     17 * implementation with an ArrayBuffer.
     18 */
     19 [scriptable, builtinclass, uuid(3014dde6-aa1c-41db-87d0-48764a3710f6)]
     20 interface nsIArrayBufferInputStream : nsIInputStream
     21 {
     22    /**
     23     * SetData - assign an ArrayBuffer to the input stream.
     24     *
     25     * @param buffer    - stream data
     26     * @param byteOffset - stream data offset
     27     * @param byteLen - stream data length
     28     */
     29    [binaryname(SetDataFromJS)]
     30    void setData(in jsval buffer, in uint64_t byteOffset, in uint64_t byteLen);
     31 
     32    /**
     33     * SetData - assign data to the input stream.
     34     *
     35     * @param aBytes  - stream data
     36     * @param byteLen - stream data length
     37     */
     38    [noscript, nostdcall, binaryname(SetData)]
     39    void setDataNative(in Bytes bytes, in uint64_t byteLen);
     40 };