Ho implementato StringLiteralConvertible
, che si estende ExtendedGraphemeClusterLiteralConvertible
. Sembra che voglia che implementi anche questo. Quando lo faccio, però, Xcode dice che non sa che cosa è ExtendedGraphemeClusterLiteralType
. Non sono sicuro di ciò che vuole da me ...Implementazione StringLiteralConvertible su NSURL
extension NSURL : StringLiteralConvertible {
class func convertFromStringLiteral(value: StringLiteralType) -> Self {
return self(string: value)
}
class func convertFromExtendedGraphemeClusterLiteral(value: ExtendedGraphemeClusterLiteralType) -> Self {
// Use of undeclared type ExtendedGraphemeClusterLiteralType :(?
}
}
let url : NSURL = "http://apple.com"
Grazie. Insomma, tutto quello che dovevo cambiare stava usando 'STRING' invece di' 'StringLiteralType' e ExtendedGraphemeClusterLiteralType'. Questo è stato un po 'inaspettato, dal momento che mi aspettavo di dover implementare i metodi nel protocollo esattamente come apparivano nella definizione del protocollo. – Jarsen
A partire da Swift 1.1 questo non funziona più. – kareman
Il follow up per 1.1 può essere trovato qui: http://stackoverflow.com/questions/27071880/implementing-stringliteralconvertible-on-nsurl-in-swift-1-1 – hnh