Bug 91227

Summary: Web Inspector: native memory instrumentation: extract instrumentation methods into MemoryClassInfo
Product: WebKit Reporter: Ilya Tikhonovsky <loislo>
Component: Web Inspector (Deprecated)Assignee: Ilya Tikhonovsky <loislo>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, alph, apavlov, bweinstein, cmarcelo, gustavo, haraken, inferno, japhet, jochen, joepeck, keishi, loislo, macpherson, menard, pfeldman, pmuellr, rik, timothy, webkit.review.bot, xan.lopez, yurys
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on: 91261    
Bug Blocks:    
Attachments:
Description Flags
Patch
none
Patch
none
Patch pfeldman: review+

Ilya Tikhonovsky
Reported 2012-07-13 06:06:00 PDT
The API is not strong enough. I'd like to modify it. The ideal target at the moment is instrumentation code like this: void Node::visit(MemoryObjectInfo* memoryObjectInfo) const { MemoryClassInfo<Node> info(memoryObjectInfo, this, MemoryInstrumentation::DOM); info.visitBaseClass<ScriptWrappable>(this); info.visitBaseClass<AnotherBaseClass>(this); info.addMember(m_notInstrumentedPointer); // automatically detects poniter/reference info.addMember(m_notInstrumentedObject); // automatically detects poniter/reference info.addInstrumentedMember(m_next); info.addInstrumentedMember(m_previous); info.addHashSet<MemoryInstrumentation::NonClass>(m_aHash); // NonClass value_type (report only size of internal template structures) info.addHashSet<MemoryInstrumentation::NotInstrumentedClass>(m_aHashSet); // not instrumented value_type (use sizeof) info.addHashSet<MemoryInstrumentation::InstrumentedClass>(m_aHashSet); // instrumented value_type (call visit) // the same as for HashSet but for both template arguments info.addHashMap<MemoryInstrumentation::NonClass, MemoryInstrumentation::InstrumentedClass>(m_aHashSet); info.addHashMap<MemoryInstrumentation::ForwardDeclaredClass, MemoryInstrumentation::InstrumentedClass>(m_aHashSet); }
Attachments
Patch (26.17 KB, patch)
2012-07-13 06:10 PDT, Ilya Tikhonovsky
no flags
Patch (26.86 KB, patch)
2012-07-13 07:21 PDT, Ilya Tikhonovsky
no flags
Patch (26.86 KB, patch)
2012-07-13 07:34 PDT, Ilya Tikhonovsky
pfeldman: review+
Ilya Tikhonovsky
Comment 1 2012-07-13 06:10:47 PDT
Gyuyoung Kim
Comment 2 2012-07-13 06:18:33 PDT
Gustavo Noronha (kov)
Comment 3 2012-07-13 06:20:08 PDT
Early Warning System Bot
Comment 4 2012-07-13 06:31:53 PDT
Early Warning System Bot
Comment 5 2012-07-13 06:32:08 PDT
Build Bot
Comment 6 2012-07-13 07:14:28 PDT
Ilya Tikhonovsky
Comment 7 2012-07-13 07:21:35 PDT
Gyuyoung Kim
Comment 8 2012-07-13 07:29:22 PDT
Gustavo Noronha (kov)
Comment 9 2012-07-13 07:30:39 PDT
Ilya Tikhonovsky
Comment 10 2012-07-13 07:34:25 PDT
Ilya Tikhonovsky
Comment 11 2012-07-13 08:09:28 PDT
WebKit Review Bot
Comment 12 2012-07-13 10:11:12 PDT
Re-opened since this is blocked by 91261
Abhishek Arya
Comment 13 2012-07-13 10:24:57 PDT
The patch just needs to be rebaselined and recommitted.
Ilya Tikhonovsky
Comment 14 2012-07-16 04:48:31 PDT
Note You need to log in before you can comment on or make changes to this bug.