mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-05 07:08:48 +00:00
68 lines
2.2 KiB
Odin
68 lines
2.2 KiB
Odin
package objc_Foundation
|
|
|
|
foreign import "system:Foundation.framework"
|
|
|
|
ErrorDomain :: ^String
|
|
|
|
foreign Foundation {
|
|
CocoaErrorDomain: ErrorDomain
|
|
POSIXErrorDomain: ErrorDomain
|
|
OSStatusErrorDomain: ErrorDomain
|
|
MachErrorDomain: ErrorDomain
|
|
}
|
|
|
|
ErrorUserInfoKey :: ^String
|
|
|
|
foreign Foundation {
|
|
UnderlyingErrorKey: ErrorUserInfoKey
|
|
LocalizedDescriptionKey: ErrorUserInfoKey
|
|
LocalizedFailureReasonErrorKey: ErrorUserInfoKey
|
|
LocalizedRecoverySuggestionErrorKey: ErrorUserInfoKey
|
|
LocalizedRecoveryOptionsErrorKey: ErrorUserInfoKey
|
|
RecoveryAttempterErrorKey: ErrorUserInfoKey
|
|
HelpAnchorErrorKey: ErrorUserInfoKey
|
|
DebugDescriptionErrorKey: ErrorUserInfoKey
|
|
LocalizedFailureErrorKey: ErrorUserInfoKey
|
|
StringEncodingErrorKey: ErrorUserInfoKey
|
|
URLErrorKey: ErrorUserInfoKey
|
|
FilePathErrorKey: ErrorUserInfoKey
|
|
}
|
|
|
|
@(objc_class="NSError")
|
|
Error :: struct { using _: Copying(Error) }
|
|
|
|
Error_errorWithDomain :: proc(domain: ErrorDomain, code: Integer, userInfo: ^Dictionary) -> ^Error {
|
|
return msgSend(^Error, Error, "errorWithDomain:code:userInfo:", domain, code, userInfo)
|
|
}
|
|
|
|
Error_initWithDomain :: proc(self: ^Error, domain: ErrorDomain, code: Integer, userInfo: ^Dictionary) -> ^Error {
|
|
return msgSend(^Error, self, "initWithDomain:code:userInfo:", domain, code, userInfo)
|
|
}
|
|
|
|
Error_code :: proc(self: ^Error) -> Integer {
|
|
return msgSend(Integer, self, "code")
|
|
}
|
|
|
|
Error_domain :: proc(self: ^Error) -> ErrorDomain {
|
|
return msgSend(ErrorDomain, self, "domain")
|
|
}
|
|
|
|
Error_userInfo :: proc(self: ^Error) -> ^Dictionary {
|
|
return msgSend(^Dictionary, self, "userInfo")
|
|
}
|
|
|
|
Error_localizedDescription :: proc(self: ^Error) -> ^String {
|
|
return msgSend(^String, self, "localizedDescription")
|
|
}
|
|
|
|
Error_localizedRecoveryOptions :: proc(self: ^Error) -> (options: ^Array(^Object)) {
|
|
return msgSend(type_of(options), self, "localizedRecoveryOptions")
|
|
}
|
|
|
|
Error_localizedRecoverySuggestion :: proc(self: ^Error) -> ^String {
|
|
return msgSend(^String, self, "localizedRecoverySuggestion")
|
|
}
|
|
|
|
Error_localizedFailureReason :: proc(self: ^Error) -> ^String {
|
|
return msgSend(^String, self, "localizedFailureReason")
|
|
} |