[WebIDL] Add support for modern callback syntax
[WebKit.git] / Source / WebCore / bindings / scripts / IDLAttributes.txt
1 #
2 # This file describes all IDL attributes.
3 # If any IDL file uses an IDL attribute not listed below, the WebKit build will fail.
4 # If you want to add a new IDL attribute, you need to
5 #     (1) add the IDL attribute to this file
6 #     (2) add the explanation to the WebKit IDL document (https://trac.webkit.org/wiki/WebKitIDL)
7 #     (3) add test cases to run-bindings-tests
8 #
9 # The syntax of this file is as follows:
10 #     - You can write one IDL attribute per one line.
11 #     - "ATTR" means that the IDL attribute ATTR does not take any argument; i.e. [ATTR].
12 #     - "ATTR=X" means that the IDL attribute ATTR always takes one argument X; i.e. [ATTR=X].
13 #     - "ATTR=X|Y|Z" means that the IDL attribute ATTR takes one or more arguments
14 #       and the arguments are X, Y or Z; e.g. [ATTR=X], [ATTR=Y], [ATTR=X|Z], [ATTR=X|Y|Z].
15 #     - "ATTR=|X|Y|Z" means that the IDL attribute ATTR can take arguments
16 #       and the arguments are X, Y or Z; e.g. [ATTR], [ATTR=X], [ATTR=Y], [ATTR=X|Z], [ATTR=X|Y|Z].
17 #     - "ATTR=*" means that the IDL attribute ATTR can take arbitrary arguments;
18 #       e.g. [ATTR=INDEXED_DATABASE], [ATTR=deleteFunction].
19 #
20
21 ActiveDOMObject
22 AppleCopyright
23 AtomicString
24 CEReactions
25 CachedAttribute
26 CallbackNeedsOperatorEqual
27 CallWith=Document|ScriptExecutionContext|ScriptState|ScriptArguments|CallStack|ActiveWindow|FirstWindow|CallerDocument|CallerWindow
28 CheckSecurity
29 CheckSecurityForNode
30 Clamp
31 Conditional=*
32 Constructor
33 ConstructorCallWith=Document|ScriptExecutionContext|ScriptState
34 ConstructorMayThrowException
35 ConstructorMayThrowLegacyException
36 Custom
37 CustomCall
38 CustomConstructor
39 CustomDeleteProperty
40 CustomEnumerateProperty
41 CustomGetOwnPropertySlot
42 CustomGetPrototype
43 CustomGetter
44 CustomIndexedSetter
45 CustomIsReachable
46 CustomNamedGetter
47 CustomNamedSetter
48 CustomPreventExtensions
49 CustomProxyToJSObject
50 CustomPutFunction
51 CustomSetPrototype
52 CustomSetter
53 CustomToJSObject
54 DOMJIT=|ReadDOM
55 DoNotCheckConstants
56 DoNotCheckSecurity
57 DoNotCheckSecurityOnGetter
58 DoNotCheckSecurityOnSetter
59 DocumentEventHandler
60 EnabledAtRuntime=*
61 EnabledBySetting=*
62 EnforceRange
63 ExportMacro=WEBCORE_EXPORT|WEBCORE_TESTSUPPORT_EXPORT
64 ExportToWrappedFunction
65 Exposed=*
66 ForwardDeclareInHeader
67 GenerateIsReachable=|Impl|ImplWebGLRenderingContext|ImplDocument|ImplElementRoot|ImplFrame|ImplOwnerNodeRoot|ImplScriptExecutionContext
68 GetterMayThrowException
69 GetterMayThrowLegacyException
70 Immutable
71 ImplementedAs=*
72 ImplementationLacksVTable
73 ImplementationReturnType=*
74 ImplicitThis
75 InterfaceName=*
76 IsWeakCallback
77 JSBuiltin
78 JSBuiltinConstructor
79 JSCustomDefineOwnProperty
80 JSCustomDefineOwnPropertyOnPrototype
81 JSCustomFinalize
82 JSCustomGetOwnPropertySlotAndDescriptor
83 JSCustomHeader
84 JSCustomMarkFunction
85 JSCustomNamedGetterOnPrototype
86 JSCustomPushEventHandlerScope
87 JSCustomToNativeObject
88 JSGenerateToJSObject
89 JSGenerateToNativeObject
90 JSLegacyParent=*
91 LenientThis
92 MasqueradesAsUndefined
93 MayThrowException
94 MayThrowLegacyException
95 NamedConstructor=*
96 NewImpurePropertyFiresWatchpoints
97 NewObject
98 NoInterfaceObject
99 Nondeterministic
100 NotEnumerable
101 OverrideBuiltins
102 PassContext
103 PrivateIdentifier
104 PublicIdentifier
105 PutForwards=*
106 Reflect=*
107 Replaceable
108 ReportExtraMemoryCost
109 ReportExternalMemoryCost
110 RequiresExistingAtomicString
111 SetterCallWith=ScriptExecutionContext|ScriptState|ScriptArguments|CallStack|ActiveWindow|FirstWindow
112 SetterMayThrowException
113 SetterMayThrowLegacyException
114 SkipVTableValidation
115 SuppressToJSObject
116 TreatNullAs=EmptyString
117 URL
118 Unforgeable
119 Unscopable
120 WindowEventHandler