File indexing completed on 2024-05-12 04:40:07
0001 # 0002 # LLDB data formatters for Qt types 0003 # 0004 # SPDX-FileCopyrightText: 2016 Aetf <aetf@unlimitedcodeworks.xyz> 0005 # 0006 # SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0007 # 0008 0009 def __lldb_init_module(debugger, unused): 0010 debugger.HandleCommand('type summary add KDevelop::Path -w kdevelop-kde -F kde.KDevPathSummaryProvider') 0011 debugger.HandleCommand('type summary add KTextEditor::Cursor -w kdevelop-kde -F kde.KTextEditorCursorSummaryProvider') # noqa: E501 0012 debugger.HandleCommand('type summary add KTextEditor::Range -w kdevelop-kde -F kde.KTextEditorRangeSummaryProvider') 0013 0014 debugger.HandleCommand('type category enable kdevelop-kde') 0015 0016 0017 def KDevPathSummaryProvider(valobj, internal_dict): 0018 segments = [seg.GetSummary() for seg in valobj.GetChildMemberWithName('m_data')] 0019 return '(' + ', '.join(segments) + ')' if segments else None 0020 0021 0022 def KTextEditorCursorSummaryProvider(valobj, internal_dict): 0023 line = valobj.GetChildMemberWithName('m_line').GetValueAsUnsigned(0) 0024 col = valobj.GetChildMemberWithName('m_column').GetValueAsUnsigned(0) 0025 return '({}, {})'.format(line, col) 0026 0027 0028 def KTextEditorRangeSummaryProvider(valobj, internal_dict): 0029 start = valobj.GetChildMemberWithName('m_start') 0030 end = valobj.GetChildMemberWithName('m_end') 0031 0032 st_line = start.GetChildMemberWithName('m_line').GetValueAsUnsigned(0) 0033 st_col = start.GetChildMemberWithName('m_column').GetValueAsUnsigned(0) 0034 ed_line = end.GetChildMemberWithName('m_line').GetValueAsUnsigned(0) 0035 ed_col = end.GetChildMemberWithName('m_column').GetValueAsUnsigned(0) 0036 return '[({}, {}) -> ({}, {})]'.format(st_line, st_col, ed_line, ed_col)