J2ObjC:将@Nullable 翻译成 __nullable
J2ObjC: translating @Nullable to __nullable
我正在尝试将 Java 可空性注释转换为 Objective-C 以获取 Swift 中的可选项,但没有任何反应,方法的签名保持不变。
这里是 Java 代码:
import javax.annotation.Nullable;
import com.google.j2objc.annotations.ObjectiveCName;
public class UserValidation {
@Nullable
@ObjectiveCName(value = "getFormattedUserId:")
public static String getFormattedUserId(@Nullable String userId) {}
}
翻译后我得到:
+ (NSString *)getFormattedUserId:(NSString *)userId;
而不是:
+ (NSString * __nullable)getFormattedUserId:(NSString * __nullable)userId;
我要这个签名罪Swift:
class func getFormattedUserId(userId: String?) -> String?
我做错了什么?
非常感谢。
@tball 评论中的答案是正确的,它添加了 --nullability
标志,使用最新资源,而不是最新版本。
更多信息here。
谢谢汤姆。
我正在尝试将 Java 可空性注释转换为 Objective-C 以获取 Swift 中的可选项,但没有任何反应,方法的签名保持不变。
这里是 Java 代码:
import javax.annotation.Nullable;
import com.google.j2objc.annotations.ObjectiveCName;
public class UserValidation {
@Nullable
@ObjectiveCName(value = "getFormattedUserId:")
public static String getFormattedUserId(@Nullable String userId) {}
}
翻译后我得到:
+ (NSString *)getFormattedUserId:(NSString *)userId;
而不是:
+ (NSString * __nullable)getFormattedUserId:(NSString * __nullable)userId;
我要这个签名罪Swift:
class func getFormattedUserId(userId: String?) -> String?
我做错了什么?
非常感谢。
@tball 评论中的答案是正确的,它添加了 --nullability
标志,使用最新资源,而不是最新版本。
更多信息here。
谢谢汤姆。