Changeset 203956 in webkit


Ignore:
Timestamp:
Jul 31, 2016 4:36:20 PM (8 years ago)
Author:
Chris Dumez
Message:

Drop [StrictTypeChecking] in cases where it is a no-op
https://bugs.webkit.org/show_bug.cgi?id=160387

Reviewed by Darin Adler.

Drop [StrictTypeChecking] in cases where it is a no-op. After r203949 & r203950,
[StrictTypeChecking] only has an impact when used on operation parameters of
string types and is currently used as a workaround for bugs in our overload
resolution algorithm.

  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/mediastream/RTCRtpSender.idl:
  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/TestTypedefs.idl:
  • html/canvas/ANGLEInstancedArrays.idl:
  • html/canvas/OESVertexArrayObject.idl:
  • html/canvas/WebGL2RenderingContext.idl:
  • html/canvas/WebGLDebugShaders.idl:
  • html/canvas/WebGLLoseContext.idl:
  • html/canvas/WebGLRenderingContextBase.idl:
  • svg/SVGAngle.idl:
  • svg/SVGColor.idl:
  • svg/SVGLength.idl:
  • svg/SVGLengthList.idl:
  • svg/SVGMatrix.idl:
  • svg/SVGNumberList.idl:
  • svg/SVGPaint.idl:
  • svg/SVGPathSegList.idl:
  • svg/SVGPoint.idl:
  • svg/SVGPointList.idl:
  • svg/SVGStringList.idl:
  • svg/SVGTransform.idl:
  • svg/SVGTransformList.idl:
Location:
trunk/Source/WebCore
Files:
29 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r203955 r203956  
     12016-07-31  Chris Dumez  <cdumez@apple.com>
     2
     3        Drop [StrictTypeChecking] in cases where it is a no-op
     4        https://bugs.webkit.org/show_bug.cgi?id=160387
     5
     6        Reviewed by Darin Adler.
     7
     8        Drop [StrictTypeChecking] in cases where it is a no-op. After r203949 & r203950,
     9        [StrictTypeChecking] only has an impact when used on operation parameters of
     10        string types and is currently used as a workaround for bugs in our overload
     11        resolution algorithm.
     12
     13        * Modules/mediastream/RTCPeerConnection.idl:
     14        * Modules/mediastream/RTCRtpSender.idl:
     15        * bindings/scripts/test/TestObj.idl:
     16        * bindings/scripts/test/TestTypedefs.idl:
     17        * html/canvas/ANGLEInstancedArrays.idl:
     18        * html/canvas/OESVertexArrayObject.idl:
     19        * html/canvas/WebGL2RenderingContext.idl:
     20        * html/canvas/WebGLDebugShaders.idl:
     21        * html/canvas/WebGLLoseContext.idl:
     22        * html/canvas/WebGLRenderingContextBase.idl:
     23        * svg/SVGAngle.idl:
     24        * svg/SVGColor.idl:
     25        * svg/SVGLength.idl:
     26        * svg/SVGLengthList.idl:
     27        * svg/SVGMatrix.idl:
     28        * svg/SVGNumberList.idl:
     29        * svg/SVGPaint.idl:
     30        * svg/SVGPathSegList.idl:
     31        * svg/SVGPoint.idl:
     32        * svg/SVGPointList.idl:
     33        * svg/SVGStringList.idl:
     34        * svg/SVGTransform.idl:
     35        * svg/SVGTransformList.idl:
     36
    1372016-07-31  Nan Wang  <n_wang@apple.com>
    238
  • trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl

    r202376 r203956  
    4646    sequence<RTCRtpTransceiver> getTransceivers();
    4747
    48     [PrivateIdentifier, PublicIdentifier, StrictTypeChecking, RaisesException] RTCRtpSender addTrack(MediaStreamTrack track, MediaStream... streams);
    49     [PrivateIdentifier, PublicIdentifier, StrictTypeChecking, RaisesException] void removeTrack(RTCRtpSender sender);
     48    [PrivateIdentifier, PublicIdentifier, RaisesException] RTCRtpSender addTrack(MediaStreamTrack track, MediaStream... streams);
     49    [PrivateIdentifier, PublicIdentifier, RaisesException] void removeTrack(RTCRtpSender sender);
    5050
    51     [StrictTypeChecking, RaisesException] RTCRtpTransceiver addTransceiver(MediaStreamTrack track, optional RTCRtpTransceiverInit init);
    52     [StrictTypeChecking, RaisesException] RTCRtpTransceiver addTransceiver(DOMString kind, optional RTCRtpTransceiverInit init);
     51    [RaisesException] RTCRtpTransceiver addTransceiver(MediaStreamTrack track, optional RTCRtpTransceiverInit init);
     52    [RaisesException] RTCRtpTransceiver addTransceiver(DOMString kind, optional RTCRtpTransceiverInit init);
    5353
    5454    // Legacy MediaSream-based API (implemented on top of the RTP Media API)
  • trunk/Source/WebCore/Modules/mediastream/RTCRtpSender.idl

    r202026 r203956  
    3434    readonly attribute MediaStreamTrack? track;
    3535
    36     [StrictTypeChecking, RaisesException] Promise replaceTrack(MediaStreamTrack withTrack);
     36    [RaisesException] Promise replaceTrack(MediaStreamTrack withTrack);
    3737};
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp

    r203951 r203956  
    19531953}
    19541954
    1955 gboolean webkit_dom_test_obj_strict_function(WebKitDOMTestObj* self, const gchar* str, gfloat a, glong b, GError** error)
    1956 {
    1957     WebCore::JSMainThreadNullState state;
    1958     g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), FALSE);
    1959     g_return_val_if_fail(str, FALSE);
    1960     g_return_val_if_fail(!error || !*error, FALSE);
    1961     WebCore::TestObj* item = WebKit::core(self);
    1962     WTF::String convertedStr = WTF::String::fromUTF8(str);
    1963     WebCore::ExceptionCode ec = 0;
    1964     gboolean result = item->strictFunction(convertedStr, a, b, ec);
    1965     if (ec) {
    1966         WebCore::ExceptionCodeDescription ecdesc(ec);
    1967         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
    1968     }
    1969     return result;
    1970 }
    1971 
    1972 gboolean webkit_dom_test_obj_strict_function_with_array(WebKitDOMTestObj* self, WebKitDOMTestObj* objArg, glong array, GError** error)
    1973 {
    1974     WebCore::JSMainThreadNullState state;
    1975     g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(self), FALSE);
    1976     g_return_val_if_fail(WEBKIT_DOM_IS_TEST_OBJ(objArg), FALSE);
    1977     g_return_val_if_fail(WEBKIT_DOM_IS_LONG[](array), FALSE);
    1978     g_return_val_if_fail(!error || !*error, FALSE);
    1979     WebCore::TestObj* item = WebKit::core(self);
    1980     WebCore::TestObj* convertedObjArg = WebKit::core(objArg);
    1981     WebCore::long[]* convertedArray = WebKit::core(array);
    1982     WebCore::ExceptionCode ec = 0;
    1983     gboolean result = item->strictFunctionWithArray(*convertedObjArg, array, ec);
    1984     if (ec) {
    1985         WebCore::ExceptionCodeDescription ecdesc(ec);
    1986         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
    1987     }
    1988     return result;
    1989 }
    1990 
    19911955void webkit_dom_test_obj_variadic_string_method(WebKitDOMTestObj* self, const gchar* head, ...)
    19921956{
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.h

    r203951 r203956  
    901901
    902902/**
    903  * webkit_dom_test_obj_strict_function:
    904  * @self: A #WebKitDOMTestObj
    905  * @str: A #gchar
    906  * @a: A #gfloat
    907  * @b: A #glong
    908  * @error: #GError
    909  *
    910  * Returns: A #gboolean
    911  *
    912  * Stability: Unstable
    913 **/
    914 WEBKIT_API gboolean
    915 webkit_dom_test_obj_strict_function(WebKitDOMTestObj* self, const gchar* str, gfloat a, glong b, GError** error);
    916 
    917 /**
    918  * webkit_dom_test_obj_strict_function_with_array:
    919  * @self: A #WebKitDOMTestObj
    920  * @objArg: A #WebKitDOMTestObj
    921  * @array: A #glong
    922  * @error: #GError
    923  *
    924  * Returns: A #gboolean
    925  *
    926  * Stability: Unstable
    927 **/
    928 WEBKIT_API gboolean
    929 webkit_dom_test_obj_strict_function_with_array(WebKitDOMTestObj* self, WebKitDOMTestObj* objArg, glong array, GError** error);
    930 
    931 /**
    932903 * webkit_dom_test_obj_variadic_string_method:
    933904 * @self: A #WebKitDOMTestObj
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp

    r203951 r203956  
    692692JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionImmutablePointFunction(JSC::ExecState*);
    693693JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionOrange(JSC::ExecState*);
    694 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionStrictFunction(JSC::ExecState*);
    695 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionStrictFunctionWithSequence(JSC::ExecState*);
    696 JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionStrictFunctionWithArray(JSC::ExecState*);
    697694JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionVariadicStringMethod(JSC::ExecState*);
    698695JSC::EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionVariadicDoubleMethod(JSC::ExecState*);
     
    12661263    { "immutablePointFunction", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionImmutablePointFunction), (intptr_t) (0) } },
    12671264    { "orange", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionOrange), (intptr_t) (0) } },
    1268     { "strictFunction", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionStrictFunction), (intptr_t) (3) } },
    1269     { "strictFunctionWithSequence", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionStrictFunctionWithSequence), (intptr_t) (2) } },
    1270     { "strictFunctionWithArray", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionStrictFunctionWithArray), (intptr_t) (2) } },
    12711265    { "variadicStringMethod", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionVariadicStringMethod), (intptr_t) (1) } },
    12721266    { "variadicDoubleMethod", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestObjPrototypeFunctionVariadicDoubleMethod), (intptr_t) (1) } },
     
    58725866}
    58735867
    5874 EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionStrictFunction(ExecState* state)
    5875 {
    5876     JSValue thisValue = state->thisValue();
    5877     auto castedThis = jsDynamicCast<JSTestObj*>(thisValue);
    5878     if (UNLIKELY(!castedThis))
    5879         return throwThisTypeError(*state, "TestObject", "strictFunction");
    5880     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
    5881     auto& impl = castedThis->wrapped();
    5882     if (UNLIKELY(state->argumentCount() < 3))
    5883         return throwVMError(state, createNotEnoughArgumentsError(state));
    5884     ExceptionCode ec = 0;
    5885     auto str = state->argument(0).toWTFString(state);
    5886     if (UNLIKELY(state->hadException()))
    5887         return JSValue::encode(jsUndefined());
    5888     auto a = convert<float>(*state, state->argument(1), ShouldAllowNonFinite::Yes);
    5889     if (UNLIKELY(state->hadException()))
    5890         return JSValue::encode(jsUndefined());
    5891     auto b = convert<int32_t>(*state, state->argument(2), NormalConversion);
    5892     if (UNLIKELY(state->hadException()))
    5893         return JSValue::encode(jsUndefined());
    5894     JSValue result = jsBoolean(impl.strictFunction(WTFMove(str), WTFMove(a), WTFMove(b), ec));
    5895 
    5896     setDOMException(state, ec);
    5897     return JSValue::encode(result);
    5898 }
    5899 
    5900 EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionStrictFunctionWithSequence(ExecState* state)
    5901 {
    5902     JSValue thisValue = state->thisValue();
    5903     auto castedThis = jsDynamicCast<JSTestObj*>(thisValue);
    5904     if (UNLIKELY(!castedThis))
    5905         return throwThisTypeError(*state, "TestObject", "strictFunctionWithSequence");
    5906     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
    5907     auto& impl = castedThis->wrapped();
    5908     if (UNLIKELY(state->argumentCount() < 2))
    5909         return throwVMError(state, createNotEnoughArgumentsError(state));
    5910     ExceptionCode ec = 0;
    5911     TestObj* objArg = nullptr;
    5912     if (!state->argument(0).isUndefinedOrNull()) {
    5913         objArg = JSTestObj::toWrapped(state->uncheckedArgument(0));
    5914         if (UNLIKELY(!objArg))
    5915             return throwArgumentTypeError(*state, 0, "objArg", "TestObject", "strictFunctionWithSequence", "TestObj");
    5916     }
    5917     auto a = toNativeArray<uint32_t>(*state, state->argument(1));
    5918     if (UNLIKELY(state->hadException()))
    5919         return JSValue::encode(jsUndefined());
    5920     JSValue result = jsBoolean(impl.strictFunctionWithSequence(WTFMove(objArg), WTFMove(a), ec));
    5921 
    5922     setDOMException(state, ec);
    5923     return JSValue::encode(result);
    5924 }
    5925 
    5926 EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionStrictFunctionWithArray(ExecState* state)
    5927 {
    5928     JSValue thisValue = state->thisValue();
    5929     auto castedThis = jsDynamicCast<JSTestObj*>(thisValue);
    5930     if (UNLIKELY(!castedThis))
    5931         return throwThisTypeError(*state, "TestObject", "strictFunctionWithArray");
    5932     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
    5933     auto& impl = castedThis->wrapped();
    5934     if (UNLIKELY(state->argumentCount() < 2))
    5935         return throwVMError(state, createNotEnoughArgumentsError(state));
    5936     ExceptionCode ec = 0;
    5937     auto objArg = JSTestObj::toWrapped(state->argument(0));
    5938     if (UNLIKELY(!objArg))
    5939         return throwArgumentTypeError(*state, 0, "objArg", "TestObject", "strictFunctionWithArray", "TestObj");
    5940     auto array = toNativeArray<int32_t>(*state, state->argument(1));
    5941     if (UNLIKELY(state->hadException()))
    5942         return JSValue::encode(jsUndefined());
    5943     JSValue result = jsBoolean(impl.strictFunctionWithArray(*objArg, WTFMove(array), ec));
    5944 
    5945     setDOMException(state, ec);
    5946     return JSValue::encode(result);
    5947 }
    5948 
    59495868EncodedJSValue JSC_HOST_CALL jsTestObjPrototypeFunctionVariadicStringMethod(ExecState* state)
    59505869{
  • trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.h

    r203951 r203956  
    214214- (DOMSVGPoint *)immutablePointFunction;
    215215- (void)orange;
    216 - (BOOL)strictFunction:(NSString *)str a:(float)a b:(int)b;
    217216- (void)any:(float)a b:(int)b;
    218217- (void)attachShadowRoot:(DOMTestDictionary *)init;
  • trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.mm

    r203951 r203956  
    16041604}
    16051605
    1606 - (BOOL)strictFunction:(NSString *)str a:(float)a b:(int)b
    1607 {
    1608     WebCore::JSMainThreadNullState state;
    1609     WebCore::ExceptionCode ec = 0;
    1610     BOOL result = IMPL->strictFunction(str, a, b, ec);
    1611     WebCore::raiseOnDOMError(ec);
    1612     return result;
    1613 }
    1614 
    16151606- (void)any:(float)a b:(int)b
    16161607{
  • trunk/Source/WebCore/bindings/scripts/test/TestObj.idl

    r203949 r203956  
    309309    [ImplementedAs=banana] void orange();
    310310    [ImplementedAs=blueberry] attribute long strawberry;
    311 
    312     [StrictTypeChecking, RaisesException] boolean strictFunction(DOMString str, unrestricted float a, long b);
    313 
    314     [StrictTypeChecking, RaisesException] boolean strictFunctionWithSequence(TestObj? objArg, sequence<unsigned long> a);
    315     [StrictTypeChecking, RaisesException] boolean strictFunctionWithArray(TestObj objArg, long[] array);
    316311
    317312    // ObjectiveC reserved words.
  • trunk/Source/WebCore/bindings/scripts/test/TestTypedefs.idl

    r199970 r203956  
    4141    static readonly attribute T TestSubObj;
    4242
    43     [StrictTypeChecking] void func(optional ARRAY_OF_LONGS x = []);
     43    void func(optional ARRAY_OF_LONGS x = []);
    4444
    4545    void setShadow(DOUBLE width, DOUBLE height, unrestricted float blur, [StrictTypeChecking] optional STRING color, optional DOUBLE alpha);
  • trunk/Source/WebCore/html/canvas/ANGLEInstancedArrays.idl

    r162565 r203956  
    3131    const GLenum VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE = 0x88FE;
    3232
    33     [StrictTypeChecking] void drawArraysInstancedANGLE(unsigned long mode, long first, long count, long primcount);
    34     [StrictTypeChecking] void drawElementsInstancedANGLE(unsigned long mode, long count, unsigned long type, long long offset, long primcount);
    35     [StrictTypeChecking] void vertexAttribDivisorANGLE(unsigned long index, unsigned long divisor);
     33    void drawArraysInstancedANGLE(unsigned long mode, long first, long count, long primcount);
     34    void drawElementsInstancedANGLE(unsigned long mode, long count, unsigned long type, long long offset, long primcount);
     35    void vertexAttribDivisorANGLE(unsigned long index, unsigned long divisor);
    3636};
  • trunk/Source/WebCore/html/canvas/OESVertexArrayObject.idl

    r200299 r203956  
    3232    const unsigned long VERTEX_ARRAY_BINDING_OES = 0x85B5;
    3333
    34     [StrictTypeChecking] WebGLVertexArrayObjectOES createVertexArrayOES();
    35     [StrictTypeChecking] void deleteVertexArrayOES(optional WebGLVertexArrayObjectOES? arrayObject = null);
    36     [StrictTypeChecking] boolean isVertexArrayOES(optional WebGLVertexArrayObjectOES? arrayObject = null);
    37     [StrictTypeChecking, RaisesException] void bindVertexArrayOES(optional WebGLVertexArrayObjectOES? arrayObject = null);
     34    WebGLVertexArrayObjectOES createVertexArrayOES();
     35    void deleteVertexArrayOES(optional WebGLVertexArrayObjectOES? arrayObject = null);
     36    boolean isVertexArrayOES(optional WebGLVertexArrayObjectOES? arrayObject = null);
     37    [RaisesException] void bindVertexArrayOES(optional WebGLVertexArrayObjectOES? arrayObject = null);
    3838};
  • trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.idl

    r200298 r203956  
    333333
    334334    /* Buffer objects */
    335     [StrictTypeChecking] void copyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
     335    void copyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
    336336    // MapBufferRange, in particular its read-only and write-only modes,
    337337    // can not be exposed safely to JavaScript. GetBufferSubData
    338338    // replaces it for the purpose of fetching data back from the GPU.
    339     [StrictTypeChecking] void getBufferSubData(GLenum target, GLintptr offset, ArrayBuffer? returnedData);
     339    void getBufferSubData(GLenum target, GLintptr offset, ArrayBuffer? returnedData);
    340340
    341341    /* Framebuffer objects */
    342     [StrictTypeChecking] void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
    343     [StrictTypeChecking] void framebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
    344     [StrictTypeChecking, Custom] any getInternalformatParameter(GLenum target, GLenum internalformat, GLenum pname);
    345     [StrictTypeChecking] void invalidateFramebuffer(GLenum target, sequence<GLenum> attachments);
    346     [StrictTypeChecking] void invalidateSubFramebuffer(GLenum target, sequence<GLenum> attachments, GLint x, GLint y, GLsizei width, GLsizei height);
    347     [StrictTypeChecking] void readBuffer(GLenum src);
     342    void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
     343    void framebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
     344    [Custom] any getInternalformatParameter(GLenum target, GLenum internalformat, GLenum pname);
     345    void invalidateFramebuffer(GLenum target, sequence<GLenum> attachments);
     346    void invalidateSubFramebuffer(GLenum target, sequence<GLenum> attachments, GLint x, GLint y, GLsizei width, GLsizei height);
     347    void readBuffer(GLenum src);
    348348
    349349    /* Renderbuffer objects */
    350     [StrictTypeChecking] void renderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
     350    void renderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
    351351
    352352    /* Texture objects */
    353     [StrictTypeChecking] void texStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
    354     [StrictTypeChecking] void texStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
    355     [StrictTypeChecking] void texImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
    356     [StrictTypeChecking] void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, ArrayBufferView? pixels);
    357     [StrictTypeChecking] void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, ImageData? source);
    358     [StrictTypeChecking] void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, HTMLImageElement? source);
    359     [StrictTypeChecking] void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, HTMLCanvasElement? source);
    360     [StrictTypeChecking] void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, HTMLVideoElement? source);
    361     [StrictTypeChecking] void copyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
    362     [StrictTypeChecking] void compressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, ArrayBufferView? data);
    363     [StrictTypeChecking] void compressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, ArrayBufferView? data);
     353    void texStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
     354    void texStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
     355    void texImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
     356    void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, ArrayBufferView? pixels);
     357    void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, ImageData? source);
     358    void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, HTMLImageElement? source);
     359    void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, HTMLCanvasElement? source);
     360    void texSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLenum format, GLenum type, HTMLVideoElement? source);
     361    void copyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
     362    void compressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, ArrayBufferView? data);
     363    void compressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, ArrayBufferView? data);
    364364
    365365    /* Programs and shaders */
    366     [StrictTypeChecking] GLint getFragDataLocation(WebGLProgram? program, DOMString name);
     366    GLint getFragDataLocation(WebGLProgram? program, DOMString name);
    367367
    368368    /* Uniforms and attributes */
    369     [StrictTypeChecking] void uniform1ui(WebGLUniformLocation? location, GLuint v0);
    370     [StrictTypeChecking] void uniform2ui(WebGLUniformLocation? location, GLuint v0, GLuint v1);
    371     [StrictTypeChecking] void uniform3ui(WebGLUniformLocation? location, GLuint v0, GLuint v1, GLuint v2);
    372     [StrictTypeChecking] void uniform4ui(WebGLUniformLocation? location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
    373     [StrictTypeChecking] void uniform1uiv(WebGLUniformLocation? location, Uint32Array? value);
    374     [StrictTypeChecking] void uniform2uiv(WebGLUniformLocation? location, Uint32Array? value);
    375     [StrictTypeChecking] void uniform3uiv(WebGLUniformLocation? location, Uint32Array? value);
    376     [StrictTypeChecking] void uniform4uiv(WebGLUniformLocation? location, Uint32Array? value);
    377     [StrictTypeChecking] void uniformMatrix2x3fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
    378     [StrictTypeChecking] void uniformMatrix3x2fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
    379     [StrictTypeChecking] void uniformMatrix2x4fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
    380     [StrictTypeChecking] void uniformMatrix4x2fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
    381     [StrictTypeChecking] void uniformMatrix3x4fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
    382     [StrictTypeChecking] void uniformMatrix4x3fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
    383     [StrictTypeChecking] void vertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
    384     [StrictTypeChecking] void vertexAttribI4iv(GLuint index, Int32Array? v);
    385     [StrictTypeChecking] void vertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
    386     [StrictTypeChecking] void vertexAttribI4uiv(GLuint index, Uint32Array? v);
    387     [StrictTypeChecking] void vertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
     369    void uniform1ui(WebGLUniformLocation? location, GLuint v0);
     370    void uniform2ui(WebGLUniformLocation? location, GLuint v0, GLuint v1);
     371    void uniform3ui(WebGLUniformLocation? location, GLuint v0, GLuint v1, GLuint v2);
     372    void uniform4ui(WebGLUniformLocation? location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
     373    void uniform1uiv(WebGLUniformLocation? location, Uint32Array? value);
     374    void uniform2uiv(WebGLUniformLocation? location, Uint32Array? value);
     375    void uniform3uiv(WebGLUniformLocation? location, Uint32Array? value);
     376    void uniform4uiv(WebGLUniformLocation? location, Uint32Array? value);
     377    void uniformMatrix2x3fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
     378    void uniformMatrix3x2fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
     379    void uniformMatrix2x4fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
     380    void uniformMatrix4x2fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
     381    void uniformMatrix3x4fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
     382    void uniformMatrix4x3fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array? value);
     383    void vertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
     384    void vertexAttribI4iv(GLuint index, Int32Array? v);
     385    void vertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
     386    void vertexAttribI4uiv(GLuint index, Uint32Array? v);
     387    void vertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
    388388
    389389    /* Writing to the drawing buffer */
    390     [StrictTypeChecking] void vertexAttribDivisor(GLuint index, GLuint divisor);
    391     [StrictTypeChecking] void drawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount);
    392     [StrictTypeChecking] void drawElementsInstanced(GLenum mode, GLsizei count, GLenum type, GLintptr offset, GLsizei instanceCount);
    393     [StrictTypeChecking] void drawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLintptr offset);
     390    void vertexAttribDivisor(GLuint index, GLuint divisor);
     391    void drawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount);
     392    void drawElementsInstanced(GLenum mode, GLsizei count, GLenum type, GLintptr offset, GLsizei instanceCount);
     393    void drawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLintptr offset);
    394394
    395395    /* Multiple Render Targets */
    396     [StrictTypeChecking] void drawBuffers(sequence<GLenum> buffers);
    397     [StrictTypeChecking] void clearBufferiv(GLenum buffer, GLint drawbuffer, Int32Array? value);
    398     [StrictTypeChecking] void clearBufferuiv(GLenum buffer, GLint drawbuffer, Uint32Array? value);
    399     [StrictTypeChecking] void clearBufferfv(GLenum buffer, GLint drawbuffer, Float32Array? value);
    400     [StrictTypeChecking] void clearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
     396    void drawBuffers(sequence<GLenum> buffers);
     397    void clearBufferiv(GLenum buffer, GLint drawbuffer, Int32Array? value);
     398    void clearBufferuiv(GLenum buffer, GLint drawbuffer, Uint32Array? value);
     399    void clearBufferfv(GLenum buffer, GLint drawbuffer, Float32Array? value);
     400    void clearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
    401401
    402402    /* Query Objects */
    403     [StrictTypeChecking] WebGLQuery createQuery();
    404     [StrictTypeChecking] void deleteQuery(WebGLQuery? query);
    405     [StrictTypeChecking] GLboolean isQuery(WebGLQuery? query);
    406     [StrictTypeChecking] void beginQuery(GLenum target, WebGLQuery? query);
    407     [StrictTypeChecking] void endQuery(GLenum target);
    408     [StrictTypeChecking] WebGLQuery getQuery(GLenum target, GLenum pname);
    409     [StrictTypeChecking, Custom] any getQueryParameter(WebGLQuery? query, GLenum pname);
     403    WebGLQuery createQuery();
     404    void deleteQuery(WebGLQuery? query);
     405    GLboolean isQuery(WebGLQuery? query);
     406    void beginQuery(GLenum target, WebGLQuery? query);
     407    void endQuery(GLenum target);
     408    WebGLQuery getQuery(GLenum target, GLenum pname);
     409    [Custom] any getQueryParameter(WebGLQuery? query, GLenum pname);
    410410
    411411    /* Sampler Objects */
    412     [StrictTypeChecking] WebGLSampler createSampler();
    413     [StrictTypeChecking] void deleteSampler(WebGLSampler? sampler);
    414     [StrictTypeChecking] GLboolean isSampler(WebGLSampler? sampler);
    415     [StrictTypeChecking] void bindSampler(GLuint unit, WebGLSampler? sampler);
    416     [StrictTypeChecking] void samplerParameteri(WebGLSampler? sampler, GLenum pname, GLint param);
    417     [StrictTypeChecking] void samplerParameterf(WebGLSampler? sampler, GLenum pname, GLfloat param);
    418     [StrictTypeChecking, Custom] any getSamplerParameter(WebGLSampler? sampler, GLenum pname);
     412    WebGLSampler createSampler();
     413    void deleteSampler(WebGLSampler? sampler);
     414    GLboolean isSampler(WebGLSampler? sampler);
     415    void bindSampler(GLuint unit, WebGLSampler? sampler);
     416    void samplerParameteri(WebGLSampler? sampler, GLenum pname, GLint param);
     417    void samplerParameterf(WebGLSampler? sampler, GLenum pname, GLfloat param);
     418    [Custom] any getSamplerParameter(WebGLSampler? sampler, GLenum pname);
    419419
    420420    /* Sync objects */
    421     [StrictTypeChecking] WebGLSync fenceSync(GLenum condition, GLbitfield flags);
    422     [StrictTypeChecking] GLboolean isSync(WebGLSync? sync);
    423     [StrictTypeChecking] void deleteSync(WebGLSync? sync);
    424     [StrictTypeChecking] GLenum clientWaitSync(WebGLSync? sync, GLbitfield flags, GLuint64 timeout);
    425     [StrictTypeChecking] void waitSync(WebGLSync? sync, GLbitfield flags, GLuint64 timeout);
    426     [StrictTypeChecking, Custom] any getSyncParameter(WebGLSync? sync, GLenum pname);
     421    WebGLSync fenceSync(GLenum condition, GLbitfield flags);
     422    GLboolean isSync(WebGLSync? sync);
     423    void deleteSync(WebGLSync? sync);
     424    GLenum clientWaitSync(WebGLSync? sync, GLbitfield flags, GLuint64 timeout);
     425    void waitSync(WebGLSync? sync, GLbitfield flags, GLuint64 timeout);
     426    [Custom] any getSyncParameter(WebGLSync? sync, GLenum pname);
    427427
    428428    /* Transform Feedback */
    429     [StrictTypeChecking] WebGLTransformFeedback createTransformFeedback();
    430     [StrictTypeChecking] void deleteTransformFeedback(WebGLTransformFeedback? id);
    431     [StrictTypeChecking] GLboolean isTransformFeedback(WebGLTransformFeedback? id);
    432     [StrictTypeChecking] void bindTransformFeedback(GLenum target, WebGLTransformFeedback? id);
    433     [StrictTypeChecking] void beginTransformFeedback(GLenum primitiveMode);
    434     [StrictTypeChecking] void endTransformFeedback();
    435     [StrictTypeChecking] void transformFeedbackVaryings(WebGLProgram? program, sequence<DOMString> varyings, GLenum bufferMode);
    436     [StrictTypeChecking] WebGLActiveInfo getTransformFeedbackVarying(WebGLProgram? program, GLuint index);
    437     [StrictTypeChecking] void pauseTransformFeedback();
    438     [StrictTypeChecking] void resumeTransformFeedback();
     429    WebGLTransformFeedback createTransformFeedback();
     430    void deleteTransformFeedback(WebGLTransformFeedback? id);
     431    GLboolean isTransformFeedback(WebGLTransformFeedback? id);
     432    void bindTransformFeedback(GLenum target, WebGLTransformFeedback? id);
     433    void beginTransformFeedback(GLenum primitiveMode);
     434    void endTransformFeedback();
     435    void transformFeedbackVaryings(WebGLProgram? program, sequence<DOMString> varyings, GLenum bufferMode);
     436    WebGLActiveInfo getTransformFeedbackVarying(WebGLProgram? program, GLuint index);
     437    void pauseTransformFeedback();
     438    void resumeTransformFeedback();
    439439
    440440    /* Uniform Buffer Objects and Transform Feedback Buffers */
    441     [StrictTypeChecking] void bindBufferBase(GLenum target, GLuint index, WebGLBuffer? buffer);
    442     [StrictTypeChecking] void bindBufferRange(GLenum target, GLuint index, WebGLBuffer? buffer, GLintptr offset, GLsizeiptr size);
    443     [StrictTypeChecking, Custom] any getIndexedParameter(GLenum target, GLuint index);
    444     [StrictTypeChecking] Uint32Array getUniformIndices(WebGLProgram? program, sequence<DOMString> uniformNames);
    445     [StrictTypeChecking] Int32Array getActiveUniforms(WebGLProgram? program, Uint32Array? uniformIndices, GLenum pname);
    446     [StrictTypeChecking] GLuint getUniformBlockIndex(WebGLProgram? program, DOMString uniformBlockName);
    447     [StrictTypeChecking, Custom] any getActiveUniformBlockParameter(WebGLProgram? program, GLuint uniformBlockIndex, GLenum pname);
    448     [StrictTypeChecking, Custom] any getActiveUniformBlockName(WebGLProgram? program, GLuint uniformBlockIndex);
    449     [StrictTypeChecking] void uniformBlockBinding(WebGLProgram? program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
     441    void bindBufferBase(GLenum target, GLuint index, WebGLBuffer? buffer);
     442    void bindBufferRange(GLenum target, GLuint index, WebGLBuffer? buffer, GLintptr offset, GLsizeiptr size);
     443    [Custom] any getIndexedParameter(GLenum target, GLuint index);
     444    Uint32Array getUniformIndices(WebGLProgram? program, sequence<DOMString> uniformNames);
     445    Int32Array getActiveUniforms(WebGLProgram? program, Uint32Array? uniformIndices, GLenum pname);
     446    GLuint getUniformBlockIndex(WebGLProgram? program, DOMString uniformBlockName);
     447    [Custom] any getActiveUniformBlockParameter(WebGLProgram? program, GLuint uniformBlockIndex, GLenum pname);
     448    [Custom] any getActiveUniformBlockName(WebGLProgram? program, GLuint uniformBlockIndex);
     449    void uniformBlockBinding(WebGLProgram? program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
    450450
    451451    /* Vertex Array Objects */
    452     [StrictTypeChecking] WebGLVertexArrayObject createVertexArray();
    453     [StrictTypeChecking] void deleteVertexArray(WebGLVertexArrayObject? vertexArray);
    454     [StrictTypeChecking] GLboolean isVertexArray(WebGLVertexArrayObject? vertexArray);
    455     [StrictTypeChecking] void bindVertexArray(WebGLVertexArrayObject? vertexArray);
     452    WebGLVertexArrayObject createVertexArray();
     453    void deleteVertexArray(WebGLVertexArrayObject? vertexArray);
     454    GLboolean isVertexArray(WebGLVertexArrayObject? vertexArray);
     455    void bindVertexArray(WebGLVertexArrayObject? vertexArray);
    456456};
  • trunk/Source/WebCore/html/canvas/WebGLDebugShaders.idl

    r199776 r203956  
    2929    NoInterfaceObject,
    3030] interface WebGLDebugShaders {
    31     [StrictTypeChecking] DOMString? getTranslatedShaderSource(WebGLShader? shader); // FIXME: The return value and the parameter should not be nullable.
     31    DOMString? getTranslatedShaderSource(WebGLShader? shader); // FIXME: The return value and the parameter should not be nullable.
    3232};
  • trunk/Source/WebCore/html/canvas/WebGLLoseContext.idl

    r159061 r203956  
    2929    GenerateIsReachable=ImplWebGLRenderingContext,
    3030] interface WebGLLoseContext {
    31     [StrictTypeChecking] void loseContext();
    32     [StrictTypeChecking] void restoreContext();
     31    void loseContext();
     32    void restoreContext();
    3333};
  • trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.idl

    r200298 r203956  
    468468    readonly attribute GLsizei drawingBufferHeight;
    469469
    470     [StrictTypeChecking, RaisesException] void activeTexture(GLenum texture);
    471     [StrictTypeChecking, RaisesException] void attachShader(WebGLProgram? program, WebGLShader? shader);
    472     [StrictTypeChecking, RaisesException] void bindAttribLocation(WebGLProgram? program, GLuint index, DOMString name);
    473     [StrictTypeChecking, RaisesException] void bindBuffer(GLenum target, WebGLBuffer? buffer);
    474     [StrictTypeChecking, RaisesException] void bindFramebuffer(GLenum target, WebGLFramebuffer? framebuffer);
    475     [StrictTypeChecking, RaisesException] void bindRenderbuffer(GLenum target, WebGLRenderbuffer? renderbuffer);
    476     [StrictTypeChecking, RaisesException] void bindTexture(GLenum target, WebGLTexture? texture);
    477     [StrictTypeChecking] void blendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
    478     [StrictTypeChecking] void blendEquation(GLenum mode);
    479     [StrictTypeChecking] void blendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
    480     [StrictTypeChecking] void blendFunc(GLenum sfactor, GLenum dfactor);
    481     [StrictTypeChecking] void blendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
    482     [StrictTypeChecking, RaisesException] void bufferData(GLenum target, ArrayBuffer data, GLenum usage);
    483     [StrictTypeChecking, RaisesException] void bufferData(GLenum target, ArrayBufferView data, GLenum usage);
    484     [StrictTypeChecking, RaisesException] void bufferData(GLenum target, GLsizeiptr size, GLenum usage);
    485     [StrictTypeChecking, RaisesException] void bufferSubData(GLenum target, GLintptr offset, ArrayBuffer? data);
    486     [StrictTypeChecking, RaisesException] void bufferSubData(GLenum target, GLintptr offset, ArrayBufferView? data);
    487 
    488     [StrictTypeChecking] GLenum checkFramebufferStatus(GLenum target);
    489     [StrictTypeChecking] void clear(GLbitfield mask);
    490     [StrictTypeChecking] void clearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
    491     [StrictTypeChecking] void clearDepth(GLclampf depth);
    492     [StrictTypeChecking] void clearStencil(GLint s);
    493     [StrictTypeChecking] void colorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
    494     [StrictTypeChecking, RaisesException] void compileShader(WebGLShader? shader);
    495 
    496     [StrictTypeChecking] void compressedTexImage2D(GLenum target, GLint level, GLenum internalformat,
     470    [RaisesException] void activeTexture(GLenum texture);
     471    [RaisesException] void attachShader(WebGLProgram? program, WebGLShader? shader);
     472    [RaisesException] void bindAttribLocation(WebGLProgram? program, GLuint index, DOMString name);
     473    [RaisesException] void bindBuffer(GLenum target, WebGLBuffer? buffer);
     474    [RaisesException] void bindFramebuffer(GLenum target, WebGLFramebuffer? framebuffer);
     475    [RaisesException] void bindRenderbuffer(GLenum target, WebGLRenderbuffer? renderbuffer);
     476    [RaisesException] void bindTexture(GLenum target, WebGLTexture? texture);
     477    void blendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
     478    void blendEquation(GLenum mode);
     479    void blendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
     480    void blendFunc(GLenum sfactor, GLenum dfactor);
     481    void blendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
     482    [RaisesException] void bufferData(GLenum target, ArrayBuffer data, GLenum usage);
     483    [RaisesException] void bufferData(GLenum target, ArrayBufferView data, GLenum usage);
     484    [RaisesException] void bufferData(GLenum target, GLsizeiptr size, GLenum usage);
     485    [RaisesException] void bufferSubData(GLenum target, GLintptr offset, ArrayBuffer? data);
     486    [RaisesException] void bufferSubData(GLenum target, GLintptr offset, ArrayBufferView? data);
     487
     488    GLenum checkFramebufferStatus(GLenum target);
     489    void clear(GLbitfield mask);
     490    void clearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
     491    void clearDepth(GLclampf depth);
     492    void clearStencil(GLint s);
     493    void colorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
     494    [RaisesException] void compileShader(WebGLShader? shader);
     495
     496    void compressedTexImage2D(GLenum target, GLint level, GLenum internalformat,
    497497    GLsizei width, GLsizei height, GLint border, ArrayBufferView data);
    498     [StrictTypeChecking] void compressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
     498    void compressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
    499499   GLsizei width, GLsizei height, GLenum format, ArrayBufferView data);
    500500   
    501     [StrictTypeChecking] void copyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
    502     [StrictTypeChecking] void copyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
    503 
    504     [StrictTypeChecking] WebGLBuffer createBuffer();
    505     [StrictTypeChecking] WebGLFramebuffer createFramebuffer();
    506     [StrictTypeChecking] WebGLProgram createProgram();
    507     [StrictTypeChecking] WebGLRenderbuffer createRenderbuffer();
    508     [StrictTypeChecking, RaisesException] WebGLShader createShader(GLenum type);
    509     [StrictTypeChecking] WebGLTexture createTexture();
    510 
    511     [StrictTypeChecking] void cullFace(GLenum mode);
    512 
    513     [StrictTypeChecking] void deleteBuffer(WebGLBuffer? buffer);
    514     [StrictTypeChecking] void deleteFramebuffer(WebGLFramebuffer? framebuffer);
    515     [StrictTypeChecking] void deleteProgram(WebGLProgram? program);
    516     [StrictTypeChecking] void deleteRenderbuffer(WebGLRenderbuffer? renderbuffer);
    517     [StrictTypeChecking] void deleteShader(WebGLShader? shader);
    518     [StrictTypeChecking] void deleteTexture(WebGLTexture? texture);
    519 
    520     [StrictTypeChecking] void depthFunc(GLenum func);
    521     [StrictTypeChecking] void depthMask(GLboolean flag);
    522     [StrictTypeChecking] void depthRange(GLclampf zNear, GLclampf zFar);
    523     [StrictTypeChecking, RaisesException] void detachShader(WebGLProgram? program, WebGLShader? shader);
    524     [StrictTypeChecking] void disable(GLenum cap);
    525     [StrictTypeChecking, RaisesException] void disableVertexAttribArray(GLuint index);
    526     [StrictTypeChecking, RaisesException] void drawArrays(GLenum mode, GLint first, GLsizei count);
    527     [StrictTypeChecking, RaisesException] void drawElements(GLenum mode, GLsizei count, GLenum type, GLintptr offset);
    528 
    529     [StrictTypeChecking] void enable(GLenum cap);
    530     [StrictTypeChecking, RaisesException] void enableVertexAttribArray(GLuint index);
    531     [StrictTypeChecking] void finish();
    532     [StrictTypeChecking] void flush();
    533     [StrictTypeChecking, RaisesException] void framebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, WebGLRenderbuffer? renderbuffer);
    534     [StrictTypeChecking, RaisesException] void framebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, WebGLTexture? texture, GLint level);
    535     [StrictTypeChecking] void frontFace(GLenum mode);
    536     [StrictTypeChecking] void generateMipmap(GLenum target);
     501    void copyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
     502    void copyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
     503
     504    WebGLBuffer createBuffer();
     505    WebGLFramebuffer createFramebuffer();
     506    WebGLProgram createProgram();
     507    WebGLRenderbuffer createRenderbuffer();
     508    [RaisesException] WebGLShader createShader(GLenum type);
     509    WebGLTexture createTexture();
     510
     511    void cullFace(GLenum mode);
     512
     513    void deleteBuffer(WebGLBuffer? buffer);
     514    void deleteFramebuffer(WebGLFramebuffer? framebuffer);
     515    void deleteProgram(WebGLProgram? program);
     516    void deleteRenderbuffer(WebGLRenderbuffer? renderbuffer);
     517    void deleteShader(WebGLShader? shader);
     518    void deleteTexture(WebGLTexture? texture);
     519
     520    void depthFunc(GLenum func);
     521    void depthMask(GLboolean flag);
     522    void depthRange(GLclampf zNear, GLclampf zFar);
     523    [RaisesException] void detachShader(WebGLProgram? program, WebGLShader? shader);
     524    void disable(GLenum cap);
     525    [RaisesException] void disableVertexAttribArray(GLuint index);
     526    [RaisesException] void drawArrays(GLenum mode, GLint first, GLsizei count);
     527    [RaisesException] void drawElements(GLenum mode, GLsizei count, GLenum type, GLintptr offset);
     528
     529    void enable(GLenum cap);
     530    [RaisesException] void enableVertexAttribArray(GLuint index);
     531    void finish();
     532    void flush();
     533    [RaisesException] void framebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, WebGLRenderbuffer? renderbuffer);
     534    [RaisesException] void framebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, WebGLTexture? texture, GLint level);
     535    void frontFace(GLenum mode);
     536    void generateMipmap(GLenum target);
    537537   
    538     [StrictTypeChecking, RaisesException] WebGLActiveInfo getActiveAttrib(WebGLProgram? program, GLuint index);
    539     [StrictTypeChecking, RaisesException] WebGLActiveInfo getActiveUniform(WebGLProgram? program, GLuint index);
    540 
    541     [StrictTypeChecking, Custom, RaisesException] void getAttachedShaders(WebGLProgram? program);
    542 
    543     [StrictTypeChecking] GLint getAttribLocation(WebGLProgram? program, DOMString name);
    544 
    545     [StrictTypeChecking, Custom] any getBufferParameter(GLenum target, GLenum pname);
    546 
    547     [StrictTypeChecking] WebGLContextAttributes getContextAttributes();
    548 
    549     [StrictTypeChecking] GLenum getError();
     538    [RaisesException] WebGLActiveInfo getActiveAttrib(WebGLProgram? program, GLuint index);
     539    [RaisesException] WebGLActiveInfo getActiveUniform(WebGLProgram? program, GLuint index);
     540
     541    [Custom, RaisesException] void getAttachedShaders(WebGLProgram? program);
     542
     543    GLint getAttribLocation(WebGLProgram? program, DOMString name);
     544
     545    [Custom] any getBufferParameter(GLenum target, GLenum pname);
     546
     547    WebGLContextAttributes getContextAttributes();
     548
     549    GLenum getError();
    550550
    551551    // object getExtension(DOMString name);
    552     [StrictTypeChecking, Custom] any getExtension(DOMString name);
    553 
    554     [StrictTypeChecking, Custom, RaisesException] any getFramebufferAttachmentParameter(GLenum target, GLenum attachment, GLenum pname);
    555     [StrictTypeChecking, Custom, RaisesException] any getParameter(GLenum pname);
    556     [StrictTypeChecking, Custom, RaisesException] any getProgramParameter(WebGLProgram? program, GLenum pname);
    557     [StrictTypeChecking, RaisesException] DOMString? getProgramInfoLog(WebGLProgram? program);
    558     [StrictTypeChecking, Custom, RaisesException] any getRenderbufferParameter(GLenum target, GLenum pname);
    559     [StrictTypeChecking, Custom, RaisesException] any getShaderParameter(WebGLShader? shader, GLenum pname);
    560 
    561     [StrictTypeChecking, RaisesException] DOMString? getShaderInfoLog(WebGLShader? shader);
    562 
    563     [StrictTypeChecking, RaisesException] WebGLShaderPrecisionFormat getShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype);
    564 
    565     [StrictTypeChecking, RaisesException] DOMString? getShaderSource(WebGLShader? shader);
    566 
    567     [StrictTypeChecking, Custom] sequence<DOMString> getSupportedExtensions();
    568 
    569     [StrictTypeChecking, Custom, RaisesException] any getTexParameter(GLenum target, GLenum pname);
    570 
    571     [StrictTypeChecking, Custom, RaisesException] any getUniform(WebGLProgram? program, WebGLUniformLocation? location);
    572 
    573     [StrictTypeChecking, RaisesException] WebGLUniformLocation getUniformLocation(WebGLProgram? program, DOMString name);
    574 
    575     [StrictTypeChecking, Custom, RaisesException] any getVertexAttrib(GLuint index, GLenum pname);
    576 
    577     [StrictTypeChecking] GLsizeiptr getVertexAttribOffset(GLuint index, GLenum pname);
    578 
    579     [StrictTypeChecking] void hint(GLenum target, GLenum mode);
    580     [StrictTypeChecking] GLboolean isBuffer(WebGLBuffer? buffer);
    581     [StrictTypeChecking] GLboolean isContextLost();
    582     [StrictTypeChecking] GLboolean isEnabled(GLenum cap);
    583     [StrictTypeChecking] GLboolean isFramebuffer(WebGLFramebuffer? framebuffer);
    584     [StrictTypeChecking] GLboolean isProgram(WebGLProgram? program);
    585     [StrictTypeChecking] GLboolean isRenderbuffer(WebGLRenderbuffer? renderbuffer);
    586     [StrictTypeChecking] GLboolean isShader(WebGLShader? shader);
    587     [StrictTypeChecking] GLboolean isTexture(WebGLTexture? texture);
    588     [StrictTypeChecking] void lineWidth(GLfloat width);
    589     [StrictTypeChecking, RaisesException] void linkProgram(WebGLProgram? program);
    590     [StrictTypeChecking] void pixelStorei(GLenum pname, GLint param);
    591     [StrictTypeChecking] void polygonOffset(GLfloat factor, GLfloat units);
    592 
    593     [StrictTypeChecking, RaisesException] void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, ArrayBufferView pixels);
     552    [Custom] any getExtension(DOMString name);
     553
     554    [Custom, RaisesException] any getFramebufferAttachmentParameter(GLenum target, GLenum attachment, GLenum pname);
     555    [Custom, RaisesException] any getParameter(GLenum pname);
     556    [Custom, RaisesException] any getProgramParameter(WebGLProgram? program, GLenum pname);
     557    [RaisesException] DOMString? getProgramInfoLog(WebGLProgram? program);
     558    [Custom, RaisesException] any getRenderbufferParameter(GLenum target, GLenum pname);
     559    [Custom, RaisesException] any getShaderParameter(WebGLShader? shader, GLenum pname);
     560
     561    [RaisesException] DOMString? getShaderInfoLog(WebGLShader? shader);
     562
     563    [RaisesException] WebGLShaderPrecisionFormat getShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype);
     564
     565    [RaisesException] DOMString? getShaderSource(WebGLShader? shader);
     566
     567    [Custom] sequence<DOMString> getSupportedExtensions();
     568
     569    [Custom, RaisesException] any getTexParameter(GLenum target, GLenum pname);
     570
     571    [Custom, RaisesException] any getUniform(WebGLProgram? program, WebGLUniformLocation? location);
     572
     573    [RaisesException] WebGLUniformLocation getUniformLocation(WebGLProgram? program, DOMString name);
     574
     575    [Custom, RaisesException] any getVertexAttrib(GLuint index, GLenum pname);
     576
     577    GLsizeiptr getVertexAttribOffset(GLuint index, GLenum pname);
     578
     579    void hint(GLenum target, GLenum mode);
     580    GLboolean isBuffer(WebGLBuffer? buffer);
     581    GLboolean isContextLost();
     582    GLboolean isEnabled(GLenum cap);
     583    GLboolean isFramebuffer(WebGLFramebuffer? framebuffer);
     584    GLboolean isProgram(WebGLProgram? program);
     585    GLboolean isRenderbuffer(WebGLRenderbuffer? renderbuffer);
     586    GLboolean isShader(WebGLShader? shader);
     587    GLboolean isTexture(WebGLTexture? texture);
     588    void lineWidth(GLfloat width);
     589    [RaisesException] void linkProgram(WebGLProgram? program);
     590    void pixelStorei(GLenum pname, GLint param);
     591    void polygonOffset(GLfloat factor, GLfloat units);
     592
     593    [RaisesException] void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, ArrayBufferView pixels);
    594594   
    595     [StrictTypeChecking] void releaseShaderCompiler();
    596     [StrictTypeChecking] void renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
    597     [StrictTypeChecking] void sampleCoverage(GLclampf value, GLboolean invert);
    598     [StrictTypeChecking] void scissor(GLint x, GLint y, GLsizei width, GLsizei height);
    599     [StrictTypeChecking, RaisesException] void shaderSource(WebGLShader? shader, DOMString string);
    600     [StrictTypeChecking] void stencilFunc(GLenum func, GLint ref, GLuint mask);
    601     [StrictTypeChecking] void stencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
    602     [StrictTypeChecking] void stencilMask(GLuint mask);
    603     [StrictTypeChecking] void stencilMaskSeparate(GLenum face, GLuint mask);
    604     [StrictTypeChecking] void stencilOp(GLenum fail, GLenum zfail, GLenum zpass);
    605     [StrictTypeChecking] void stencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
    606 
    607     [StrictTypeChecking] void texParameterf(GLenum target, GLenum pname, GLfloat param);
    608     [StrictTypeChecking] void texParameteri(GLenum target, GLenum pname, GLint param);
     595    void releaseShaderCompiler();
     596    void renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
     597    void sampleCoverage(GLclampf value, GLboolean invert);
     598    void scissor(GLint x, GLint y, GLsizei width, GLsizei height);
     599    [RaisesException] void shaderSource(WebGLShader? shader, DOMString string);
     600    void stencilFunc(GLenum func, GLint ref, GLuint mask);
     601    void stencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
     602    void stencilMask(GLuint mask);
     603    void stencilMaskSeparate(GLenum face, GLuint mask);
     604    void stencilOp(GLenum fail, GLenum zfail, GLenum zpass);
     605    void stencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
     606
     607    void texParameterf(GLenum target, GLenum pname, GLfloat param);
     608    void texParameteri(GLenum target, GLenum pname, GLint param);
    609609
    610610    // Supported forms:
    611     [StrictTypeChecking, RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height,
     611    [RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height,
    612612  GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
    613     [StrictTypeChecking, RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
     613    [RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
    614614  GLenum format, GLenum type, ImageData? pixels);
    615     [StrictTypeChecking, RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
     615    [RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
    616616  GLenum format, GLenum type, HTMLImageElement? image);
    617     [StrictTypeChecking, RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
     617    [RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
    618618  GLenum format, GLenum type, HTMLCanvasElement? canvas);
    619619#if defined(ENABLE_VIDEO) && ENABLE_VIDEO
    620     [StrictTypeChecking, RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
     620    [RaisesException] void texImage2D(GLenum target, GLint level, GLenum internalformat,
    621621  GLenum format, GLenum type, HTMLVideoElement? video);
    622622#endif
    623623
    624     [StrictTypeChecking, RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
     624    [RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
    625625 GLsizei width, GLsizei height,
    626626 GLenum format, GLenum type, ArrayBufferView? pixels);
    627     [StrictTypeChecking, RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
     627    [RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
    628628 GLenum format, GLenum type, ImageData? pixels);
    629     [StrictTypeChecking, RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
     629    [RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
    630630 GLenum format, GLenum type, HTMLImageElement? image);
    631     [StrictTypeChecking, RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
     631    [RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
    632632 GLenum format, GLenum type, HTMLCanvasElement? canvas);
    633633#if defined(ENABLE_VIDEO) && ENABLE_VIDEO
    634     [StrictTypeChecking, RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
     634    [RaisesException] void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
    635635 GLenum format, GLenum type, HTMLVideoElement? video);
    636636#endif
    637637
    638     [StrictTypeChecking, RaisesException] void uniform1f(WebGLUniformLocation? location, GLfloat x);
    639     [StrictTypeChecking, Custom, RaisesException] void uniform1fv(WebGLUniformLocation? location, Float32Array v);
    640     [StrictTypeChecking, RaisesException] void uniform1i(WebGLUniformLocation? location, GLint x);
    641     [StrictTypeChecking, Custom, RaisesException] void uniform1iv(WebGLUniformLocation? location, Int32Array v);
    642     [StrictTypeChecking, RaisesException] void uniform2f(WebGLUniformLocation? location, GLfloat x, GLfloat y);
    643     [StrictTypeChecking, Custom, RaisesException] void uniform2fv(WebGLUniformLocation? location, Float32Array v);
    644     [StrictTypeChecking, RaisesException] void uniform2i(WebGLUniformLocation? location, GLint x, GLint y);
    645     [StrictTypeChecking, Custom, RaisesException] void uniform2iv(WebGLUniformLocation? location, Int32Array v);
    646     [StrictTypeChecking, RaisesException] void uniform3f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z);
    647     [StrictTypeChecking, Custom, RaisesException] void uniform3fv(WebGLUniformLocation? location, Float32Array v);
    648     [StrictTypeChecking, RaisesException] void uniform3i(WebGLUniformLocation? location, GLint x, GLint y, GLint z);
    649     [StrictTypeChecking, Custom, RaisesException] void uniform3iv(WebGLUniformLocation? location, Int32Array v);
    650     [StrictTypeChecking, RaisesException] void uniform4f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
    651     [StrictTypeChecking, Custom, RaisesException] void uniform4fv(WebGLUniformLocation? location, Float32Array v);
    652     [StrictTypeChecking, RaisesException] void uniform4i(WebGLUniformLocation? location, GLint x, GLint y, GLint z, GLint w);
    653     [StrictTypeChecking, Custom, RaisesException] void uniform4iv(WebGLUniformLocation? location, Int32Array v);
    654 
    655     [StrictTypeChecking, Custom, RaisesException] void uniformMatrix2fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array array);
    656     [StrictTypeChecking, Custom, RaisesException] void uniformMatrix3fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array array);
    657     [StrictTypeChecking, Custom, RaisesException] void uniformMatrix4fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array array);
    658 
    659     [StrictTypeChecking, RaisesException] void useProgram(WebGLProgram? program);
    660     [StrictTypeChecking, RaisesException] void validateProgram(WebGLProgram? program);
    661 
    662     [StrictTypeChecking] void vertexAttrib1f(GLuint indx, GLfloat x);
    663     [StrictTypeChecking, Custom] void vertexAttrib1fv(GLuint indx, Float32Array values);
    664     [StrictTypeChecking] void vertexAttrib2f(GLuint indx, GLfloat x, GLfloat y);
    665     [StrictTypeChecking, Custom] void vertexAttrib2fv(GLuint indx, Float32Array values);
    666     [StrictTypeChecking] void vertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z);
    667     [StrictTypeChecking, Custom] void vertexAttrib3fv(GLuint indx, Float32Array values);
    668     [StrictTypeChecking] void vertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
    669     [StrictTypeChecking, Custom] void vertexAttrib4fv(GLuint indx, Float32Array values);
    670     [StrictTypeChecking, RaisesException] void vertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset);
    671 
    672     [StrictTypeChecking] void viewport(GLint x, GLint y, GLsizei width, GLsizei height);
     638    [RaisesException] void uniform1f(WebGLUniformLocation? location, GLfloat x);
     639    [Custom, RaisesException] void uniform1fv(WebGLUniformLocation? location, Float32Array v);
     640    [RaisesException] void uniform1i(WebGLUniformLocation? location, GLint x);
     641    [Custom, RaisesException] void uniform1iv(WebGLUniformLocation? location, Int32Array v);
     642    [RaisesException] void uniform2f(WebGLUniformLocation? location, GLfloat x, GLfloat y);
     643    [Custom, RaisesException] void uniform2fv(WebGLUniformLocation? location, Float32Array v);
     644    [RaisesException] void uniform2i(WebGLUniformLocation? location, GLint x, GLint y);
     645    [Custom, RaisesException] void uniform2iv(WebGLUniformLocation? location, Int32Array v);
     646    [RaisesException] void uniform3f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z);
     647    [Custom, RaisesException] void uniform3fv(WebGLUniformLocation? location, Float32Array v);
     648    [RaisesException] void uniform3i(WebGLUniformLocation? location, GLint x, GLint y, GLint z);
     649    [Custom, RaisesException] void uniform3iv(WebGLUniformLocation? location, Int32Array v);
     650    [RaisesException] void uniform4f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
     651    [Custom, RaisesException] void uniform4fv(WebGLUniformLocation? location, Float32Array v);
     652    [RaisesException] void uniform4i(WebGLUniformLocation? location, GLint x, GLint y, GLint z, GLint w);
     653    [Custom, RaisesException] void uniform4iv(WebGLUniformLocation? location, Int32Array v);
     654
     655    [Custom, RaisesException] void uniformMatrix2fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array array);
     656    [Custom, RaisesException] void uniformMatrix3fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array array);
     657    [Custom, RaisesException] void uniformMatrix4fv(WebGLUniformLocation? location, GLboolean transpose, Float32Array array);
     658
     659    [RaisesException] void useProgram(WebGLProgram? program);
     660    [RaisesException] void validateProgram(WebGLProgram? program);
     661
     662    void vertexAttrib1f(GLuint indx, GLfloat x);
     663    [Custom] void vertexAttrib1fv(GLuint indx, Float32Array values);
     664    void vertexAttrib2f(GLuint indx, GLfloat x, GLfloat y);
     665    [Custom] void vertexAttrib2fv(GLuint indx, Float32Array values);
     666    void vertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z);
     667    [Custom] void vertexAttrib3fv(GLuint indx, Float32Array values);
     668    void vertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
     669    [Custom] void vertexAttrib4fv(GLuint indx, Float32Array values);
     670    [RaisesException] void vertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset);
     671
     672    void viewport(GLint x, GLint y, GLsizei width, GLsizei height);
    673673};
  • trunk/Source/WebCore/svg/SVGAngle.idl

    r203949 r203956  
    3535    [SetterRaisesException] attribute DOMString valueAsString;
    3636
    37     [StrictTypeChecking, RaisesException] void newValueSpecifiedUnits(unsigned short unitType, unrestricted float valueInSpecifiedUnits);
     37    [RaisesException] void newValueSpecifiedUnits(unsigned short unitType, unrestricted float valueInSpecifiedUnits);
    3838
    39     [StrictTypeChecking, RaisesException] void convertToSpecifiedUnits(unsigned short unitType);
     39    [RaisesException] void convertToSpecifiedUnits(unsigned short unitType);
    4040};
    4141
  • trunk/Source/WebCore/svg/SVGColor.idl

    r163440 r203956  
    3232    // FIXME: readonly attribute SVGICCColor iccColor;
    3333
    34     [StrictTypeChecking, RaisesException] void setRGBColor(DOMString rgbColor);
     34    [RaisesException] void setRGBColor(DOMString rgbColor);
    3535
    36     [StrictTypeChecking, RaisesException] void setRGBColorICCColor(DOMString rgbColor, DOMString iccColor);
     36    [RaisesException] void setRGBColorICCColor(DOMString rgbColor, DOMString iccColor);
    3737
    38     [StrictTypeChecking, RaisesException] void setColor(unsigned short colorType, DOMString rgbColor, DOMString iccColor);
     38    [RaisesException] void setColor(unsigned short colorType, DOMString rgbColor, DOMString iccColor);
    3939};
    4040
  • trunk/Source/WebCore/svg/SVGLength.idl

    r203949 r203956  
    4242    [SetterRaisesException] attribute DOMString valueAsString;
    4343
    44     [StrictTypeChecking, RaisesException] void newValueSpecifiedUnits(unsigned short unitType,
     44    [RaisesException] void newValueSpecifiedUnits(unsigned short unitType,
    4545                                                     unrestricted float valueInSpecifiedUnits);
    4646
    47     [Custom, StrictTypeChecking, RaisesException] void convertToSpecifiedUnits(unsigned short unitType);
     47    [Custom, RaisesException] void convertToSpecifiedUnits(unsigned short unitType);
    4848};
    4949
  • trunk/Source/WebCore/svg/SVGLengthList.idl

    r199371 r203956  
    2929
    3030    [RaisesException] void clear();
    31     [StrictTypeChecking, RaisesException] SVGLength initialize(SVGLength item);
    32     [StrictTypeChecking, RaisesException] SVGLength getItem(unsigned long index);
    33     [StrictTypeChecking, RaisesException] SVGLength insertItemBefore(SVGLength item, unsigned long index);
    34     [StrictTypeChecking, RaisesException] SVGLength replaceItem(SVGLength item, unsigned long index);
    35     [StrictTypeChecking, RaisesException] SVGLength removeItem(unsigned long index);
    36     [StrictTypeChecking, RaisesException] SVGLength appendItem(SVGLength item);
     31    [RaisesException] SVGLength initialize(SVGLength item);
     32    [RaisesException] SVGLength getItem(unsigned long index);
     33    [RaisesException] SVGLength insertItemBefore(SVGLength item, unsigned long index);
     34    [RaisesException] SVGLength replaceItem(SVGLength item, unsigned long index);
     35    [RaisesException] SVGLength removeItem(unsigned long index);
     36    [RaisesException] SVGLength appendItem(SVGLength item);
    3737};
  • trunk/Source/WebCore/svg/SVGMatrix.idl

    r203949 r203956  
    3131    attribute unrestricted double f;
    3232
    33     [StrictTypeChecking] SVGMatrix multiply(SVGMatrix secondMatrix);
     33    SVGMatrix multiply(SVGMatrix secondMatrix);
    3434    [RaisesException] SVGMatrix inverse();
    35     [Immutable, StrictTypeChecking] SVGMatrix translate(unrestricted float x, unrestricted float y);
    36     [Immutable, StrictTypeChecking] SVGMatrix scale(unrestricted float scaleFactor);
    37     [Immutable, StrictTypeChecking] SVGMatrix scaleNonUniform(unrestricted float scaleFactorX, unrestricted float scaleFactorY);
    38     [Immutable, StrictTypeChecking] SVGMatrix rotate(unrestricted float angle);
    39     [StrictTypeChecking, RaisesException] SVGMatrix rotateFromVector(unrestricted float x, unrestricted float y);
     35    [Immutable] SVGMatrix translate(unrestricted float x, unrestricted float y);
     36    [Immutable] SVGMatrix scale(unrestricted float scaleFactor);
     37    [Immutable] SVGMatrix scaleNonUniform(unrestricted float scaleFactorX, unrestricted float scaleFactorY);
     38    [Immutable] SVGMatrix rotate(unrestricted float angle);
     39    [RaisesException] SVGMatrix rotateFromVector(unrestricted float x, unrestricted float y);
    4040    [Immutable] SVGMatrix flipX();
    4141    [Immutable] SVGMatrix flipY();
    42     [Immutable, StrictTypeChecking] SVGMatrix skewX(unrestricted float angle);
    43     [Immutable, StrictTypeChecking] SVGMatrix skewY(unrestricted float angle);
     42    [Immutable] SVGMatrix skewX(unrestricted float angle);
     43    [Immutable] SVGMatrix skewY(unrestricted float angle);
    4444};
    4545
  • trunk/Source/WebCore/svg/SVGNumberList.idl

    r199371 r203956  
    2929
    3030    [RaisesException] void clear();
    31     [StrictTypeChecking, RaisesException] SVGNumber initialize(SVGNumber item);
    32     [StrictTypeChecking, RaisesException] SVGNumber getItem(unsigned long index);
    33     [StrictTypeChecking, RaisesException] SVGNumber insertItemBefore(SVGNumber item, unsigned long index);
    34     [StrictTypeChecking, RaisesException] SVGNumber replaceItem(SVGNumber item, unsigned long index);
    35     [StrictTypeChecking, RaisesException] SVGNumber removeItem(unsigned long index);
    36     [StrictTypeChecking, RaisesException] SVGNumber appendItem(SVGNumber item);
     31    [RaisesException] SVGNumber initialize(SVGNumber item);
     32    [RaisesException] SVGNumber getItem(unsigned long index);
     33    [RaisesException] SVGNumber insertItemBefore(SVGNumber item, unsigned long index);
     34    [RaisesException] SVGNumber replaceItem(SVGNumber item, unsigned long index);
     35    [RaisesException] SVGNumber removeItem(unsigned long index);
     36    [RaisesException] SVGNumber appendItem(SVGNumber item);
    3737};
  • trunk/Source/WebCore/svg/SVGPaint.idl

    r163440 r203956  
    4141    readonly attribute DOMString uri;
    4242
    43     [StrictTypeChecking] void setUri(DOMString uri);
    44     [StrictTypeChecking, RaisesException] void setPaint(unsigned short paintType, DOMString uri, DOMString rgbColor, DOMString iccColor);
     43    void setUri(DOMString uri);
     44    [RaisesException] void setPaint(unsigned short paintType, DOMString uri, DOMString rgbColor, DOMString iccColor);
    4545};
    4646
  • trunk/Source/WebCore/svg/SVGPathSegList.idl

    r199371 r203956  
    2929
    3030    [RaisesException] void clear();
    31     [StrictTypeChecking, RaisesException] SVGPathSeg initialize(SVGPathSeg? newItem); // FIXME: Should not be nullable.
    32     [StrictTypeChecking, RaisesException] SVGPathSeg getItem(unsigned long index);
    33     [StrictTypeChecking, RaisesException] SVGPathSeg insertItemBefore(SVGPathSeg? newItem, unsigned long index); // FIXME: Should not be nullable.
    34     [StrictTypeChecking, RaisesException] SVGPathSeg replaceItem(SVGPathSeg? newItem, unsigned long index); // FIXME: Should not be nullable.
    35     [StrictTypeChecking, RaisesException] SVGPathSeg removeItem(unsigned long index);
    36     [StrictTypeChecking, RaisesException] SVGPathSeg appendItem(SVGPathSeg? newItem); // FIXME: Should not be nullable.
     31    [RaisesException] SVGPathSeg initialize(SVGPathSeg? newItem); // FIXME: Should not be nullable.
     32    [RaisesException] SVGPathSeg getItem(unsigned long index);
     33    [RaisesException] SVGPathSeg insertItemBefore(SVGPathSeg? newItem, unsigned long index); // FIXME: Should not be nullable.
     34    [RaisesException] SVGPathSeg replaceItem(SVGPathSeg? newItem, unsigned long index); // FIXME: Should not be nullable.
     35    [RaisesException] SVGPathSeg removeItem(unsigned long index);
     36    [RaisesException] SVGPathSeg appendItem(SVGPathSeg? newItem); // FIXME: Should not be nullable.
    3737};
  • trunk/Source/WebCore/svg/SVGPoint.idl

    r203949 r203956  
    2525    attribute unrestricted float y;
    2626
    27     [StrictTypeChecking] SVGPoint matrixTransform(SVGMatrix matrix);
     27    SVGPoint matrixTransform(SVGMatrix matrix);
    2828};
    2929
  • trunk/Source/WebCore/svg/SVGPointList.idl

    r199371 r203956  
    2828
    2929    [RaisesException] void clear();
    30     [StrictTypeChecking, RaisesException] SVGPoint initialize(SVGPoint item);
    31     [StrictTypeChecking, RaisesException] SVGPoint getItem(unsigned long index);
    32     [StrictTypeChecking, RaisesException] SVGPoint insertItemBefore(SVGPoint item, unsigned long index);
    33     [StrictTypeChecking, RaisesException] SVGPoint replaceItem(SVGPoint item, unsigned long index);
    34     [StrictTypeChecking, RaisesException] SVGPoint removeItem(unsigned long index);
    35     [StrictTypeChecking, RaisesException] SVGPoint appendItem(SVGPoint item);
     30    [RaisesException] SVGPoint initialize(SVGPoint item);
     31    [RaisesException] SVGPoint getItem(unsigned long index);
     32    [RaisesException] SVGPoint insertItemBefore(SVGPoint item, unsigned long index);
     33    [RaisesException] SVGPoint replaceItem(SVGPoint item, unsigned long index);
     34    [RaisesException] SVGPoint removeItem(unsigned long index);
     35    [RaisesException] SVGPoint appendItem(SVGPoint item);
    3636};
  • trunk/Source/WebCore/svg/SVGStringList.idl

    r163440 r203956  
    2828
    2929    [RaisesException] void clear();
    30     [StrictTypeChecking, RaisesException] DOMString initialize(DOMString item);
    31     [StrictTypeChecking, RaisesException] DOMString getItem(unsigned long index);
    32     [StrictTypeChecking, RaisesException] DOMString insertItemBefore(DOMString item, unsigned long index);
    33     [StrictTypeChecking, RaisesException] DOMString replaceItem(DOMString item, unsigned long index);
    34     [StrictTypeChecking, RaisesException] DOMString removeItem(unsigned long index);
    35     [StrictTypeChecking, RaisesException] DOMString appendItem(DOMString item);
     30    [RaisesException] DOMString initialize(DOMString item);
     31    [RaisesException] DOMString getItem(unsigned long index);
     32    [RaisesException] DOMString insertItemBefore(DOMString item, unsigned long index);
     33    [RaisesException] DOMString replaceItem(DOMString item, unsigned long index);
     34    [RaisesException] DOMString removeItem(unsigned long index);
     35    [RaisesException] DOMString appendItem(DOMString item);
    3636};
    3737
  • trunk/Source/WebCore/svg/SVGTransform.idl

    r168302 r203956  
    3434    readonly attribute unrestricted float angle;
    3535
    36     [StrictTypeChecking] void setMatrix(SVGMatrix matrix);
    37     [StrictTypeChecking] void setTranslate(unrestricted float tx, unrestricted float ty);
    38     [StrictTypeChecking] void setScale(unrestricted float sx, unrestricted float sy);
    39     [StrictTypeChecking] void setRotate(unrestricted float angle, unrestricted float cx, unrestricted float cy);
    40     [StrictTypeChecking] void setSkewX(unrestricted float angle);
    41     [StrictTypeChecking] void setSkewY(unrestricted float angle);
     36    void setMatrix(SVGMatrix matrix);
     37    void setTranslate(unrestricted float tx, unrestricted float ty);
     38    void setScale(unrestricted float sx, unrestricted float sy);
     39    void setRotate(unrestricted float angle, unrestricted float cx, unrestricted float cy);
     40    void setSkewX(unrestricted float angle);
     41    void setSkewY(unrestricted float angle);
    4242};
    4343
  • trunk/Source/WebCore/svg/SVGTransformList.idl

    r199371 r203956  
    2929
    3030    [RaisesException] void clear();
    31     [StrictTypeChecking, RaisesException] SVGTransform initialize(SVGTransform item);
    32     [StrictTypeChecking, RaisesException] SVGTransform getItem(unsigned long index);
    33     [StrictTypeChecking, RaisesException] SVGTransform insertItemBefore(SVGTransform item, unsigned long index);
    34     [StrictTypeChecking, RaisesException] SVGTransform replaceItem(SVGTransform item, unsigned long index);
    35     [StrictTypeChecking, RaisesException] SVGTransform removeItem(unsigned long index);
    36     [StrictTypeChecking, RaisesException] SVGTransform appendItem(SVGTransform item);
     31    [RaisesException] SVGTransform initialize(SVGTransform item);
     32    [RaisesException] SVGTransform getItem(unsigned long index);
     33    [RaisesException] SVGTransform insertItemBefore(SVGTransform item, unsigned long index);
     34    [RaisesException] SVGTransform replaceItem(SVGTransform item, unsigned long index);
     35    [RaisesException] SVGTransform removeItem(unsigned long index);
     36    [RaisesException] SVGTransform appendItem(SVGTransform item);
    3737
    38     [StrictTypeChecking, RaisesException] SVGTransform createSVGTransformFromMatrix(SVGMatrix matrix);
     38    [RaisesException] SVGTransform createSVGTransformFromMatrix(SVGMatrix matrix);
    3939
    4040    [RaisesException] SVGTransform consolidate();
Note: See TracChangeset for help on using the changeset viewer.