Summary: | LLDB: add synthetic provider for WTF::HashTable | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Jer Noble <jer.noble> | ||||
Component: | New Bugs | Assignee: | Jer Noble <jer.noble> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | andersca, beidson, mitz | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Jer Noble
2013-02-01 15:49:50 PST
Created attachment 186176 [details]
Patch
Comment on attachment 186176 [details]
Patch
Wow, neat. Tell us how to use this!
Thanks! There are some short instructions at the top of the lldb_webkit.py file: LLDB Support for WebKit Types Add the following to your ~/.lldbinit file to add WebKit Type summaries in LLDB and Xcode: command script import {Path to WebKit Root}/Tools/lldb/lldb_webkit.py (You can also paste that command into into a running LLDB session.) You'll need to restart Xcode after updating this file, but once you do, the Xcode variables view will allow you to inspect the contents of a HashTable, i.e. it will act as if the HashTable variable was an array of length var.m_tableSize. Example from command-line lldb: (lldb) p foo.m_impl (WTF::HashSet<const char *, WTF::PtrHash<const char *>, WTF::HashTraits<const char> >::HashTableType) $0 = { tableSize = 64, keyCount = 3 } { (const char *) [0] = 0x0000000000000000 (const char *) [1] = 0x0000000000000000 (const char *) [2] = 0x0000000000000000 (const char *) [3] = 0x0000000000000000 (const char *) [4] = 0x0000000000000000 Committed r141666: <http://trac.webkit.org/changeset/141666> |