// Objective-C API for talking to issue12403 Go package. // gobind -lang=objc issue12403 // // File is generated by gobind. Do not edit. #include #include "seq.h" #include "_cgo_export.h" #include "Issue12403.objc.h" @implementation Issue12403Parsable { } - (nonnull instancetype)initWithRef:(id)ref { self = [super init]; if (self) { __ref = ref; } return self; } - (NSString* _Nonnull)fromJSON:(NSString* _Nullable)jstr { int32_t refnum = go_seq_go_to_refnum(self._ref); nstring _jstr = go_seq_from_objc_string(jstr); nstring r0 = proxyissue12403_Parsable_FromJSON(refnum, _jstr); NSString *_ret0_ = go_seq_to_objc_string(r0); return _ret0_; } - (NSString* _Nonnull)toJSON:(NSError* _Nullable* _Nullable)error { int32_t refnum = go_seq_go_to_refnum(self._ref); struct proxyissue12403_Parsable_ToJSON_return res = proxyissue12403_Parsable_ToJSON(refnum); NSString *_ret0_ = go_seq_to_objc_string(res.r0); Universeerror* _error = nil; GoSeqRef* _error_ref = go_seq_from_refnum(res.r1); if (_error_ref != NULL) { _error = _error_ref.obj; if (_error == nil) { _error = [[Universeerror alloc] initWithRef:_error_ref]; } } if (_error != nil && error != nil) { *error = _error; } if (_error != nil) { return nil; } return _ret0_; } @end nstring cproxyissue12403_Parsable_FromJSON(int32_t refnum, nstring jstr) { @autoreleasepool { Issue12403Parsable* o = go_seq_objc_from_refnum(refnum); NSString *_jstr = go_seq_to_objc_string(jstr); NSString* _Nonnull ret0_; ret0_ = [o fromJSON:_jstr]; nstring _ret0_ = go_seq_from_objc_string(ret0_); return _ret0_; } } struct cproxyissue12403_Parsable_ToJSON_return cproxyissue12403_Parsable_ToJSON(int32_t refnum) { @autoreleasepool { Issue12403Parsable* o = go_seq_objc_from_refnum(refnum); NSString* _Nonnull ret0_; NSError* error = nil; ret0_ = [o toJSON:&error]; nstring _ret0_ = go_seq_from_objc_string(ret0_); NSError *_error = nil; if (error != nil) { _error = error; } int32_t __error; if ([_error conformsToProtocol:@protocol(goSeqRefInterface)]) { id _error_proxy = (id)(_error); __error = go_seq_go_to_refnum(_error_proxy._ref); } else { __error = go_seq_to_refnum(_error); } cproxyissue12403_Parsable_ToJSON_return _sres = { _ret0_, __error }; return _sres; } } __attribute__((constructor)) static void init() { init_seq(); }