@nativescript/canvas 2.0.0-alpha.47 → 2.0.0-alpha.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/Canvas/index.android.d.ts +1 -1
  2. package/Canvas/index.android.js +21 -14
  3. package/Canvas/index.android.js.map +1 -1
  4. package/Canvas/index.ios.d.ts +1 -1
  5. package/Canvas/index.ios.js +45 -32
  6. package/Canvas/index.ios.js.map +1 -1
  7. package/Canvas2D/CanvasRenderingContext2D/index.js +18 -8
  8. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  9. package/Canvas2D/Path2D/index.js +5 -10
  10. package/Canvas2D/Path2D/index.js.map +1 -1
  11. package/package.json +1 -1
  12. package/platforms/android/canvas-release.aar +0 -0
  13. package/platforms/ios/CanvasNative.xcframework/Info.plist +5 -5
  14. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  15. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +72 -0
  16. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  17. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  18. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +72 -0
  19. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +2 -2
  20. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  21. package/platforms/ios/Podfile +1 -1
  22. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.cpp +10 -9
  23. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.h +28 -5
  24. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +300 -103
  25. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +588 -90
  26. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +330 -289
  27. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.h +1127 -27
@@ -5,6 +5,17 @@
5
5
  #include "WebGLRenderingContext.h"
6
6
  #include "OneByteStringResource.h"
7
7
 
8
+ v8::CFunction WebGLRenderingContext::fast_disable_(
9
+ v8::CFunction::Make(WebGLRenderingContext::FastDisable));
10
+
11
+ v8::CFunction WebGLRenderingContext::fast_resized_(
12
+ v8::CFunction::Make(WebGLRenderingContext::__FastResized));
13
+
14
+ v8::CFunction WebGLRenderingContext::fast_start_raf_(
15
+ v8::CFunction::Make(WebGLRenderingContext::__FastStartRaf));
16
+
17
+ v8::CFunction WebGLRenderingContext::fast_stop_raf_(
18
+ v8::CFunction::Make(WebGLRenderingContext::__FastStopRaf));
8
19
 
9
20
  v8::CFunction WebGLRenderingContext::fast_active_texture_(
10
21
  v8::CFunction::Make(WebGLRenderingContext::FastActiveTexture));
@@ -57,6 +68,12 @@ v8::CFunction WebGLRenderingContext::fast_uniform4i_(
57
68
  v8::CFunction WebGLRenderingContext::fast_draw_arrays_(
58
69
  v8::CFunction::Make(WebGLRenderingContext::FastDrawArrays));
59
70
 
71
+ v8::CFunction WebGLRenderingContext::fast_clear_depth_(
72
+ v8::CFunction::Make(WebGLRenderingContext::FastClearDepth));
73
+
74
+ v8::CFunction WebGLRenderingContext::fast_clear_stencil_(
75
+ v8::CFunction::Make(WebGLRenderingContext::FastClearStencil));
76
+
60
77
  v8::CFunction WebGLRenderingContext::fast_clear_(
61
78
  v8::CFunction::Make(WebGLRenderingContext::FastClear));
62
79
 
@@ -210,10 +227,230 @@ const v8::CFunction uniform_4fv_overloads_[] = {
210
227
  WebGLRenderingContext::fast_uniform_4fv_array_
211
228
  };
212
229
 
213
- v8::CFunction WebGLRenderingContext::fast_vertex_attrib_pointer(
230
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_pointer_(
214
231
  v8::CFunction::Make(WebGLRenderingContext::FastVertexAttribPointer));
215
232
 
216
233
 
234
+ v8::CFunction WebGLRenderingContext::fast_bind_frame_buffer_(
235
+ v8::CFunction::Make(WebGLRenderingContext::FastBindFramebuffer));
236
+
237
+ v8::CFunction WebGLRenderingContext::fast_bind_frame_buffer_null_(
238
+ v8::CFunction::Make(WebGLRenderingContext::FastBindFramebufferNull));
239
+
240
+ const v8::CFunction fast_bind_frame_buffer_overloads_[] = {
241
+ WebGLRenderingContext::fast_bind_frame_buffer_null_,
242
+ WebGLRenderingContext::fast_bind_frame_buffer_
243
+ };
244
+
245
+
246
+ v8::CFunction WebGLRenderingContext::fast_bind_render_buffer_(
247
+ v8::CFunction::Make(WebGLRenderingContext::FastBindRenderbuffer));
248
+
249
+ v8::CFunction WebGLRenderingContext::fast_bind_render_buffer_null_(
250
+ v8::CFunction::Make(WebGLRenderingContext::FastBindRenderbufferNull));
251
+
252
+ const v8::CFunction fast_bind_render_buffer_overloads_[] = {
253
+ WebGLRenderingContext::fast_bind_render_buffer_null_,
254
+ WebGLRenderingContext::fast_bind_render_buffer_
255
+ };
256
+
257
+
258
+ v8::CFunction WebGLRenderingContext::fast_bind_texture_(
259
+ v8::CFunction::Make(WebGLRenderingContext::FastBindTexture));
260
+
261
+ v8::CFunction WebGLRenderingContext::fast_bind_texture_null_(
262
+ v8::CFunction::Make(WebGLRenderingContext::FastBindTextureNull));
263
+
264
+ const v8::CFunction fast_bind_texture_overloads_[] = {
265
+ WebGLRenderingContext::fast_bind_texture_null_,
266
+ WebGLRenderingContext::fast_bind_texture_,
267
+ };
268
+
269
+ v8::CFunction WebGLRenderingContext::fast_draw_elements_(
270
+ v8::CFunction::Make(WebGLRenderingContext::FastDrawElements));
271
+
272
+
273
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_1f_(
274
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib1f));
275
+
276
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_1fv_(
277
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib1fv));
278
+
279
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_2f_(
280
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib2f));
281
+
282
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_2fv_(
283
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib2fv));
284
+
285
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_3f_(
286
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib3f));
287
+
288
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_3fv_(
289
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib3fv));
290
+
291
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_4f_(
292
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib4f));
293
+
294
+ v8::CFunction WebGLRenderingContext::fast_vertex_attrib_4fv_(
295
+ v8::CFunction::Make(WebGLRenderingContext::FastVertexAttrib4fv));
296
+
297
+
298
+ v8::CFunction WebGLRenderingContext::fast_blend_color_(
299
+ v8::CFunction::Make(WebGLRenderingContext::FastBlendColor));
300
+
301
+ v8::CFunction WebGLRenderingContext::fast_blend_equation_separate_(
302
+ v8::CFunction::Make(WebGLRenderingContext::FastBlendEquationSeparate));
303
+
304
+ v8::CFunction WebGLRenderingContext::fast_blend_equation_(
305
+ v8::CFunction::Make(WebGLRenderingContext::FastBlendEquation));
306
+
307
+ v8::CFunction WebGLRenderingContext::fast_blend_func_separate_(
308
+ v8::CFunction::Make(WebGLRenderingContext::FastBlendFuncSeparate));
309
+
310
+ v8::CFunction WebGLRenderingContext::fast_blend_func_(
311
+ v8::CFunction::Make(WebGLRenderingContext::FastBlendFunc));
312
+
313
+
314
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_os_(
315
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataOS));
316
+
317
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_target_usage_(
318
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataTargetUsage));
319
+
320
+
321
+ /*
322
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_u8_(
323
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataU8));
324
+
325
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_i8_(
326
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataI8));
327
+
328
+
329
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_u16_(
330
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataU16));
331
+
332
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_i16_(
333
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataI16));
334
+ */
335
+
336
+
337
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_u32_(
338
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataU32));
339
+
340
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_i32_(
341
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataI32));
342
+
343
+
344
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_f32_(
345
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataF32));
346
+
347
+ v8::CFunction WebGLRenderingContext::fast_buffer_data_f64_(
348
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferDataF64));
349
+ //
350
+ //v8::CFunction WebGLRenderingContext::fast_buffer_data_array_buffer_(
351
+ // v8::CFunction::Make(WebGLRenderingContext::FastBufferDataArrayBuffer));
352
+
353
+
354
+ const v8::CFunction fast_buffer_data_overloads_[] = {
355
+ WebGLRenderingContext::fast_buffer_data_os_,
356
+ //WebGLRenderingContext::fast_buffer_data_u8_,
357
+ // WebGLRenderingContext::fast_buffer_data_i8_,
358
+ // WebGLRenderingContext::fast_buffer_data_u16_,
359
+ // WebGLRenderingContext::fast_buffer_data_i16_,
360
+ WebGLRenderingContext::fast_buffer_data_u32_,
361
+ WebGLRenderingContext::fast_buffer_data_i32_,
362
+ WebGLRenderingContext::fast_buffer_data_f32_,
363
+ WebGLRenderingContext::fast_buffer_data_f64_,
364
+ // WebGLRenderingContext::fast_buffer_data_array_buffer_,
365
+ WebGLRenderingContext::fast_buffer_data_target_usage_,
366
+ };
367
+
368
+
369
+ v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_target_offset_(
370
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataTargetOffset));
371
+
372
+ //v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_u8_(
373
+ // v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataU8));
374
+
375
+
376
+ //v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_i8_(
377
+ // v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataI8));
378
+ //
379
+ //v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_u16_(
380
+ // v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataU16));
381
+ //
382
+ //
383
+ //v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_i16_(
384
+ // v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataI16));
385
+
386
+
387
+ v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_u32_(
388
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataU32));
389
+
390
+
391
+ v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_i32_(
392
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataI32));
393
+
394
+
395
+ v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_f32_(
396
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataF32));
397
+
398
+
399
+ v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_f64_(
400
+ v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataF64));
401
+
402
+
403
+ //v8::CFunction WebGLRenderingContext::fast_buffer_sub_data_array_buffer_(
404
+ // v8::CFunction::Make(WebGLRenderingContext::FastBufferSubDataArrayBuffer));
405
+
406
+
407
+
408
+ const v8::CFunction fast_buffer_sub_data_overloads_[] = {
409
+ // WebGLRenderingContext::fast_buffer_sub_data_u8_,
410
+ WebGLRenderingContext::fast_buffer_sub_data_u32_,
411
+ WebGLRenderingContext::fast_buffer_sub_data_i32_,
412
+ WebGLRenderingContext::fast_buffer_sub_data_f32_,
413
+ WebGLRenderingContext::fast_buffer_sub_data_f64_,
414
+ // WebGLRenderingContext::fast_buffer_sub_data_array_buffer_,
415
+ WebGLRenderingContext::fast_buffer_sub_data_target_offset_
416
+ };
417
+
418
+
419
+ v8::CFunction WebGLRenderingContext::fast_check_framebuffer_status_(
420
+ v8::CFunction::Make(WebGLRenderingContext::FastCheckFramebufferStatus));
421
+
422
+ v8::CFunction WebGLRenderingContext::fast_validate_program_(
423
+ v8::CFunction::Make(WebGLRenderingContext::FastValidateProgram));
424
+
425
+
426
+ v8::CFunction WebGLRenderingContext::fast_delete_buffer_(
427
+ v8::CFunction::Make(WebGLRenderingContext::FastDeleteBuffer));
428
+
429
+
430
+ v8::CFunction WebGLRenderingContext::fast_delete_buffer_framebuffer_(
431
+ v8::CFunction::Make(WebGLRenderingContext::FastDeleteFramebuffer));
432
+
433
+ v8::CFunction WebGLRenderingContext::fast_delete_program_(
434
+ v8::CFunction::Make(WebGLRenderingContext::FastDeleteProgram));
435
+
436
+
437
+ v8::CFunction WebGLRenderingContext::fast_delete_renderbuffer_(
438
+ v8::CFunction::Make(WebGLRenderingContext::FastDeleteFramebuffer));
439
+
440
+ v8::CFunction WebGLRenderingContext::fast_delete_shader_(
441
+ v8::CFunction::Make(WebGLRenderingContext::FastDeleteFramebuffer));
442
+
443
+ v8::CFunction WebGLRenderingContext::fast_delete_texture_(
444
+ v8::CFunction::Make(WebGLRenderingContext::FastDeleteTexture));
445
+
446
+
447
+ v8::CFunction WebGLRenderingContext::fast_compile_shader_(
448
+ v8::CFunction::Make(WebGLRenderingContext::FastCompileShader));
449
+
450
+ v8::CFunction WebGLRenderingContext::fast_framebuffer_texture_2d_(
451
+ v8::CFunction::Make(WebGLRenderingContext::FastFramebufferTexture2D));
452
+
453
+
217
454
  WebGLRenderingContext::WebGLRenderingContext(WebGLState *state)
218
455
  : WebGLRenderingContextBase(state, WebGLRenderingVersion::V1) {
219
456
 
@@ -1480,6 +1717,7 @@ void WebGLRenderingContext::CullFace(const v8::FunctionCallbackInfo<v8::Value> &
1480
1717
 
1481
1718
  }
1482
1719
 
1720
+
1483
1721
  void WebGLRenderingContext::DeleteBuffer(const v8::FunctionCallbackInfo<v8::Value> &args) {
1484
1722
  WebGLRenderingContext *ptr = GetPointer(args.This());
1485
1723
  if (ptr == nullptr) {
@@ -5923,129 +6161,94 @@ void WebGLRenderingContext::SetProps(v8::Isolate *isolate,
5923
6161
  void
5924
6162
  WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::ObjectTemplate> &tmpl) {
5925
6163
 
5926
- tmpl->Set(ConvertToV8String(isolate, "__resized"),
5927
- v8::FunctionTemplate::New(isolate, &__Resized));
5928
- tmpl->Set(ConvertToV8String(isolate, "__startRaf"),
5929
- v8::FunctionTemplate::New(isolate, &__StartRaf));
5930
- tmpl->Set(ConvertToV8String(isolate, "__stopRaf"),
5931
- v8::FunctionTemplate::New(isolate, &__StopRaf));
5932
6164
 
6165
+ SetFastMethod(isolate, tmpl, "__resized", __Resized, &fast_resized_,
6166
+ v8::Local<v8::Value>());
6167
+
6168
+ SetFastMethod(isolate, tmpl, "__startRaf", __StartRaf, &fast_start_raf_,
6169
+ v8::Local<v8::Value>());
6170
+
6171
+ SetFastMethod(isolate, tmpl, "__stopRaf", __StopRaf, &fast_stop_raf_,
6172
+ v8::Local<v8::Value>());
6173
+
6174
+
6175
+ // todo
5933
6176
  tmpl->Set(ConvertToV8String(isolate, "__toDataURL"),
5934
6177
  v8::FunctionTemplate::New(isolate, &__ToDataURL));
5935
6178
 
6179
+ // todo
5936
6180
  tmpl->Set(ConvertToV8String(isolate, "__getSupportedExtensions"),
5937
6181
  v8::FunctionTemplate::New(isolate, &__GetSupportedExtensions));
5938
6182
 
5939
6183
 
5940
-
5941
- // tmpl->Set(
5942
- // ConvertToV8String(isolate, "activeTexture"),
5943
- // v8::FunctionTemplate::New(isolate, &ActiveTexture));
5944
-
5945
6184
  SetFastMethod(isolate, tmpl, "activeTexture", ActiveTexture, &fast_active_texture_,
5946
6185
  v8::Local<v8::Value>());
5947
6186
 
5948
- // tmpl->Set(
5949
- // ConvertToV8String(isolate, "attachShader"),
5950
- // v8::FunctionTemplate::New(isolate, &AttachShader)
5951
- // );
5952
- //
5953
6187
 
5954
6188
  SetFastMethod(isolate, tmpl, "attachShader", AttachShader, &fast_attach_shader_,
5955
6189
  v8::Local<v8::Value>());
5956
6190
 
6191
+ // todo
5957
6192
  tmpl->Set(
5958
6193
  ConvertToV8String(isolate, "bindAttribLocation"),
5959
6194
  v8::FunctionTemplate::New(isolate, &BindAttribLocation)
5960
6195
  );
5961
6196
 
5962
- // tmpl->Set(
5963
- // ConvertToV8String(isolate, "bindBuffer"),
5964
- // v8::FunctionTemplate::New(isolate, &BindBuffer)
5965
- // );
5966
-
5967
6197
  SetFastMethodWithOverLoads(isolate, tmpl, "bindBuffer", BindBuffer,
5968
6198
  bind_buffer_overloads_, v8::Local<v8::Value>());
5969
6199
 
6200
+ SetFastMethodWithOverLoads(isolate, tmpl, "bindFramebuffer", BindFramebuffer,
6201
+ fast_bind_frame_buffer_overloads_, v8::Local<v8::Value>());
5970
6202
 
5971
- tmpl->Set(
5972
- ConvertToV8String(isolate, "bindFramebuffer"),
5973
- v8::FunctionTemplate::New(isolate, &BindFramebuffer)
5974
- );
6203
+ SetFastMethodWithOverLoads(isolate, tmpl, "bindRenderbuffer", BindRenderbuffer,
6204
+ fast_bind_render_buffer_overloads_, v8::Local<v8::Value>());
5975
6205
 
5976
- tmpl->Set(
5977
- ConvertToV8String(isolate, "bindRenderbuffer"),
5978
- v8::FunctionTemplate::New(isolate, &BindRenderbuffer)
5979
- );
5980
6206
 
5981
- tmpl->Set(
5982
- ConvertToV8String(isolate, "bindTexture"),
5983
- v8::FunctionTemplate::New(isolate, &BindTexture)
5984
- );
6207
+ SetFastMethodWithOverLoads(isolate, tmpl, "bindTexture", BindTexture,
6208
+ fast_bind_texture_overloads_, v8::Local<v8::Value>());
5985
6209
 
5986
- tmpl->Set(
5987
- ConvertToV8String(isolate, "blendColor"),
5988
- v8::FunctionTemplate::New(isolate, &BlendColor)
5989
- );
6210
+ SetFastMethod(isolate, tmpl, "blendColor", BlendColor, &fast_blend_color_,
6211
+ v8::Local<v8::Value>());
5990
6212
 
5991
- tmpl->Set(
5992
- ConvertToV8String(isolate, "blendEquationSeparate"),
5993
- v8::FunctionTemplate::New(isolate, &BlendEquationSeparate)
5994
- );
6213
+ SetFastMethod(isolate, tmpl, "blendEquationSeparate", BlendEquationSeparate,
6214
+ &fast_blend_equation_separate_,
6215
+ v8::Local<v8::Value>());
5995
6216
 
5996
- tmpl->Set(
5997
- ConvertToV8String(isolate, "blendEquation"),
5998
- v8::FunctionTemplate::New(isolate, &BlendEquation)
5999
- );
6217
+ SetFastMethod(isolate, tmpl, "blendEquation", BlendEquation, &fast_blend_equation_,
6218
+ v8::Local<v8::Value>());
6000
6219
 
6001
- tmpl->Set(
6002
- ConvertToV8String(isolate, "blendFuncSeparate"),
6003
- v8::FunctionTemplate::New(isolate, &BlendFuncSeparate)
6004
- );
6005
6220
 
6221
+ SetFastMethod(isolate, tmpl, "blendFuncSeparate", BlendFuncSeparate, &fast_blend_func_separate_,
6222
+ v8::Local<v8::Value>());
6006
6223
 
6007
- tmpl->Set(
6008
- ConvertToV8String(isolate, "blendFunc"),
6009
- v8::FunctionTemplate::New(isolate, &BlendFunc)
6010
- );
6011
6224
 
6012
- tmpl->Set(
6013
- ConvertToV8String(isolate, "bufferData"),
6014
- v8::FunctionTemplate::New(isolate, &BufferData)
6015
- );
6225
+ SetFastMethod(isolate, tmpl, "blendFunc", BlendFunc, &fast_blend_func_,
6226
+ v8::Local<v8::Value>());
6016
6227
 
6017
- tmpl->Set(
6018
- ConvertToV8String(isolate, "bufferSubData"),
6019
- v8::FunctionTemplate::New(isolate, &BufferSubData)
6020
- );
6021
6228
 
6022
- tmpl->Set(
6023
- ConvertToV8String(isolate, "checkFramebufferStatus"),
6024
- v8::FunctionTemplate::New(isolate, &CheckFramebufferStatus)
6025
- );
6229
+ SetFastMethodWithOverLoads(isolate, tmpl, "bufferData", BufferData,
6230
+ fast_buffer_data_overloads_, v8::Local<v8::Value>());
6231
+
6232
+
6233
+ SetFastMethodWithOverLoads(isolate, tmpl, "bufferSubData", BufferSubData,
6234
+ fast_buffer_sub_data_overloads_, v8::Local<v8::Value>());
6235
+
6236
+
6237
+ SetFastMethod(isolate, tmpl, "checkFramebufferStatus", CheckFramebufferStatus,
6238
+ &fast_check_framebuffer_status_,
6239
+ v8::Local<v8::Value>());
6026
6240
 
6027
- // tmpl->Set(
6028
- // ConvertToV8String(isolate, "clearColor"),
6029
- // v8::FunctionTemplate::New(isolate, &ClearColor)
6030
- // );
6031
6241
 
6032
6242
  SetFastMethod(isolate, tmpl, "clearColor", ClearColor, &fast_clear_color_,
6033
6243
  v8::Local<v8::Value>());
6034
6244
 
6035
- tmpl->Set(
6036
- ConvertToV8String(isolate, "clearDepth"),
6037
- v8::FunctionTemplate::New(isolate, &ClearDepth)
6038
- );
6039
6245
 
6040
- tmpl->Set(
6041
- ConvertToV8String(isolate, "clearStencil"),
6042
- v8::FunctionTemplate::New(isolate, &ClearStencil)
6043
- );
6246
+ SetFastMethod(isolate, tmpl, "clearDepth", ClearDepth, &fast_clear_depth_,
6247
+ v8::Local<v8::Value>());
6248
+
6044
6249
 
6045
- // tmpl->Set(
6046
- // ConvertToV8String(isolate, "clear"),
6047
- // v8::FunctionTemplate::New(isolate, &Clear)
6048
- // );
6250
+ SetFastMethod(isolate, tmpl, "clearStencil", ClearStencil, &fast_clear_stencil_,
6251
+ v8::Local<v8::Value>());
6049
6252
 
6050
6253
 
6051
6254
  SetFastMethod(isolate, tmpl, "clear", Clear, &fast_clear_, v8::Local<v8::Value>());
@@ -6058,10 +6261,11 @@ WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::Obje
6058
6261
  ConvertToV8String(isolate, "commit"),
6059
6262
  v8::FunctionTemplate::New(isolate, &Commit)
6060
6263
  );
6061
- tmpl->Set(
6062
- ConvertToV8String(isolate, "compileShader"),
6063
- v8::FunctionTemplate::New(isolate, &CompileShader)
6064
- );
6264
+
6265
+ SetFastMethod(isolate, tmpl, "compileShader", CompileShader, &fast_compile_shader_,
6266
+ v8::Local<v8::Value>());
6267
+
6268
+
6065
6269
  tmpl->Set(
6066
6270
  ConvertToV8String(isolate, "compressedTexImage2D"),
6067
6271
  v8::FunctionTemplate::New(isolate, &CompressedTexImage2D)
@@ -6115,36 +6319,25 @@ WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::Obje
6115
6319
  v8::FunctionTemplate::New(isolate, &CullFace)
6116
6320
  );
6117
6321
 
6118
- tmpl->Set(
6119
- ConvertToV8String(isolate, "deleteBuffer"),
6120
- v8::FunctionTemplate::New(isolate, &DeleteBuffer)
6121
- );
6122
6322
 
6323
+ SetFastMethod(isolate, tmpl, "deleteBuffer", DeleteBuffer, &fast_delete_buffer_,
6324
+ v8::Local<v8::Value>());
6123
6325
 
6124
- tmpl->Set(
6125
- ConvertToV8String(isolate, "deleteFramebuffer"),
6126
- v8::FunctionTemplate::New(isolate, &DeleteFramebuffer)
6127
- );
6326
+ SetFastMethod(isolate, tmpl, "deleteFramebuffer", DeleteFramebuffer,
6327
+ &fast_delete_buffer_framebuffer_, v8::Local<v8::Value>());
6128
6328
 
6129
- tmpl->Set(
6130
- ConvertToV8String(isolate, "deleteProgram"),
6131
- v8::FunctionTemplate::New(isolate, &DeleteProgram)
6132
- );
6329
+ SetFastMethod(isolate, tmpl, "deleteProgram", DeleteProgram, &fast_delete_program_,
6330
+ v8::Local<v8::Value>());
6133
6331
 
6134
- tmpl->Set(
6135
- ConvertToV8String(isolate, "deleteRenderbuffer"),
6136
- v8::FunctionTemplate::New(isolate, &DeleteRenderbuffer)
6137
- );
6332
+ SetFastMethod(isolate, tmpl, "deleteRenderbuffer", DeleteRenderbuffer,
6333
+ &fast_delete_renderbuffer_, v8::Local<v8::Value>());
6138
6334
 
6139
- tmpl->Set(
6140
- ConvertToV8String(isolate, "deleteShader"),
6141
- v8::FunctionTemplate::New(isolate, &DeleteShader)
6142
- );
6335
+ SetFastMethod(isolate, tmpl, "deleteShader", DeleteShader, &fast_delete_shader_,
6336
+ v8::Local<v8::Value>());
6337
+
6338
+ SetFastMethod(isolate, tmpl, "deleteTexture", DeleteTexture, &fast_delete_texture_,
6339
+ v8::Local<v8::Value>());
6143
6340
 
6144
- tmpl->Set(
6145
- ConvertToV8String(isolate, "deleteTexture"),
6146
- v8::FunctionTemplate::New(isolate, &DeleteTexture)
6147
- );
6148
6341
 
6149
6342
  tmpl->Set(
6150
6343
  ConvertToV8String(isolate, "depthFunc"),
@@ -6171,41 +6364,20 @@ WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::Obje
6171
6364
  v8::FunctionTemplate::New(isolate, &DisableVertexAttribArray)
6172
6365
  );
6173
6366
 
6174
- tmpl->Set(
6175
- ConvertToV8String(isolate, "disable"),
6176
- v8::FunctionTemplate::New(isolate, &Disable)
6177
- );
6178
-
6179
-
6180
- // tmpl->Set(
6181
- // ConvertToV8String(isolate, "drawArrays"),
6182
- // v8::FunctionTemplate::New(isolate, &DrawArrays)
6183
- // );
6367
+ SetFastMethod(isolate, tmpl, "disable", Disable, &fast_disable_,
6368
+ v8::Local<v8::Value>());
6184
6369
 
6185
6370
  SetFastMethod(isolate, tmpl, "drawArrays", DrawArrays, &fast_draw_arrays_,
6186
6371
  v8::Local<v8::Value>());
6187
6372
 
6188
6373
 
6189
- tmpl->Set(
6190
- ConvertToV8String(isolate, "drawElements"),
6191
- v8::FunctionTemplate::New(isolate, &DrawElements)
6192
- );
6193
-
6194
- tmpl->Set(
6195
- ConvertToV8String(isolate, "enableVertexAttribArray"),
6196
- v8::FunctionTemplate::New(isolate, &EnableVertexAttribArray)
6197
- );
6374
+ SetFastMethod(isolate, tmpl, "drawElements", DrawElements, &fast_draw_elements_,
6375
+ v8::Local<v8::Value>());
6198
6376
 
6199
6377
 
6200
6378
  SetFastMethod(isolate, tmpl, "enableVertexAttribArray", EnableVertexAttribArray,
6201
6379
  &fast_enable_vertex_attrib_array_, v8::Local<v8::Value>());
6202
6380
 
6203
-
6204
- // tmpl->Set(
6205
- // ConvertToV8String(isolate, "enable"),
6206
- // v8::FunctionTemplate::New(isolate, &Enable)
6207
- // );
6208
-
6209
6381
  SetFastMethod(isolate, tmpl, "enable", Enable, &fast_enable_, v8::Local<v8::Value>());
6210
6382
 
6211
6383
  tmpl->Set(
@@ -6218,16 +6390,15 @@ WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::Obje
6218
6390
  v8::FunctionTemplate::New(isolate, &Flush)
6219
6391
  );
6220
6392
 
6221
-
6222
6393
  tmpl->Set(
6223
6394
  ConvertToV8String(isolate, "framebufferRenderbuffer"),
6224
6395
  v8::FunctionTemplate::New(isolate, &FramebufferRenderbuffer)
6225
6396
  );
6226
6397
 
6227
- tmpl->Set(
6228
- ConvertToV8String(isolate, "framebufferTexture2D"),
6229
- v8::FunctionTemplate::New(isolate, &FramebufferTexture2D)
6230
- );
6398
+
6399
+ SetFastMethod(isolate, tmpl, "framebufferTexture2D", FramebufferTexture2D,
6400
+ &fast_framebuffer_texture_2d_, v8::Local<v8::Value>());
6401
+
6231
6402
 
6232
6403
  tmpl->Set(
6233
6404
  ConvertToV8String(isolate, "frontFace"),
@@ -6515,212 +6686,96 @@ WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::Obje
6515
6686
  );
6516
6687
 
6517
6688
 
6518
- tmpl->Set(
6519
- ConvertToV8String(isolate, "vertexAttrib1f"),
6520
- v8::FunctionTemplate::New(isolate, &VertexAttrib1f)
6521
- );
6689
+ SetFastMethod(isolate, tmpl, "vertexAttrib1f", VertexAttrib1f,
6690
+ &fast_vertex_attrib_1f_, v8::Local<v8::Value>());
6522
6691
 
6523
- tmpl->Set(
6524
- ConvertToV8String(isolate, "vertexAttrib1fv"),
6525
- v8::FunctionTemplate::New(isolate, &VertexAttrib1fv)
6526
- );
6692
+ SetFastMethod(isolate, tmpl, "vertexAttrib1fv", VertexAttrib1fv,
6693
+ &fast_vertex_attrib_1fv_, v8::Local<v8::Value>());
6527
6694
 
6528
- tmpl->Set(
6529
- ConvertToV8String(isolate, "vertexAttrib2f"),
6530
- v8::FunctionTemplate::New(isolate, &VertexAttrib2f)
6531
- );
6532
6695
 
6533
- tmpl->Set(
6534
- ConvertToV8String(isolate, "vertexAttrib2fv"),
6535
- v8::FunctionTemplate::New(isolate, &VertexAttrib2fv)
6536
- );
6696
+ SetFastMethod(isolate, tmpl, "vertexAttrib2f", VertexAttrib2f,
6697
+ &fast_vertex_attrib_2f_, v8::Local<v8::Value>());
6537
6698
 
6538
- tmpl->Set(
6539
- ConvertToV8String(isolate, "vertexAttrib3f"),
6540
- v8::FunctionTemplate::New(isolate, &VertexAttrib3f)
6541
- );
6699
+ SetFastMethod(isolate, tmpl, "vertexAttrib2fv", VertexAttrib2fv,
6700
+ &fast_vertex_attrib_2fv_, v8::Local<v8::Value>());
6542
6701
 
6543
- tmpl->Set(
6544
- ConvertToV8String(isolate, "vertexAttrib3fv"),
6545
- v8::FunctionTemplate::New(isolate, &VertexAttrib3fv)
6546
- );
6547
6702
 
6548
- tmpl->Set(
6549
- ConvertToV8String(isolate, "vertexAttrib4f"),
6550
- v8::FunctionTemplate::New(isolate, &VertexAttrib4f)
6551
- );
6703
+ SetFastMethod(isolate, tmpl, "vertexAttrib3f", VertexAttrib3f,
6704
+ &fast_vertex_attrib_3f_, v8::Local<v8::Value>());
6552
6705
 
6553
- tmpl->Set(
6554
- ConvertToV8String(isolate, "vertexAttrib4fv"),
6555
- v8::FunctionTemplate::New(isolate, &VertexAttrib4fv)
6556
- );
6706
+ SetFastMethod(isolate, tmpl, "vertexAttrib3fv", VertexAttrib3fv,
6707
+ &fast_vertex_attrib_3fv_, v8::Local<v8::Value>());
6557
6708
 
6558
6709
 
6559
- // tmpl->Set(
6560
- // ConvertToV8String(isolate, "vertexAttribPointer"),
6561
- // v8::FunctionTemplate::New(isolate, &VertexAttribPointer)
6562
- // );
6710
+ SetFastMethod(isolate, tmpl, "vertexAttrib4f", VertexAttrib4f,
6711
+ &fast_vertex_attrib_4f_, v8::Local<v8::Value>());
6563
6712
 
6713
+ SetFastMethod(isolate, tmpl, "vertexAttrib4fv", VertexAttrib4fv,
6714
+ &fast_vertex_attrib_4fv_, v8::Local<v8::Value>());
6564
6715
 
6565
6716
 
6566
6717
  SetFastMethod(isolate, tmpl, "vertexAttribPointer", VertexAttribPointer,
6567
- &fast_vertex_attrib_pointer, v8::Local<v8::Value>());
6568
-
6569
- // tmpl->Set(
6570
- // ConvertToV8String(isolate, "uniform1f"),
6571
- // v8::FunctionTemplate::New(isolate, &Uniform1f)
6572
- // );
6718
+ &fast_vertex_attrib_pointer_, v8::Local<v8::Value>());
6573
6719
 
6574
6720
 
6575
6721
  SetFastMethod(isolate, tmpl, "uniform1f", Uniform1f, &fast_uniform1f_, v8::Local<v8::Value>());
6576
6722
 
6577
- // tmpl->Set(
6578
- // ConvertToV8String(isolate, "uniform1iv"),
6579
- // v8::FunctionTemplate::New(isolate, &Uniform1iv)
6580
- // );
6581
6723
 
6582
6724
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform1iv", Uniform1iv,
6583
6725
  uniform_1iv_overloads_, v8::Local<v8::Value>());
6584
6726
 
6585
6727
 
6586
- // tmpl->Set(
6587
- // ConvertToV8String(isolate, "uniform1fv"),
6588
- // v8::FunctionTemplate::New(isolate, &Uniform1fv)
6589
- // );
6590
-
6591
6728
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform1fv", Uniform1fv,
6592
6729
  uniform_1fv_overloads_, v8::Local<v8::Value>());
6593
6730
 
6594
- // tmpl->Set(
6595
- // ConvertToV8String(isolate, "uniform1i"),
6596
- // v8::FunctionTemplate::New(isolate, &Uniform1i)
6597
- // );
6598
6731
 
6599
6732
  SetFastMethod(isolate, tmpl, "uniform1i", Uniform1i, &fast_uniform1i_, v8::Local<v8::Value>());
6600
6733
 
6601
6734
 
6602
- // tmpl->Set(
6603
- // ConvertToV8String(isolate, "uniform2f"),
6604
- // v8::FunctionTemplate::New(isolate, &Uniform2f)
6605
- // );
6606
-
6607
-
6608
6735
  SetFastMethod(isolate, tmpl, "uniform2f", Uniform2f, &fast_uniform2f_, v8::Local<v8::Value>());
6609
6736
 
6610
6737
 
6611
- // tmpl->Set(
6612
- // ConvertToV8String(isolate, "uniform2iv"),
6613
- // v8::FunctionTemplate::New(isolate, &Uniform2iv)
6614
- // );
6615
-
6616
-
6617
6738
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform2iv", Uniform2iv,
6618
6739
  uniform_2iv_overloads_, v8::Local<v8::Value>());
6619
6740
 
6620
6741
 
6621
- // tmpl->Set(
6622
- // ConvertToV8String(isolate, "uniform2fv"),
6623
- // v8::FunctionTemplate::New(isolate, &Uniform2fv)
6624
- // );
6625
-
6626
6742
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform2fv", Uniform2fv,
6627
6743
  uniform_2fv_overloads_, v8::Local<v8::Value>());
6628
6744
 
6629
- // tmpl->Set(
6630
- // ConvertToV8String(isolate, "uniform2i"),
6631
- // v8::FunctionTemplate::New(isolate, &Uniform2i)
6632
- // );
6633
6745
 
6634
6746
  SetFastMethod(isolate, tmpl, "uniform2i", Uniform2i, &fast_uniform2i_, v8::Local<v8::Value>());
6635
6747
 
6636
- // tmpl->Set(
6637
- // ConvertToV8String(isolate, "uniform3f"),
6638
- // v8::FunctionTemplate::New(isolate, &Uniform3f)
6639
- // );
6640
6748
 
6641
6749
  SetFastMethod(isolate, tmpl, "uniform3f", Uniform3f, &fast_uniform3f_, v8::Local<v8::Value>());
6642
6750
 
6643
- // tmpl->Set(
6644
- // ConvertToV8String(isolate, "uniform3iv"),
6645
- // v8::FunctionTemplate::New(isolate, &Uniform3iv)
6646
- // );
6647
6751
 
6648
6752
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform3iv", Uniform3iv,
6649
6753
  uniform_3iv_overloads_, v8::Local<v8::Value>());
6650
6754
 
6651
- // tmpl->Set(
6652
- // ConvertToV8String(isolate, "uniform3fv"),
6653
- // v8::FunctionTemplate::New(isolate, &Uniform3fv)
6654
- // );
6655
6755
 
6656
6756
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform3fv", Uniform3fv,
6657
6757
  uniform_3fv_overloads_, v8::Local<v8::Value>());
6658
6758
 
6659
- // tmpl->Set(
6660
- // ConvertToV8String(isolate, "uniform3i"),
6661
- // v8::FunctionTemplate::New(isolate, &Uniform3i)
6662
- // );
6663
-
6664
6759
  SetFastMethod(isolate, tmpl, "uniform3i", Uniform3i, &fast_uniform3i_, v8::Local<v8::Value>());
6665
6760
 
6666
- // tmpl->Set(
6667
- // ConvertToV8String(isolate, "uniform4f"),
6668
- // v8::FunctionTemplate::New(isolate, &Uniform4f)
6669
- // );
6670
6761
 
6671
6762
  SetFastMethod(isolate, tmpl, "uniform4f", Uniform4f, &fast_uniform4f_, v8::Local<v8::Value>());
6672
6763
 
6673
- // tmpl->Set(
6674
- // ConvertToV8String(isolate, "uniform4iv"),
6675
- // v8::FunctionTemplate::New(isolate, &Uniform4iv)
6676
- // );
6677
-
6678
6764
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform4iv", Uniform4iv,
6679
6765
  uniform_4iv_overloads_, v8::Local<v8::Value>());
6680
6766
 
6681
6767
 
6682
- // tmpl->Set(
6683
- // ConvertToV8String(isolate, "uniform4fv"),
6684
- // v8::FunctionTemplate::New(isolate, &Uniform4fv)
6685
- // );
6686
-
6687
-
6688
6768
  SetFastMethodWithOverLoads(isolate, tmpl, "uniform4fv", Uniform4fv,
6689
6769
  uniform_4fv_overloads_, v8::Local<v8::Value>());
6690
6770
 
6691
-
6692
- // tmpl->Set(
6693
- // ConvertToV8String(isolate, "uniform4i"),
6694
- // v8::FunctionTemplate::New(isolate, &Uniform4i)
6695
- // );
6696
-
6697
6771
  SetFastMethod(isolate, tmpl, "uniform4i", Uniform4i, &fast_uniform4i_, v8::Local<v8::Value>());
6698
6772
 
6699
-
6700
- // tmpl->Set(
6701
- // ConvertToV8String(isolate, "uniformMatrix2fv"),
6702
- // v8::FunctionTemplate::New(isolate, &UniformMatrix2fv)
6703
- // );
6704
-
6705
6773
  SetFastMethodWithOverLoads(isolate, tmpl, "uniformMatrix2fv", UniformMatrix2fv,
6706
6774
  uniform_matrix2fv_overloads_, v8::Local<v8::Value>());
6707
6775
 
6708
-
6709
- // tmpl->Set(
6710
- // ConvertToV8String(isolate, "uniformMatrix3fv"),
6711
- // v8::FunctionTemplate::New(isolate, &UniformMatrix3fv)
6712
- // );
6713
-
6714
-
6715
6776
  SetFastMethodWithOverLoads(isolate, tmpl, "uniformMatrix3fv", UniformMatrix3fv,
6716
6777
  uniform_matrix3fv_overloads_, v8::Local<v8::Value>());
6717
6778
 
6718
-
6719
- // tmpl->Set(
6720
- // ConvertToV8String(isolate, "uniformMatrix4fv"),
6721
- // v8::FunctionTemplate::New(isolate, &UniformMatrix4fv)
6722
- // );
6723
-
6724
6779
  SetFastMethodWithOverLoads(isolate, tmpl, "uniformMatrix4fv", UniformMatrix4fv,
6725
6780
  uniform_matrix4fv_overloads_, v8::Local<v8::Value>());
6726
6781
 
@@ -6728,22 +6783,8 @@ WebGLRenderingContext::SetMethods(v8::Isolate *isolate, const v8::Local<v8::Obje
6728
6783
  fast_use_overloads_, v8::Local<v8::Value>());
6729
6784
 
6730
6785
 
6731
- // tmpl->Set(
6732
- // ConvertToV8String(isolate, "useProgram"),
6733
- // v8::FunctionTemplate::New(isolate, &UseProgram)
6734
- // );
6735
-
6736
-
6737
- tmpl->Set(
6738
- ConvertToV8String(isolate, "validateProgram"),
6739
- v8::FunctionTemplate::New(isolate, &ValidateProgram)
6740
- );
6741
-
6742
-
6743
- // tmpl->Set(
6744
- // ConvertToV8String(isolate, "viewport"),
6745
- // v8::FunctionTemplate::New(isolate, &Viewport)
6746
- // );
6786
+ SetFastMethod(isolate, tmpl, "validateProgram", ValidateProgram, &fast_validate_program_,
6787
+ v8::Local<v8::Value>());
6747
6788
 
6748
6789
 
6749
6790
  SetFastMethod(isolate, tmpl, "viewport", Viewport, &fast_viewport_, v8::Local<v8::Value>());