考虑这个功能:
func doSomething ( closure: ( String, Any? ) -> Void )
{
let serialisedFunction = #function
print( serialisedFunction )
}
它将逐字打印doSomething(closure:)
大!但是如何从传递的闭包中获得并行#function
属性?
类似于:
func doSomething ( closure: ( String, Any? ) -> Void )
{
let serialisedClosure = closure.#function
print( serialisedClosure )
}
上下文:我有一个信号/事件总线,当信号/事件发生时,它会通过闭包来调用。我想为这些信号/事件创建唯一的密钥,以确保它们只被和一次收听,因此我试图根据序列化对象创建密钥,包括监听闭包。
谢谢。