Объект не полностью инициализируется при сбое super.init
, в этом случае также должен произойти сбой вашего инициализатора.
Самое простое решение было бы сделать это throw
ing:
public class MyRegex : NSRegularExpression {
public init(pattern: String) throws {
try super.init(pattern: pattern)
// ...
}
}
Или как неисправный инициализатор:
public class MyRegex : NSRegularExpression {
public init?(pattern: String) {
do {
try super.init(pattern: pattern)
} catch {
print("error parsing pattern:", error.localizedDescription)
return nil
}
// ...
}
}