dom/chrome-webidl/PrecompiledScript.webidl
author Nika Layzell <nika@thelayzells.com>
Sat, 20 Oct 2018 20:02:53 -0400
changeset 442679 fbfcfc27ab30434eaac667cbbf9d33ded0abb571
parent 442402 77f4c84bebf05b7fddb3f5bdb8e7de0d2eb3ebd6
permissions -rw-r--r--
Bug 1489301 - Part 4: Remove unnecessary [Exposed=System] annotations, r=bzbarsky We don't need to expose on both Window and System anymore, as Window now implies System. I don't remove unnecessary [Exposed=Window] annotations, as WebIDL upstream has removed PrimaryGlobal. Differential Revision: https://phabricator.services.mozilla.com/D9399

/* -*- 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/.
 */

/**
 * Represents a pre-compiled JS script, which can be repeatedly executed in
 * different globals without being re-parsed.
 */
[ChromeOnly, Exposed=Window]
interface PrecompiledScript {
  /**
   * Executes the script in the context of, and with the security principal
   * of, the given object's global. If compiled with a return value, returns
   * the value of the script's last expression. Otherwise returns undefined.
   */
  [Throws]
  any executeInGlobal(object global);

  /**
   * The URL that the script was loaded from.
   */
  [Pure]
  readonly attribute DOMString url;

  /**
   * True if the script was compiled with a return value, and will return the
   * value of its last expression when executed.
   */
  [Pure]
  readonly attribute boolean hasReturnValue;
};