Как я могу создать экземпляры подклассов управляемого объекта в расширении NSManagedObject Swift?
При создании помощника по расширениюNSManagedObject
чтобы создать новый подкласс управляемого объекта, swift предоставляетSelf
тип имитироватьinstancetype
это здорово, но я не могу показыватьAnyObject
, Приведенный ниже код не компилируется с ошибкойAnyObject не конвертируется в Self
Помогите?
extension NSManagedObject
{
class func createInContext(context:NSManagedObjectContext) -> Self {
var classname = className()
var object: AnyObject = NSEntityDescription.insertNewObjectForEntityForName(classname, inManagedObjectContext: context)
return object
}
class func className() -> String {
let classString = NSStringFromClass(self)
//Remove Swift module name
let range = classString.rangeOfString(".", options: NSStringCompareOptions.CaseInsensitiveSearch, range: Range<String.Index>(start:classString.startIndex, end: classString.endIndex), locale: nil)
return classString.substringFromIndex(range!.endIndex)
}
}