美文网首页
Swift - Mirror - Get Property

Swift - Mirror - Get Property

作者: ienos | 来源:发表于2022-07-10 14:57 被阅读0次

获取实例对象对应的属性标签和值(不包括父类属性)

let mirror = Mirror.init(reflecting: person)
mirror.children.forEach { child in
    if let label = child.label {
        print("label \(label) value \(child.value)")
    }
}

如果需要获取所有属性,需要遍历父类 mirror.superclassMirror

while let mirror = mirror.superclassMirror {
    // ... 
    mirror.children
}

获取实例对象类型 mirror.displayStyle

public enum DisplayStyle : Sendable {
    case `struct`
    case `class`
    case `enum`
    case tuple
    case optional
    case collection
    case dictionary
    case set
}

相关文章

  • Swift - Mirror - Get Property

    获取实例对象对应的属性标签和值(不包括父类属性) 如果需要获取所有属性,需要遍历父类 mirror.supercl...

  • swift property的set 、get

    swift中重写set、get方法。先定义一个内部变量,当调用set的时候,系统会有一个newValue,将new...

  • Swift中的反射Mirror

    Swift中的反射Mirror [TOC] 前言 Mirror是Swift中的反射机制,对于C#和Java开发人员...

  • iOS property相关的知识

    @property 本质 @property = 实例变量 + get方法 + set方法。get方法用来获取变量...

  • swift mirror & error

    swift Mirror Mirror Mirror 是指可以动态获取类型、成员信息,在运行时可以调用方法、属性等...

  • Property

    Property include getter and setter; you can get property ...

  • iOS 面试题(四)

    1. Property wrappers in Swift【属性包装】 官方文档 -- Property wrap...

  • 源码

    反射 Swift通过Mirror类型来提供简单的反射功能

  • Swift属性底层探究

    Swift的属性分为存储属性(Stored Property)和计算属性(Computed Property),存...

  • get_property

    使用方法: get_property var_name property [-clock clock_name ]...

网友评论

      本文标题:Swift - Mirror - Get Property

      本文链接:https://www.haomeiwen.com/subject/qrsnbrtx.html