forked from qt-creator/qt-creator
Debugger: Enable value priorities in LLDB interface
Change-Id: I1e96dcd0f498354d927875aaca99720ed4d3ddda Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
@@ -101,8 +101,7 @@ def stripForFormat(typeName):
|
|||||||
|
|
||||||
|
|
||||||
def registerDumper(function):
|
def registerDumper(function):
|
||||||
global qqDumpers, qqFormats, qqEditable
|
if hasattr(function, 'func_name'):
|
||||||
try:
|
|
||||||
funcname = function.func_name
|
funcname = function.func_name
|
||||||
if funcname.startswith("qdump__"):
|
if funcname.startswith("qdump__"):
|
||||||
type = funcname[7:]
|
type = funcname[7:]
|
||||||
@@ -122,8 +121,6 @@ def registerDumper(function):
|
|||||||
qqEditable[type] = function
|
qqEditable[type] = function
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def warn(message):
|
def warn(message):
|
||||||
print 'XXX={"%s"}@\n' % message.encode("latin1").replace('"', "'")
|
print 'XXX={"%s"}@\n' % message.encode("latin1").replace('"', "'")
|
||||||
@@ -547,16 +544,12 @@ class Debugger:
|
|||||||
|
|
||||||
def putValue(self, value, encoding = None, priority = 0):
|
def putValue(self, value, encoding = None, priority = 0):
|
||||||
# Higher priority values override lower ones.
|
# Higher priority values override lower ones.
|
||||||
#if priority >= self.currentValuePriority:
|
if priority >= self.currentValuePriority:
|
||||||
# self.currentValue = value
|
self.currentValue = value
|
||||||
# self.currentValuePriority = priority
|
self.currentValuePriority = priority
|
||||||
# self.currentValueEncoding = encoding
|
self.currentValueEncoding = encoding
|
||||||
if not encoding is None:
|
|
||||||
self.put('valueencoded="%d",' % encoding)
|
|
||||||
self.put('value="%s",' % value)
|
|
||||||
|
|
||||||
def putItem(self, value, tryDynamic=True):
|
def putItem(self, value, tryDynamic=True):
|
||||||
global qqDumpers
|
|
||||||
#value = value.GetDynamicValue(lldb.eDynamicCanRunTarget)
|
#value = value.GetDynamicValue(lldb.eDynamicCanRunTarget)
|
||||||
typeName = value.GetTypeName()
|
typeName = value.GetTypeName()
|
||||||
if typeName in qqDumpers:
|
if typeName in qqDumpers:
|
||||||
@@ -590,6 +583,7 @@ class Debugger:
|
|||||||
self.put('data=[')
|
self.put('data=[')
|
||||||
for value in frame.GetVariables(True, True, False, False):
|
for value in frame.GetVariables(True, True, False, False):
|
||||||
with SubItem(self, value.GetName()):
|
with SubItem(self, value.GetName()):
|
||||||
|
self.put('iname="%s",' % self.currentIName)
|
||||||
self.putItem(value)
|
self.putItem(value)
|
||||||
self.put(']')
|
self.put(']')
|
||||||
self.report('')
|
self.report('')
|
||||||
|
|||||||
Reference in New Issue
Block a user