我有一个带签名的方法:
func relatedObject<T: SomeType>(for type: T.Type) -> SomeRelatedObject
我有一个SomeType.Type
变量,我想以某种方式调用该方法,例如:
let typeVariable: SomeType.Type = ...
let result = relatedObject(for: typeVariable)
但是我收到了错误:
Cannot invoke 'relatedObject' with an argument list of type '(for: SomeType.Type)'
是否有可能以某种方式实际调用方法?
答案 0 :(得分:0)
您需要像这样调用它
relatedObject(for: CustomClass.self)
在这里,您可以传递符合SomeType的任何类/结构,而不是SomeType。假设您的CustomClass符合SomeType,那么您可以像
一样传递它@PreAuthorize("@securityManager.check(#uuid)")
@GetMapping(path = URL_SUBMISSION_ID)
@ControllerLogging
public Object showSomething(@PathVariable(value = "submissionId") UUID submissionId) {
return getData();
}