MCPcopy Create free account
hub / github.com/HaxeFoundation/hxcpp / createGlobalBuiltin

Function createGlobalBuiltin

src/hx/cppia/GlobalBuiltin.cpp:347–398  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

345
346
347CppiaExpr *createGlobalBuiltin(CppiaExpr *src, String function, Expressions &ioExpressions )
348{
349 MEMORY_INT(__hxcpp_memory_get_byte, __hxcpp_memory_set_byte);
350 MEMORY_INT(__hxcpp_memory_get_i32, __hxcpp_memory_set_i32);
351 MEMORY_INT(__hxcpp_memory_get_ui32, __hxcpp_memory_set_ui32);
352 MEMORY_INT(__hxcpp_memory_get_i16, __hxcpp_memory_set_i16);
353 MEMORY_INT(__hxcpp_memory_get_ui16, __hxcpp_memory_set_ui16);
354
355 if (function==HX_CSTRING("__hxcpp_memory_get_float") )
356 {
357 if (ioExpressions.size()==1)
358 return new FloatBuiltin1<int,float,__hxcpp_memory_get_float>(src,ioExpressions);
359 return new FloatBuiltin2<Array<unsigned char>,int,float,__hxcpp_memory_get_float>(src,ioExpressions);
360 }
361 if (function==HX_CSTRING("__hxcpp_memory_set_float") )
362 {
363 if (ioExpressions.size()==2)
364 return new VoidBuiltin2<int,float,__hxcpp_memory_set_float>(src,ioExpressions);
365 return new VoidBuiltin3<Array<unsigned char>,int,float,__hxcpp_memory_set_float>(src,ioExpressions);
366 }
367
368 if (function==HX_CSTRING("__hxcpp_memory_get_double") )
369 {
370 if (ioExpressions.size()==1)
371 return new FloatBuiltin1<int,double,__hxcpp_memory_get_double>(src,ioExpressions);
372 return new FloatBuiltin2<Array<unsigned char>,int,double,__hxcpp_memory_get_double>(src,ioExpressions);
373 }
374 if (function==HX_CSTRING("__hxcpp_memory_set_double") )
375 {
376 if (ioExpressions.size()==2)
377 return new VoidBuiltin2<int,double,__hxcpp_memory_set_double>(src,ioExpressions);
378 return new VoidBuiltin3<Array<unsigned char>,int,double,__hxcpp_memory_set_double>(src,ioExpressions);
379 }
380 if (function==HX_CSTRING("__time_stamp") )
381 {
382 if (ioExpressions.size()==0)
383 return new FloatBuiltin0<double,__time_stamp>(src,ioExpressions);
384 }
385 if (function==HX_CSTRING("__hxcpp_thread_create") )
386 {
387 if (ioExpressions.size()==1)
388#if (HXCPP_API_LEVEL>=500)
389 return new ObjectBuiltin1<hx::Callable<void(void)>, hx::thread::Thread, hx::thread::Thread_obj::create>(src, ioExpressions);
390#else
391 return new ObjectBuiltin1<Dynamic, Dynamic, __hxcpp_thread_create>(src, ioExpressions);
392#endif
393 }
394
395 printf("Unknown function : %s(%d)\n", function.out_str(), (int)ioExpressions.size() );
396 throw (HX_CSTRING("Unknown global:") + function).utf8_str();
397 return 0;
398}
399
400
401

Callers 1

linkMethod · 0.85

Calls 2

utf8_strMethod · 0.80
sizeMethod · 0.45

Tested by

no test coverage detected