OLD | NEW |
1 {% filter format_blink_cpp_source_code %} | 1 {% filter format_blink_cpp_source_code %} |
2 | 2 |
3 {% include 'copyright_block.txt' %} | 3 {% include 'copyright_block.txt' %} |
4 #ifndef {{cpp_class}}_h | 4 #ifndef {{cpp_class}}_h |
5 #define {{cpp_class}}_h | 5 #define {{cpp_class}}_h |
6 | 6 |
7 {% for filename in header_includes %} | 7 {% for filename in header_includes %} |
8 #include "{{filename}}" | 8 #include "{{filename}}" |
9 {% endfor %} | 9 {% endfor %} |
10 | 10 |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 {{exported}}static void toImpl(v8::Isolate*, v8::Local<v8::Value>, {{cpp_class
}}&, UnionTypeConversionMode, ExceptionState&); | 53 {{exported}}static void toImpl(v8::Isolate*, v8::Local<v8::Value>, {{cpp_class
}}&, UnionTypeConversionMode, ExceptionState&); |
54 }; | 54 }; |
55 | 55 |
56 {{exported}}v8::Local<v8::Value> ToV8(const {{cpp_class}}&, v8::Local<v8::Object
>, v8::Isolate*); | 56 {{exported}}v8::Local<v8::Value> ToV8(const {{cpp_class}}&, v8::Local<v8::Object
>, v8::Isolate*); |
57 | 57 |
58 template <class CallbackInfo> | 58 template <class CallbackInfo> |
59 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, {{cpp_class}}& im
pl) { | 59 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, {{cpp_class}}& im
pl) { |
60 v8SetReturnValue(callbackInfo, ToV8(impl, callbackInfo.Holder(), callbackInfo.
GetIsolate())); | 60 v8SetReturnValue(callbackInfo, ToV8(impl, callbackInfo.Holder(), callbackInfo.
GetIsolate())); |
61 } | 61 } |
62 | 62 |
| 63 template <class CallbackInfo> |
| 64 inline void v8SetReturnValue(const CallbackInfo& callbackInfo, {{cpp_class}}& im
pl, v8::Local<v8::Object> creationContext) { |
| 65 v8SetReturnValue(callbackInfo, ToV8(impl, creationContext, callbackInfo.GetIso
late())); |
| 66 } |
| 67 |
63 template <> | 68 template <> |
64 struct NativeValueTraits<{{cpp_class}}> { | 69 struct NativeValueTraits<{{cpp_class}}> { |
65 {{exported}}static {{cpp_class}} nativeValue(v8::Isolate*, v8::Local<v8::Value
>, ExceptionState&); | 70 {{exported}}static {{cpp_class}} nativeValue(v8::Isolate*, v8::Local<v8::Value
>, ExceptionState&); |
66 }; | 71 }; |
67 | 72 |
68 } // namespace blink | 73 } // namespace blink |
69 | 74 |
70 // We need to set canInitializeWithMemset=true because HeapVector supports | 75 // We need to set canInitializeWithMemset=true because HeapVector supports |
71 // items that can initialize with memset or have a vtable. It is safe to | 76 // items that can initialize with memset or have a vtable. It is safe to |
72 // set canInitializeWithMemset=true for a union type object in practice. | 77 // set canInitializeWithMemset=true for a union type object in practice. |
73 // See https://codereview.chromium.org/1118993002/#msg5 for more details. | 78 // See https://codereview.chromium.org/1118993002/#msg5 for more details. |
74 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::{{cpp_class}}); | 79 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::{{cpp_class}}); |
75 | 80 |
76 #endif // {{cpp_class}}_h | 81 #endif // {{cpp_class}}_h |
77 | 82 |
78 {% endfilter %}{# format_blink_cpp_source_code #} | 83 {% endfilter %}{# format_blink_cpp_source_code #} |
OLD | NEW |