OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 26 matching lines...) Expand all Loading... |
37 #include "wtf/Allocator.h" | 37 #include "wtf/Allocator.h" |
38 #include <v8.h> | 38 #include <v8.h> |
39 | 39 |
40 namespace blink { | 40 namespace blink { |
41 | 41 |
42 enum ListenerLookupType { | 42 enum ListenerLookupType { |
43 ListenerFindOnly, | 43 ListenerFindOnly, |
44 ListenerFindOrCreate, | 44 ListenerFindOrCreate, |
45 }; | 45 }; |
46 | 46 |
47 // This is a container for V8EventListener objects that uses hidden properties o
f v8::Object to speed up lookups. | 47 // This is a container for V8EventListener objects that uses hidden properties |
| 48 // of v8::Object to speed up lookups. |
48 class V8EventListenerHelper { | 49 class V8EventListenerHelper { |
49 STATIC_ONLY(V8EventListenerHelper); | 50 STATIC_ONLY(V8EventListenerHelper); |
50 | 51 |
51 public: | 52 public: |
52 static V8EventListener* existingEventListener(v8::Local<v8::Value> value, | 53 static V8EventListener* existingEventListener(v8::Local<v8::Value> value, |
53 ScriptState* scriptState) { | 54 ScriptState* scriptState) { |
54 DCHECK(scriptState->isolate()->InContext()); | 55 DCHECK(scriptState->isolate()->InContext()); |
55 if (!value->IsObject()) | 56 if (!value->IsObject()) |
56 return nullptr; | 57 return nullptr; |
57 | 58 |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 if (listener) | 118 if (listener) |
118 V8HiddenValue::setHiddenValue(scriptState, object, listenerProperty, | 119 V8HiddenValue::setHiddenValue(scriptState, object, listenerProperty, |
119 v8::External::New(isolate, listener)); | 120 v8::External::New(isolate, listener)); |
120 | 121 |
121 return listener; | 122 return listener; |
122 } | 123 } |
123 | 124 |
124 } // namespace blink | 125 } // namespace blink |
125 | 126 |
126 #endif // V8EventListenerHelper_h | 127 #endif // V8EventListenerHelper_h |
OLD | NEW |