Como posso criar instâncias de subclasses de objetos gerenciados em uma extensão NSManagedObject Swift?

Ao criar um auxiliar de extensão paraNSManagedObject Para criar uma nova subclasse de objeto gerenciado, o swift fornece oSelf digite para imitarinstancetype o que é ótimo, mas não consigo digitar a partir deAnyObject. O código abaixo não compila com erro'AnyObject' não é conversível em 'Self'

Socorro?

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)
    }

}

questionAnswers(3)

yourAnswerToTheQuestion