• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
36ActiveDOMObject
37CachedAttribute=*
38CallWith=ExecutionContext|ScriptState|ScriptArguments|ActiveWindow|FirstWindow|ThisValue
39CheckSecurity=Frame|Node|Window
40Clamp
41Conditional=*
42Constructor
43# FIXME: remove [ConstructorCallWith=Document], as can instead use
44# [ConstructorCallWith=ExecutionContext] + toDocument(executionContext)
45ConstructorCallWith=ExecutionContext|Document
46Custom=|Getter|Setter|LegacyCallAsFunction|ToV8|VisitDOMWrapper|Wrap|PropertyGetter|PropertyEnumerator|PropertyQuery
47CustomConstructor
48CustomElementCallbacks
49Default=Undefined
50DependentLifetime
51DeprecateAs=*
52DoNotCheckConstants
53DoNotCheckSecurity=|Setter
54DoNotCheckSignature
55EnforceRange
56EventConstructor
57ExposeJSAccessors
58Exposed=*
59GarbageCollected
60Global=|*
61Immutable
62ImplementedAs=*
63ImplementedInPrivateScript
64InitializedByEventConstructor
65Iterable
66LegacyTreatAsPartialInterface
67LogActivity=|GetterOnly|SetterOnly
68LogAllWorlds
69MeasureAs=*
70NamedConstructor=*
71NoImplHeader
72NoInterfaceObject
73NotEnumerable
74NotScriptWrappable
75OnlyExposedToPrivateScript
76OverrideBuiltins
77PartialInterfaceImplementedAs=*
78# Valid values for [PerContextEnabled] are Context Features, in
79# ContextFeatures::FeatureType in Source/core/dom/ContextFeatures.h
80PerContextEnabled=*
81PerWorldBindings
82PrimaryGlobal=|*
83PutForwards=*
84RaisesException=|Getter|Setter|Constructor
85Reflect=|*
86ReflectEmpty=*
87ReflectInvalid=*
88ReflectMissing=*
89ReflectOnly=*
90Replaceable
91# Valid values for [RuntimeEnabled] are the Runtime Enabled Features, listed in
92# Source/core/page/RuntimeEnabledFeatures.in
93RuntimeEnabled=*
94SetWrapperReferenceFrom=*
95SetWrapperReferenceTo=*
96SetterCallWith=ExecutionContext|ScriptArguments|ActiveWindow|FirstWindow
97SpecialWrapFor=*
98TreatNullAs=NullString|EmptyString
99TreatReturnedNullStringAs=Null|Undefined
100TreatUndefinedAs=NullString
101TypeChecking=Interface|Unrestricted
102URL
103Unforgeable
104WillBeGarbageCollected
105