From Xcode 10.2 onwards, these annotations are required in all interface declarations. The behaviour can be disabled, but since we were already annotated most types it made sense to just annotate the rest. Change-Id: Iacd09a2fea4dfb3e22fec97cf4ca22966fc783bf GitHub-Last-Rev: a431572a83ea8b29f55813bcdafc9a00f8d15972 GitHub-Pull-Request: golang/mobile#29 Reviewed-on: https://go-review.googlesource.com/c/mobile/+/171957 Reviewed-by: Elias Naur <mail@eliasnaur.com>
106 lines
2.6 KiB
Plaintext
106 lines
2.6 KiB
Plaintext
// Objective-C API for talking to issue10788 Go package.
|
|
// gobind -lang=objc issue10788
|
|
//
|
|
// File is generated by gobind. Do not edit.
|
|
|
|
#include <Foundation/Foundation.h>
|
|
#include "seq.h"
|
|
#include "_cgo_export.h"
|
|
#include "Issue10788.objc.h"
|
|
|
|
|
|
@implementation Issue10788TestStruct {
|
|
}
|
|
|
|
- (nonnull instancetype)initWithRef:(_Nonnull id)ref {
|
|
self = [super init];
|
|
if (self) { __ref = ref; }
|
|
return self;
|
|
}
|
|
|
|
- (nonnull instancetype)init {
|
|
self = [super init];
|
|
if (self) {
|
|
__ref = go_seq_from_refnum(new_issue10788_TestStruct());
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (NSString* _Nonnull)value {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
nstring r0 = proxyissue10788_TestStruct_Value_Get(refnum);
|
|
NSString *_r0 = go_seq_to_objc_string(r0);
|
|
return _r0;
|
|
}
|
|
|
|
- (void)setValue:(NSString* _Nonnull)v {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
nstring _v = go_seq_from_objc_string(v);
|
|
proxyissue10788_TestStruct_Value_Set(refnum, _v);
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
@implementation Issue10788TestInterface {
|
|
}
|
|
|
|
- (nonnull instancetype)initWithRef:(id)ref {
|
|
self = [super init];
|
|
if (self) { __ref = ref; }
|
|
return self;
|
|
}
|
|
|
|
- (void)doSomeWork:(Issue10788TestStruct* _Nullable)s {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
int32_t _s;
|
|
if ([s conformsToProtocol:@protocol(goSeqRefInterface)]) {
|
|
id<goSeqRefInterface> s_proxy = (id<goSeqRefInterface>)(s);
|
|
_s = go_seq_go_to_refnum(s_proxy._ref);
|
|
} else {
|
|
_s = go_seq_to_refnum(s);
|
|
}
|
|
proxyissue10788_TestInterface_DoSomeWork(refnum, _s);
|
|
}
|
|
|
|
- (void)multipleUnnamedParams:(long)p0 p1:(NSString* _Nullable)p1 日本:(int64_t)日本 {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
nint _p0 = (nint)p0;
|
|
nstring _p1 = go_seq_from_objc_string(p1);
|
|
int64_t _日本 = (int64_t)日本;
|
|
proxyissue10788_TestInterface_MultipleUnnamedParams(refnum, _p0, _p1, _日本);
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
|
|
void cproxyissue10788_TestInterface_DoSomeWork(int32_t refnum, int32_t s) {
|
|
@autoreleasepool {
|
|
Issue10788TestInterface* o = go_seq_objc_from_refnum(refnum);
|
|
Issue10788TestStruct* _s = nil;
|
|
GoSeqRef* _s_ref = go_seq_from_refnum(s);
|
|
if (_s_ref != NULL) {
|
|
_s = _s_ref.obj;
|
|
if (_s == nil) {
|
|
_s = [[Issue10788TestStruct alloc] initWithRef:_s_ref];
|
|
}
|
|
}
|
|
[o doSomeWork:_s];
|
|
}
|
|
}
|
|
|
|
void cproxyissue10788_TestInterface_MultipleUnnamedParams(int32_t refnum, nint p0, nstring p1, int64_t 日本) {
|
|
@autoreleasepool {
|
|
Issue10788TestInterface* o = go_seq_objc_from_refnum(refnum);
|
|
long _p0 = (long)p0;
|
|
NSString *_p1 = go_seq_to_objc_string(p1);
|
|
int64_t _日本 = (int64_t)日本;
|
|
[o multipleUnnamedParams:_p0 p1:_p1 日本:_日本];
|
|
}
|
|
}
|
|
|
|
__attribute__((constructor)) static void init() {
|
|
init_seq();
|
|
}
|