xpcom/io/nsITellableStream.idl
author Jared Wein <jwein@mozilla.com>
Tue, 12 May 2020 02:00:19 +0000
changeset 589278 cdf352f02ac4e034be96d14031fd6cc37dbe9ab9
parent 500377 2da6504c901e9474566aa1663d907bd58bed9edb
permissions -rw-r--r--
Bug 1636511 - Disable the OS auth feature in about:logins on Release and Beta. r=MattN a=RyanVM Differential Revision: https://phabricator.services.mozilla.com/D74676

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* 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/. */


/*
 * nsITellableStream
 *
 * This class is separate from nsISeekableStream in order to let streams to
 * implement ::Tell() without implementing the whole nsISeekableStream
 * interface. Callers can QI the stream to know what is implemented. This is
 * mainly done for nsPipeInputStream.
 *
 *
 * Implementing this interface, streams are able to expose the current offset
 * via ::tell().
 */

#include "nsISupports.idl"

[scriptable, uuid(ee942946-4538-45d2-bf05-ffdbf5932621)]
interface nsITellableStream : nsISupports
{
    /**
     *  tell
     *
     *  This method reports the current offset, in bytes, from the start of the
     *  stream.
     *
     *   @throws NS_BASE_STREAM_CLOSED if called on a closed stream.
     */
    long long tell();
};