// 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/. // This file defines a list of use counters, which are things that can // record usage of Web platform features and then report this information // through Telemetry. // // The format of this file is very strict. Each line can be: // // (a) a blank line // // (b) a comment, which is a line that begins with "//" // // (c) one of four possible use counter declarations: // // method . // attribute . // custom // // The for custom counters will be appended to "Whether a // dedicated worker " or "Whether a shared worker" or "Whether a service worker // ", so phrase it appropriately. For instance, "constructs a // Foo object" or "calls Bar.baz('some value')". It may contain any character // (including whitespace). // // To actually cause use counters to be incremented, DOM methods // and attributes must have a [UseCounter] extended attribute and be exposed to // workers in the Web IDL file. // Custom counters are incremented when // SetUseCounter(UseCounterWoker::Custom_MyName) is called on a WorkerPrivate // object. // // You might reasonably ask why we have this file and we require // annotating things with [UseCounter] in the relevant WebIDL file as // well. Generating things from bindings codegen and ensuring all the // dependencies were correct would have been rather difficult. // Push API method PushManager.subscribe method PushSubscription.unsubscribe // Console API method console.assert method console.clear method console.count method console.countReset method console.debug method console.error method console.info method console.log method console.table method console.trace method console.warn method console.dir method console.dirxml method console.group method console.groupCollapsed method console.groupEnd method console.time method console.timeLog method console.timeEnd method console.exception method console.timeStamp method console.profile method console.profileEnd // Unsupported web APIs in Private Browsing Mode custom PrivateBrowsingIDBFactoryOpen calls indexedDB.open in Private Browsing Mode custom PrivateBrowsingIDBFactoryDeleteDatabase calls indexedDB.deleteDatabase in Private Browsing Mode custom PrivateBrowsingCachesMatch calls caches.match in Private Browsing Mode custom PrivateBrowsingCachesHas calls caches.has in Private Browsing Mode custom PrivateBrowsingCachesOpen calls caches.open in Private Browsing Mode custom PrivateBrowsingCachesDelete calls caches.delete in Private Browsing Mode custom PrivateBrowsingCachesKeys calls caches.keys in Private Browsing Mode method Scheduler.postTask