我在 Swift 中使用 Objective-git,无法编译 GTRepository.createCommitWithTree 方法。
可以选择在没有 author : GTSignature 和 committer : GTSignature 参数的情况下调用该方法。
我是 Swift 和重载函数的新手。我想知道如何构造它以便编译。
我的代码使用了 Objective-git 方法中指定的所有类型:
func commitTree ( tree : GTTree ) {
let message : NSString
let author : GTSignature
let committer : GTSignature
let parents : NSArray
let updatingReferenceNamed : NSString
var error : NSError?
GTRepository.createCommitWithTree( tree, message, author, committer, parents, updatingReferenceNamed, &error )
}
在此代码中,编译器无法使用这些类型的参数列表调用方法。编译器提供了附加信息:“'createCommitWithTree' 的重载存在这些部分匹配的参数列表:(GTTree,消息:String,作者:GTSignature,提交者:GTSignature,父母:[AnyObject]?,updatedReferenceNamed:String?),(GTTree,消息:字符串,父母:[AnyObject]?,更新参考名称:字符串?)”
如果我重构使用上面建议的类型,编译器将不会使用“对成员'createCommitWithTree'的模糊引用”进行编译
我如何编写这个来编译?
谢谢