2012-03-28 10:16:50 +08:00
|
|
|
"""
|
|
|
|
LLDB AppKit formatters
|
|
|
|
|
2019-01-19 16:50:56 +08:00
|
|
|
Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
|
|
See https://llvm.org/LICENSE.txt for license information.
|
|
|
|
SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
2012-03-28 10:16:50 +08:00
|
|
|
"""
|
|
|
|
import lldb
|
2012-04-25 09:39:27 +08:00
|
|
|
import lldb.runtime.objc.objc_runtime
|
|
|
|
import lldb.formatters.Logger
|
2012-03-28 10:16:50 +08:00
|
|
|
|
|
|
|
|
2016-09-07 04:57:50 +08:00
|
|
|
def Class_Summary(valobj, dict):
|
|
|
|
logger = lldb.formatters.Logger.Logger()
|
|
|
|
runtime = lldb.runtime.objc.objc_runtime.ObjCRuntime.runtime_from_isa(
|
|
|
|
valobj)
|
|
|
|
if runtime is None or not runtime.is_valid():
|
|
|
|
return '<error: unknown Class>'
|
|
|
|
class_data = runtime.read_class_data()
|
|
|
|
if class_data is None or not class_data.is_valid():
|
|
|
|
return '<error: unknown Class>'
|
|
|
|
return class_data.class_name()
|