Changes between Version 22 and Version 23 of WebKitIDL


Ignore:
Timestamp:
Feb 13, 2012 6:15:34 AM (12 years ago)
Author:
haraken@chromium.org
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WebKitIDL

    v22 v23  
    2020
    2121= IDL attributes =
     22
     23[http://foo.com/ `[`foo`]`]
    2224
    2325== Basic naming rules ==
     
    126128=== * [CallWith](m,a) ===
    127129
     130Summary: With [CallWith], a WebCore method is called with additional information.
     131
     132Usage: The possible usage is [CallWith=X1|X2|X3|...], where X1, X2, X3, ... is "ScriptExecutionContext", "ScriptState", "ScriptArguments" or "CallStack".
     133"ScriptExecutionContext", "ScriptState" and "CallStack" can be specified on methods or attributes,
     134but "ScriptArguments" can be specified on methods only:
     135{{{
     136    interface HTMLFoo {
     137        attribute [CallWith=ScriptExecutionContext] DOMString str;
     138        [CallWith=ScriptExecutionContext] void func1(in int a, in int b);
     139        [CallWith=ScriptState] void func2(in int a, in int b);
     140        [CallWith=ScriptArguments|CallStack] void func3(in int a, in int b);
     141        [CallWith=CallStack|ScriptArguments] void func4(in int a, in int b);
     142    }
     143}}}
     144
     145In case of func1(...), HTMLFoo::func1(ScriptExecutionContext* context, int a, int b) is called.
     146Thus, in HTMLFoo::func1(...) you can retrieve document or window through context.
     147
     148In case of func2(...), HTMLFoo::func2(ScriptState* state, int a, int b) is called.
     149
     150In case of func3(...), HTMLFoo::func3(ScriptArguments* arguments, ScriptCallStack* callstack, int a, int b) is called.
     151
     152In this way, the additional information is added at the head of normal arguments.
     153The order of additional information is "ScriptExecutionContext", "ScriptState", "ScriptArguments", and then "CallStack",
     154despite the order of [CallWith=X1|X2|X3|...]. Thus, in case of func4(...),
     155HTMLFoo::func3(ScriptArguments* arguments, ScriptCallStack* callstack, int a, int b) is called.
     156
    128157=== * [CheckAccessToNode](m,a) ===
    129158
     
    171200=== * [Deletable](a), [NotEnumerable](a), [V8ReadOnly](a) ===
    172201
    173  * [http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf The spec of ''[[''Writable'']]'', [[Enumerable]] and [[Configurable]] (8.6.1)]
     202 * [http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf The spec of [[Writable]], [[Enumerable]] and [[Configurable]] (8.6.1)]
    174203
    175204Summary: They control Writability, Enumerability and Configurability of attributes.