// Objective-C API for talking to issue10788 Go package. // gobind -lang=objc issue10788 // // File is generated by gobind. Do not edit. #include "GoIssue10788.h" #include #include "seq.h" static NSString* errDomain = @"go.issue10788"; @protocol goSeqRefInterface -(GoSeqRef*) ref; @end #define _DESCRIPTOR_ "issue10788" #define _GO_issue10788_TestInterface_DESCRIPTOR_ "go.issue10788.TestInterface" #define _GO_issue10788_TestInterface_DoSomeWork_ (0x10a) #define _GO_issue10788_TestInterface_MultipleUnnamedParams_ (0x20a) @interface GoIssue10788TestInterface : NSObject { } @property(strong, readonly) id ref; - (id)initWithRef:(id)ref; - (void)DoSomeWork:(GoIssue10788TestStruct*)s; - (void)MultipleUnnamedParams:(int)p0 p1:(NSString*)p1 p2:(int64_t)p2; @end @implementation GoIssue10788TestInterface { } - (id)initWithRef:(id)ref { self = [super init]; if (self) { _ref = ref; } return self; } - (void)DoSomeWork:(GoIssue10788TestStruct*)s { GoSeq in_ = {}; GoSeq out_ = {}; go_seq_writeRef(&in_, self.ref); if ([(id)(s) isKindOfClass:[GoIssue10788TestStruct class]]) { id s_proxy = (id)(s); go_seq_writeRef(&in_, s_proxy.ref); } else { go_seq_writeObjcRef(&in_, s); } go_seq_send(_GO_issue10788_TestInterface_DESCRIPTOR_, _GO_issue10788_TestInterface_DoSomeWork_, &in_, &out_); go_seq_free(&in_); go_seq_free(&out_); } - (void)MultipleUnnamedParams:(int)p0 p1:(NSString*)p1 p2:(int64_t)p2 { GoSeq in_ = {}; GoSeq out_ = {}; go_seq_writeRef(&in_, self.ref); go_seq_writeInt(&in_, p0); go_seq_writeUTF8(&in_, p1); go_seq_writeInt64(&in_, p2); go_seq_send(_GO_issue10788_TestInterface_DESCRIPTOR_, _GO_issue10788_TestInterface_MultipleUnnamedParams_, &in_, &out_); go_seq_free(&in_); go_seq_free(&out_); } @end static void proxyGoIssue10788TestInterface(id obj, int code, GoSeq* in, GoSeq* out) { switch (code) { case _GO_issue10788_TestInterface_DoSomeWork_: { id o = (id)(obj); GoSeqRef* s_ref = go_seq_readRef(in); GoIssue10788TestStruct* s = s_ref.obj; if (s == NULL) { s = [[GoIssue10788TestStruct alloc] initWithRef:s_ref]; } [o DoSomeWork:s]; } break; case _GO_issue10788_TestInterface_MultipleUnnamedParams_: { id o = (id)(obj); int p0 = go_seq_readInt(in); NSString* p1 = go_seq_readUTF8(in); int64_t p2 = go_seq_readInt64(in); [o MultipleUnnamedParams:p0 p1:p1 p2:p2]; } break; default: NSLog(@"unknown code %x for _GO_issue10788_TestInterface_DESCRIPTOR_", code); } } #define _GO_issue10788_TestStruct_DESCRIPTOR_ "go.issue10788.TestStruct" #define _GO_issue10788_TestStruct_FIELD_Value_GET_ (0x00f) #define _GO_issue10788_TestStruct_FIELD_Value_SET_ (0x01f) @implementation GoIssue10788TestStruct { } - (id)initWithRef:(id)ref { self = [super init]; if (self) { _ref = ref; } return self; } - (NSString*)Value { GoSeq in_ = {}; GoSeq out_ = {}; go_seq_writeRef(&in_, self.ref); go_seq_send(_GO_issue10788_TestStruct_DESCRIPTOR_, _GO_issue10788_TestStruct_FIELD_Value_GET_, &in_, &out_); NSString* ret_ = go_seq_readUTF8(&out_); go_seq_free(&in_); go_seq_free(&out_); return ret_; } - (void)setValue:(NSString*)v { GoSeq in_ = {}; GoSeq out_ = {}; go_seq_writeRef(&in_, self.ref); go_seq_writeUTF8(&in_, v); go_seq_send(_GO_issue10788_TestStruct_DESCRIPTOR_, _GO_issue10788_TestStruct_FIELD_Value_SET_, &in_, &out_); go_seq_free(&in_); go_seq_free(&out_); } @end __attribute__((constructor)) static void init() { go_seq_register_proxy("go.issue10788.TestInterface", proxyGoIssue10788TestInterface); }