Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: compiled/debug.h

Issue 29333474: Issue 4125 - [emscripten] Convert filter classes to C++ (Closed)
Left Patch Set: Replaced old filter classes unit tests completely Created Feb. 18, 2016, 4:40 p.m.
Right Patch Set: Addressed comments from Patch Set 28 Created March 21, 2017, 10:04 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « compiled/bindings.ipp ('k') | compiled/intrusive_ptr.h » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 #pragma once 1 #pragma once
2 2
3 #include <emscripten.h> 3 #include <emscripten.h>
4 #include <emscripten/trace.h> 4 #include <emscripten/trace.h>
5 5
6 #if defined(assert) 6 #if defined(assert)
7 #undef assert 7 #undef assert
8 #endif 8 #endif
9 9
10 class String; 10 class String;
11 11
12 struct console_type 12 struct console_type
13 { 13 {
14 static void log(const String& str) 14 static void log(const String& str)
15 { 15 {
16 EM_ASM_ARGS(console.log(getStringData($0)), &str); 16 EM_ASM_ARGS(console.log(readString($0)), &str);
17 } 17 }
18 18
19 static void log(int i) 19 static void log(int i)
20 { 20 {
21 EM_ASM_ARGS(console.log($0), i); 21 EM_ASM_ARGS(console.log($0), i);
22 } 22 }
23 23
24 static void log(void* ptr) 24 static void log(void* ptr)
25 { 25 {
26 EM_ASM_ARGS(console.log($0), ptr); 26 EM_ASM_ARGS(console.log($0), ptr);
27 } 27 }
28 28
29 static void error(const String& str) 29 static void error(const String& str)
30 { 30 {
31 EM_ASM_ARGS(console.error(new Error(getStringData($0)).stack), &str); 31 EM_ASM_ARGS(console.error(new Error(readString($0)).stack), &str);
32 } 32 }
33 }; 33 };
34 34
35 static console_type console; 35 static console_type console;
36 36
37 #if defined(DEBUG)
37 inline void assert(bool condition, const String& str) 38 inline void assert(bool condition, const String& str)
38 { 39 {
39 #if defined(DEBUG)
40 if (!condition) 40 if (!condition)
41 console.error(str); 41 console.error(str);
42 }
43 #else
44 #define assert(condition, str)
42 #endif 45 #endif
43 }
44 46
45 inline void annotate_address(void* address, const char* name) 47 inline void annotate_address(void* address, const char* name)
46 { 48 {
47 #if defined(__EMSCRIPTEN_TRACING__) 49 #if defined(__EMSCRIPTEN_TRACING__)
48 emscripten_trace_annotate_address_type(address, name); 50 emscripten_trace_annotate_address_type(address, name);
49 #endif 51 #endif
50 } 52 }
51 53
52 inline void enter_context(const char* context) 54 inline void enter_context(const char* context)
53 { 55 {
54 #if defined(__EMSCRIPTEN_TRACING__) 56 #if defined(__EMSCRIPTEN_TRACING__)
55 emscripten_trace_enter_context(context); 57 emscripten_trace_enter_context(context);
56 #endif 58 #endif
57 } 59 }
58 60
59 inline void exit_context() 61 inline void exit_context()
60 { 62 {
61 #if defined(__EMSCRIPTEN_TRACING__) 63 #if defined(__EMSCRIPTEN_TRACING__)
62 emscripten_trace_exit_context(); 64 emscripten_trace_exit_context();
63 #endif 65 #endif
64 } 66 }
LEFTRIGHT

Powered by Google App Engine
This is Rietveld