Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / bindings / IDLExtendedAttributes.txt
1 #
2 # This file describes all Blink IDL extended attributes and allowed values.
3 # If any IDL file uses an extended attribute or values not listed below, the
4 # build will fail.
5 # If you would like to add a new extended attribute or value, please:
6 #     (1) add the extended attribute or value to this file
7 #     (2) add an explanation to the Blink IDL extended attributes document:
8 #         http://www.chromium.org/blink/webidl/blink-idl-extended-attributes
9 #     (3) add appropriate test cases to run-bindings-tests
10 #
11 # The syntax of this file is as follows:
12 #     - One extended attribute per one line: Name and (optionally) Values.
13 #     - "Attr" means that the Attr does not take a value, i.e. [Attr].
14 #     - "Attr=X" means that Attr takes a required value, which must be X;
15 #       i.e. [Attr=X].
16 #     - "Attr=X|Y|Z" means that Attr takes a required value, and the valid
17 #       values are X, Y, and Z, and combinations thereof;
18 #       e.g. [Attr=X], [Attr=Y], [Attr=X|Z].
19 #       The separator must be | or &, so [Attr=X&Z] is also valid; the
20 #       separator makes a difference for Conditional, but otherwise is simply
21 #       a style convention.
22 #     - "Attr=|X|Y|Z" means that Attr takes an optional value, whose valid
23 #       values (if present) are X, Y, and Z, and combinations thereof; e.g.
24 #       [Attr], [Attr=X], [Attr=Y], [Attr=X|Z], [Attr=X|Y|Z], [Attr=X&Z].
25 #       Note that including an empty value in the list, as in [Attr=X||Y],
26 #       is NOT valid: the value is optional, but empty values are not allowed.
27 #     - "Attr=*" means that Attr takes a required value, which can be
28 #       arbitrary, and combinations thereof, e.g. [Attr=IndexedDB],
29 #       [Attr=DeleteFunction], [Attr=X|Y].
30 #     - "Attr=|*" means that Attr takes an optional value, which can be
31 #       arbitrary, e.g. [Attr], [Attr=X].
32 #     - "Attr=X|*" means that Attr takes an required value, which can be
33 #       arbitrary, but that "X" is standard, e.g. [Attr=X], [Attr=Foo].
34 #
35
36 ActiveDOMObject
37 CachedAttribute=*
38 CallWith=ExecutionContext|ScriptState|ScriptArguments|ActiveWindow|FirstWindow|ThisValue
39 CheckSecurity=Frame|Node
40 Clamp
41 Conditional=*
42 Constructor
43 # FIXME: remove [ConstructorCallWith=Document], as can instead use
44 # [ConstructorCallWith=ExecutionContext] + toDocument(executionContext)
45 ConstructorCallWith=ExecutionContext|Document
46 Custom=|Getter|Setter|LegacyCallAsFunction|ToV8|VisitDOMWrapper|Wrap|PropertyGetter|PropertyEnumerator|PropertyQuery
47 CustomConstructor
48 CustomElementCallbacks
49 Default=Null|NullString|Undefined
50 DependentLifetime
51 DeprecateAs=*
52 DoNotCheckConstants
53 DoNotCheckSecurity=|Setter
54 DoNotCheckSignature
55 EnforceRange
56 EventConstructor
57 ExposeJSAccessors
58 Exposed=*
59 GarbageCollected
60 Global=|*
61 Immutable
62 ImplementedAs=*
63 InitializedByEventConstructor
64 LegacyTreatAsPartialInterface
65 LegacyOverloadString
66 LogActivity=|GetterOnly|SetterOnly
67 LogAllWorlds
68 LogPreviousValue
69 MeasureAs=*
70 NamedConstructor=*
71 NoInterfaceObject
72 NotEnumerable
73 OverrideBuiltins
74 PartialInterfaceImplementedAs=*
75 # Valid values for [PerContextEnabled] are Context Features, in
76 # ContextFeatures::FeatureType in Source/core/dom/ContextFeatures.h
77 PerContextEnabled=*
78 PerWorldBindings
79 PrimaryGlobal=|*
80 PutForwards=*
81 RaisesException=|Getter|Setter|Constructor
82 ReadOnly
83 Reflect=|*
84 ReflectEmpty=*
85 ReflectInvalid=*
86 ReflectMissing=*
87 ReflectOnly=*
88 Replaceable
89 # Valid values for [RuntimeEnabled] are the Runtime Enabled Features, listed in
90 # Source/core/page/RuntimeEnabledFeatures.in
91 RuntimeEnabled=*
92 SetWrapperReferenceFrom=*
93 SetWrapperReferenceTo=*
94 SetterCallWith=ExecutionContext|ScriptArguments|ActiveWindow|FirstWindow
95 SpecialWrapFor=*
96 TreatNullAs=NullString
97 TreatReturnedNullStringAs=Null|Undefined
98 TreatUndefinedAs=NullString
99 TypeChecking=Interface|Nullable|Unrestricted
100 URL
101 Unforgeable
102 WillBeGarbageCollected