Java classes must explicitly declare implemented interfaces. Bind already declares all such interfaces within each package. Expand the set of interfaces to include all bound packages. In addition, let Java interfaces extend all possible interfaces in the same way as Java classes. To avoid circular references, only let interfaces extend compatible interfaces with fewer methods. Before, each package was imported in its own importer, breaking the assumption of types.AssignableTo that identical packages have identical *types.Package. Fix that by using one importer for all bound packages, replacing package path equality checks with direct equality checks. While we're here, add missing arguments to a few error messages. Change-Id: I5eb58972a3abe918862ca99d5a203809699a3433 Reviewed-on: https://go-review.googlesource.com/20987 Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
26 lines
630 B
Plaintext
26 lines
630 B
Plaintext
// Objective-C API for talking to interfaces Go package.
|
|
// gobind -lang=objc interfaces
|
|
//
|
|
// File is generated by gobind. Do not edit.
|
|
|
|
#ifndef __interfaces_H__
|
|
#define __interfaces_H__
|
|
|
|
#include <stdint.h>
|
|
#include <objc/objc.h>
|
|
nstring cproxyinterfaces_Error_Err(int32_t refnum);
|
|
|
|
int32_t cproxyinterfaces_I_Rand(int32_t refnum);
|
|
|
|
int32_t cproxyinterfaces_I3_F(int32_t refnum);
|
|
|
|
void cproxyinterfaces_LargerI_AnotherFunc(int32_t refnum);
|
|
|
|
int32_t cproxyinterfaces_LargerI_Rand(int32_t refnum);
|
|
|
|
int32_t cproxyinterfaces_SameI_Rand(int32_t refnum);
|
|
|
|
void cproxyinterfaces_WithParam_HasParam(int32_t refnum, char p0);
|
|
|
|
#endif
|