{ "contexts": [ "type", "interface", "attribute", "operation", "argument", "callback-function", "dictionary", "dictionary-member", "enum", "constant", "union-member", "iterable", "map-like", "set-like" ], "attributes": { "ActiveDOMObject": { "contextsAllowed": ["interface"] }, "AppleCopyright": { "contextsAllowed": ["interface", "attribute", "operation"] }, "AtomicString": { "contextsAllowed": ["type"] }, "CEReactions": { "contextsAllowed": ["attribute", "operation"] }, "CachedAttribute": { "contextsAllowed": ["attribute"] }, "CallTracingCallback": { "contextsAllowed": ["interface", "attribute", "operation"], "values": ["*"] }, "CallbackNeedsOperatorEqual": { "contextsAllowed": ["callback-function"] }, "CallbackThisObject": { "contextsAllowed": ["callback-function", "operation"] }, "CallNamedSetterOnlyForSupportedProperties": { "contextsAllowed": ["operation"] }, "CallWith": { "contextsAllowed": ["attribute", "operation"], "values": ["Document", "ScriptExecutionContext", "ScriptState", "GlobalObject", "ActiveWindow", "FirstWindow", "ResponsibleDocument", "World"] }, "CheckSecurity": { "contextsAllowed": ["interface"] }, "CheckSecurityForNode": { "contextsAllowed": ["attribute", "operation"] }, "Clamp": { "contextsAllowed": ["type"], "standard": { "url": "https://heycam.github.io/webidl/#Clamp" } }, "Conditional": { "contextsAllowed": ["interface", "dictionary", "dictionary-member", "enum", "attribute", "operation", "constant", "callback-function"], "values": ["*"] }, "ConditionallyReadWrite": { "contextsAllowed": ["attribute"], "values": ["*"] }, "ConstantsScope": { "contextsAllowed": ["interface"], "values": ["*"] }, "Constructor": { "contextsAllowed": ["interface"], "standard": { "url": "https://heycam.github.io/webidl/#Constructor" } }, "ConstructorCallWith": { "contextsAllowed": ["interface"], "values": ["Document", "RuntimeFlags", "ScriptExecutionContext", "ScriptState"] }, "ConstructorMayThrowException": { "contextsAllowed": ["interface"] }, "ContextHasServiceWorkerScheme": { "contextsAllowed": ["attribute"] }, "Custom": { "contextsAllowed": ["attribute", "operation"] }, "CustomConstructor": { "contextsAllowed": ["interface"] }, "CustomDefineOwnProperty": { "contextsAllowed": ["interface"] }, "CustomDefineOwnPropertyOnPrototype": { "contextsAllowed": ["interface"] }, "CustomDeleteProperty": { "contextsAllowed": ["interface"] }, "CustomGetCallData": { "contextsAllowed": ["interface"] }, "CustomGetOwnPropertyNames": { "contextsAllowed": ["interface"] }, "CustomGetOwnPropertySlot": { "contextsAllowed": ["interface"] }, "CustomGetPrototype": { "contextsAllowed": ["interface"] }, "CustomGetter": { "contextsAllowed": ["attribute"] }, "CustomIndexedSetter": { "contextsAllowed": ["interface"] }, "CustomIsReachable": { "contextsAllowed": ["interface"] }, "CustomPreventExtensions": { "contextsAllowed": ["interface"] }, "CustomProxyToJSObject": { "contextsAllowed": ["interface"] }, "CustomPushEventHandlerScope": { "contextsAllowed": ["interface"] }, "CustomPut": { "contextsAllowed": ["interface"] }, "CustomPutOnPrototype": { "contextsAllowed": ["interface"] }, "CustomSetter": { "contextsAllowed": ["attribute"] }, "CustomToJSObject": { "contextsAllowed": ["interface"] }, "CustomToStringName": { "contextsAllowed": ["interface"] }, "DOMJIT": { "contextsAllowed": ["interface", "attribute", "operation"], "values": ["", "ReadDOM", "Getter"] }, "DefaultDefineOwnProperty": { "contextsAllowed": ["interface"] }, "DoNotCheckConstants": { "contextsAllowed": ["interface"] }, "DoNotCheckSecurity": { "contextsAllowed": ["attribute", "operation"] }, "DoNotCheckSecurityIf": { "contextsAllowed": ["attribute", "operation"], "values": ["CrossOriginWindowPolicyAllow", "CrossOriginWindowPolicyAllowPostMessage"] }, "DoNotCheckSecurityOnGetter": { "contextsAllowed": ["attribute"] }, "DoNotCheckSecurityOnSetter": { "contextsAllowed": ["attribute"] }, "DocumentEventHandler": { "contextsAllowed": ["attribute"] }, "EnabledAtRuntime": { "contextsAllowed": ["interface", "dictionary", "enum", "attribute", "operation", "constant", "iterable"], "values": ["*"] }, "EnabledBySetting": { "contextsAllowed": ["interface", "dictionary", "enum", "attribute", "operation", "constant"], "values": ["*"] }, "EnabledForWorld": { "contextsAllowed": ["attribute", "operation"], "values": ["*"] }, "EnforceRange": { "contextsAllowed": ["type"], "standard": { "url": "https://heycam.github.io/webidl/#EnforceRange" } }, "ExportMacro": { "contextsAllowed": ["interface", "dictionary", "enum", "callback-function"], "values": ["WEBCORE_EXPORT", "WEBCORE_TESTSUPPORT_EXPORT"] }, "ExportToWrappedFunction": { "contextsAllowed": ["interface"] }, "Exposed": { "contextsAllowed": ["interface", "attribute", "operation", "constant"], "values": ["*"], "standard": { "url": "https://heycam.github.io/webidl/#Exposed" } }, "ForwardDeclareInHeader": { "contextsAllowed": ["attribute", "operation"] }, "GenerateIsReachable": { "contextsAllowed": ["interface"], "values": ["", "Impl", "ImplWebGLRenderingContext", "ImplDocument", "ImplElementRoot", "ImplFrame", "ImplOwnerNodeRoot", "ImplScriptExecutionContext"] }, "Global": { "contextsAllowed": ["interface"], "values": ["*"], "standard": { "url": "https://heycam.github.io/webidl/#Global" } }, "ImplementedAs": { "contextsAllowed": ["interface", "dictionary", "dictionary-member", "enum", "attribute", "operation"], "values": ["*"] }, "ImplementationLacksVTable": { "contextsAllowed": ["interface"] }, "ImplicitThis": { "contextsAllowed": ["interface"] }, "InterfaceName": { "contextsAllowed": ["interface"], "values": ["*"] }, "IsImmutablePrototypeExoticObject": { "contextsAllowed": ["interface"] }, "IsImmutablePrototypeExoticObjectOnPrototype": { "contextsAllowed": ["interface"] }, "IsWeakCallback": { "contextsAllowed": ["callback-function", "interface"] }, "JSBuiltin": { "contextsAllowed": ["interface", "attribute", "operation"] }, "JSBuiltinConstructor": { "contextsAllowed": ["interface"] }, "JSCustomFinalize": { "contextsAllowed": ["interface"] }, "JSCustomHeader": { "contextsAllowed": ["interface"] }, "JSCustomMarkFunction": { "contextsAllowed": ["interface"] }, "JSCustomToNativeObject": { "contextsAllowed": ["interface"] }, "JSGenerateToJSObject": { "contextsAllowed": ["interface", "dictionary", "callback-function"] }, "JSGenerateToNativeObject": { "contextsAllowed": ["interface"] }, "JSLegacyParent": { "contextsAllowed": ["interface"], "values": ["*"] }, "LegacyArrayClass": { "contextsAllowed": ["interface"], "standard": { "url": "https://heycam.github.io/webidl/#LegacyArrayClass" }, "unsupported": true }, "LegacyUnenumerableNamedProperties": { "contextsAllowed": ["interface"], "standard": { "url": "https://heycam.github.io/webidl/#LegacyUnenumerableNamedProperties" } }, "LegacyWindowAlias": { "contextsAllowed": ["interface"], "values": ["*"], "standard": { "url": "https://heycam.github.io/webidl/#LegacyWindowAlias" } }, "LenientSetter": { "contextsAllowed": ["attribute"], "standard": { "url": "https://heycam.github.io/webidl/#LenientSetter" }, "unsupported": true }, "LenientThis": { "contextsAllowed": ["attribute"], "standard": { "url": "https://heycam.github.io/webidl/#LenientThis" } }, "MasqueradesAsUndefined": { "contextsAllowed": ["interface"] }, "MayThrowException": { "contextsAllowed": ["attribute", "operation"] }, "NamedConstructor": { "contextsAllowed": ["interface"], "values": ["*"], "standard": { "url": "https://heycam.github.io/webidl/#NamedConstructor" } }, "NewImpurePropertyFiresWatchpoints": { "contextsAllowed": ["interface"] }, "NewObject": { "contextsAllowed": ["attribute", "operation"], "standard": { "url": "https://heycam.github.io/webidl/#NewObject" } }, "NoInterfaceObject": { "contextsAllowed": ["interface"], "standard": { "url": "https://heycam.github.io/webidl/#NoInterfaceObject" } }, "NotEnumerable": { "contextsAllowed": ["attribute", "operation"] }, "OverrideBuiltins": { "contextsAllowed": ["interface"], "standard": { "url": "https://heycam.github.io/webidl/#OverrideBuiltins" } }, "OverrideIDLType": { "contextsAllowed": ["type"], "values": ["*"] }, "PassContext": { "contextsAllowed": ["operation"], "notes" : "Only used by WebKitTestRunner and DumpRenderTree" }, "Plugin": { "contextsAllowed": ["interface"], "notes" : "Should only be used by elements that forward to Netscape plug-ins" }, "PrimaryGlobal": { "contextsAllowed": ["interface"], "values": ["*"], "standard": { "url": "https://heycam.github.io/webidl/#Global" } }, "PrivateIdentifier": { "contextsAllowed": ["interface", "attribute", "operation"] }, "PromiseProxy": { "contextsAllowed": ["operation"] }, "PublicIdentifier": { "contextsAllowed": ["interface", "attribute", "operation"] }, "PutForwards": { "contextsAllowed": ["attribute"], "values": ["*"], "standard": { "url": "https://heycam.github.io/webidl/#PutForwards" } }, "Reflect": { "contextsAllowed": ["attribute", "constant"], "values": ["*"] }, "Replaceable": { "contextsAllowed": ["attribute"], "standard": { "url": "https://heycam.github.io/webidl/#Replaceable" } }, "ReportExtraMemoryCost": { "contextsAllowed": ["interface"] }, "ReportExternalMemoryCost": { "contextsAllowed": ["interface"] }, "RequiresExistingAtomicString": { "contextsAllowed": ["type"] }, "RethrowException": { "contextsAllowed": ["operation", "callback-function"] }, "ReturnsOwnPromise": { "contextsAllowed": ["operation"] }, "ReturnValue": { "contextsAllowed": ["argument"] }, "SameObject": { "contextsAllowed": ["attribute"], "standard": { "url": "https://heycam.github.io/webidl/#Replaceable" }, "unsupported": true }, "SecureContext": { "contextsAllowed": ["interface", "dictionary", "enum", "attribute", "operation", "constant"], "standard": { "url": "https://heycam.github.io/webidl/#SecureContext" } }, "SetterCallWith": { "contextsAllowed": ["attribute"], "values": ["ScriptExecutionContext", "ScriptState", "GlobalObject", "ActiveWindow", "FirstWindow"] }, "SkipCallbackInvokeCheck": { "contextsAllowed": ["operation", "callback-function"] }, "SkipVTableValidation": { "contextsAllowed": ["interface"] }, "SuppressToJSObject": { "contextsAllowed": ["interface"] }, "TreatNonObjectAsNull": { "contextsAllowed": ["callback-function"], "standard": { "url": "https://heycam.github.io/webidl/#TreatNonObjectAsNull" }, "unsupported": true }, "TreatNullAs": { "contextsAllowed": ["type"], "values": ["EmptyString"], "standard": { "url": "https://heycam.github.io/webidl/#TreatNullAs" } }, "URL": { "contextsAllowed": ["attribute"] }, "Unforgeable": { "contextsAllowed": ["attribute", "operation", "interface"], "standard": { "url": "https://heycam.github.io/webidl/#Unforgeable" } }, "Unscopable": { "contextsAllowed": ["attribute", "operation"], "standard": { "url": "https://heycam.github.io/webidl/#Unscopable" } }, "WindowEventHandler": { "contextsAllowed": ["attribute"] } } }