gecko-dev/dom/webidl/TextEncoder.webidl

47 строки
1.4 KiB
Plaintext

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* 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/.
*
* The origin of this IDL file is
* http://encoding.spec.whatwg.org/#interface-textencoder
*
* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
*/
dictionary TextEncoderEncodeIntoResult {
unsigned long long read;
unsigned long long written;
};
[Exposed=(Window,Worker)]
interface TextEncoder {
constructor();
/*
* This is DOMString in the spec, but the value is always ASCII
* and short. By declaring this as ByteString, we get the same
* end result (storage as inline Latin1 string in SpiderMonkey)
* with fewer conversions.
*/
[Constant]
readonly attribute ByteString encoding;
/*
* This is spec-wise USVString but marking it as
* JSString as an optimization. (The SpiderMonkey-provided
* conversion to UTF-8 takes care of replacing lone
* surrogates with the REPLACEMENT CHARACTER, so the
* observable behavior of USVString is matched.)
*/
[NewObject]
Uint8Array encode(optional JSString input = "");
/*
* The same comment about USVString as above applies here.
*/
[CanOOM]
TextEncoderEncodeIntoResult encodeInto(JSString source, Uint8Array destination);
};