Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Side by Side Diff: Source/bindings/dart/DartDOMData.h

Issue 23895004: Keep a persistent handle for the bindings classes to avoid repeated lookups that involve performing… (Closed) Base URL: svn://svn.chromium.org/multivm/trunk/webkit
Patch Set: preassign Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 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 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 DartDOMNodeMap* nodeMap() { return &m_nodeMap; } 91 DartDOMNodeMap* nodeMap() { return &m_nodeMap; }
92 DartDOMObjectMap* objectMap() { return &m_objectMap; } 92 DartDOMObjectMap* objectMap() { return &m_objectMap; }
93 DartMessagePortMap* messagePortMap() { return &m_messagePortMap; } 93 DartMessagePortMap* messagePortMap() { return &m_messagePortMap; }
94 DartActiveDOMObjectMap* activeObjectMap() { return &m_activeObjectMap; } 94 DartActiveDOMObjectMap* activeObjectMap() { return &m_activeObjectMap; }
95 DartEventTargetMap* eventTargetMap() { return &m_eventTargetMap; } 95 DartEventTargetMap* eventTargetMap() { return &m_eventTargetMap; }
96 DartWeakCallbacks* weakCallbacks() { return &m_weakCallbacks; } 96 DartWeakCallbacks* weakCallbacks() { return &m_weakCallbacks; }
97 DartIsolateDestructionObservers* isolateDestructionObservers() { return &m_i solateDestructionObservers; } 97 DartIsolateDestructionObservers* isolateDestructionObservers() { return &m_i solateDestructionObservers; }
98 DartCustomElementMap* customElementMap() { return &m_customElementMap; } 98 DartCustomElementMap* customElementMap() { return &m_customElementMap; }
99 DartCustomElementMap* customBaseElementMap() { return &m_customBaseElementMa p; } 99 DartCustomElementMap* customBaseElementMap() { return &m_customBaseElementMa p; }
100 100
101 Vector<Dart_PersistentHandle>* classHandleCache() { return &m_classHandleCac he; }
102
101 private: 103 private:
102 ScriptExecutionContext* m_scriptExecutionContext; 104 ScriptExecutionContext* m_scriptExecutionContext;
103 bool m_isDOMEnabled; 105 bool m_isDOMEnabled;
104 int m_recursion; 106 int m_recursion;
105 DartStringCache m_stringCache; 107 DartStringCache m_stringCache;
106 RefPtr<ThreadSafeDartIsolateWrapper> m_threadSafeIsolateWrapper; 108 RefPtr<ThreadSafeDartIsolateWrapper> m_threadSafeIsolateWrapper;
107 Mutex m_isolateWrapperMutex; 109 Mutex m_isolateWrapperMutex;
108 RefPtr<DartApplicationLoader> m_applicationLoader; 110 RefPtr<DartApplicationLoader> m_applicationLoader;
109 Vector<uint8_t> m_applicationSnapshot; 111 Vector<uint8_t> m_applicationSnapshot;
110 Dart_WeakPersistentHandle m_reachableWeakHandle; 112 Dart_WeakPersistentHandle m_reachableWeakHandle;
111 113
112 DartDOMNodeMap m_nodeMap; 114 DartDOMNodeMap m_nodeMap;
113 DartDOMObjectMap m_objectMap; 115 DartDOMObjectMap m_objectMap;
114 DartMessagePortMap m_messagePortMap; 116 DartMessagePortMap m_messagePortMap;
115 DartActiveDOMObjectMap m_activeObjectMap; 117 DartActiveDOMObjectMap m_activeObjectMap;
116 DartEventTargetMap m_eventTargetMap; 118 DartEventTargetMap m_eventTargetMap;
117 DartWeakCallbacks m_weakCallbacks; 119 DartWeakCallbacks m_weakCallbacks;
118 DartIsolateDestructionObservers m_isolateDestructionObservers; 120 DartIsolateDestructionObservers m_isolateDestructionObservers;
119 DartCustomElementMap m_customElementMap; 121 DartCustomElementMap m_customElementMap;
120 DartCustomElementMap m_customBaseElementMap; 122 DartCustomElementMap m_customBaseElementMap;
123
124 Vector<Dart_PersistentHandle> m_classHandleCache;
121 }; 125 };
122 126
123 } 127 }
124 128
125 #endif // DartDOMData_h 129 #endif // DartDOMData_h
OLDNEW
« no previous file with comments | « no previous file | Source/bindings/dart/DartDOMWrapper.h » ('j') | Source/bindings/dart/DartDOMWrapper.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698