Error when using Generic as property type in Swift

前端 未结 3 1350
清歌不尽
清歌不尽 2021-01-05 17:46

I\'m having an issue when using a Generic as the type constraint on a property. Here is a very simple example:

import UIKit

class TSSignal

        
3条回答
  •  野趣味
    野趣味 (楼主)
    2021-01-05 18:28

    There is a workaround without type erasure (works as of Xcode6-Beta2):

    import UIKit
    
    class TSSignal {
        var _message: [MessageType] = []
    
        func getMessage() -> MessageType? {
            if _message.count > 0 {
                return _message[0]
            } else {
                return nil
            }
        }
    
        func setMessage(maybeMessage: MessageType?) {
            if let message = maybeMessage {
                _message = [message]
            } else {
                _message = []
            }
        }
    
        init() {
        }
    }
    

提交回复
热议问题