| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 #pragma once | 
|  | 2 | 
|  | 3 #include <emscripten.h> | 
|  | 4 #include <emscripten/trace.h> | 
|  | 5 | 
|  | 6 #if defined(assert) | 
|  | 7 #undef assert | 
|  | 8 #endif | 
|  | 9 | 
|  | 10 class String; | 
|  | 11 | 
|  | 12 struct console_type | 
|  | 13 { | 
|  | 14   static void log(const String& str) | 
|  | 15   { | 
|  | 16     EM_ASM_ARGS(console.log(getStringData($0)), &str); | 
|  | 17   } | 
|  | 18 | 
|  | 19   static void log(int i) | 
|  | 20   { | 
|  | 21     EM_ASM_ARGS(console.log($0), i); | 
|  | 22   } | 
|  | 23 | 
|  | 24   static void log(void* ptr) | 
|  | 25   { | 
|  | 26     EM_ASM_ARGS(console.log($0), ptr); | 
|  | 27   } | 
|  | 28 | 
|  | 29   static void error(const String& str) | 
|  | 30   { | 
|  | 31     EM_ASM_ARGS(console.error(new Error(getStringData($0)).stack), &str); | 
|  | 32   } | 
|  | 33 }; | 
|  | 34 | 
|  | 35 static console_type console; | 
|  | 36 | 
|  | 37 #if defined(DEBUG) | 
|  | 38 inline void assert(bool condition, const String& str) | 
|  | 39 { | 
|  | 40   if (!condition) | 
|  | 41     console.error(str); | 
|  | 42 } | 
|  | 43 #else | 
|  | 44 #define assert(condition, str) | 
|  | 45 #endif | 
|  | 46 | 
|  | 47 inline void annotate_address(void* address, const char* name) | 
|  | 48 { | 
|  | 49 #if defined(__EMSCRIPTEN_TRACING__) | 
|  | 50   emscripten_trace_annotate_address_type(address, name); | 
|  | 51 #endif | 
|  | 52 } | 
|  | 53 | 
|  | 54 inline void enter_context(const char* context) | 
|  | 55 { | 
|  | 56 #if defined(__EMSCRIPTEN_TRACING__) | 
|  | 57   emscripten_trace_enter_context(context); | 
|  | 58 #endif | 
|  | 59 } | 
|  | 60 | 
|  | 61 inline void exit_context() | 
|  | 62 { | 
|  | 63 #if defined(__EMSCRIPTEN_TRACING__) | 
|  | 64   emscripten_trace_exit_context(); | 
|  | 65 #endif | 
|  | 66 } | 
| OLD | NEW | 
|---|