2
0
mirror of synced 2025-02-23 14:58:12 +00:00
mobile/bind/testdata/vars.java.golden
Elias Naur 3f7b83ffd4 bind: generate Java constructors for every exported struct
A recent CL added Java constructors to generated classes that extends
or implements other Java classes and interfaces. Constructors for a
struct S are Go functions on the form

func NewS...(...) *S

If no such constructors exists, a default empty constructor is
generated.

Expand that to cover every exported Go struct.

Fixes golang/go#17086

Change-Id: I910aba13d5884c3f67c946c62a8ac4a3db8e2ea7
Reviewed-on: https://go-review.googlesource.com/29710
Reviewed-by: David Crawshaw <crawshaw@golang.org>
2016-10-05 07:47:24 +00:00

129 lines
3.2 KiB
Plaintext

// Java class go.vars.S is a proxy for talking to a Go program.
// gobind -lang=java vars
//
// File is generated by gobind. Do not edit.
package go.vars;
import go.Seq;
public final class S implements Seq.Proxy, I {
static { Vars.touch(); }
private final Seq.Ref ref;
@Override public final int incRefnum() {
int refnum = ref.refnum;
Seq.incGoRef(refnum);
return refnum;
}
S(Seq.Ref ref) { this.ref = ref; }
public S() { this.ref = __New(); }
private static native Seq.Ref __New();
@Override public boolean equals(Object o) {
if (o == null || !(o instanceof S)) {
return false;
}
S that = (S)o;
return true;
}
@Override public int hashCode() {
return java.util.Arrays.hashCode(new Object[] {});
}
@Override public String toString() {
StringBuilder b = new StringBuilder();
b.append("S").append("{");
return b.append("}").toString();
}
}
// Java class go.vars.I is a proxy for talking to a Go program.
// gobind -lang=java vars
//
// File is generated by gobind. Do not edit.
package go.vars;
import go.Seq;
public interface I {
}
// Java class go.vars.Vars is a proxy for talking to a Go program.
// gobind -lang=java vars
//
// File is generated by gobind. Do not edit.
package go.vars;
import go.Seq;
public abstract class Vars {
static {
Seq.touch(); // for loading the native library
_init();
}
private Vars() {} // uninstantiable
// touch is called from other bound packages to initialize this package
public static void touch() {}
private static native void _init();
private static final class proxyI implements Seq.Proxy, I {
private final Seq.Ref ref;
@Override public final int incRefnum() {
int refnum = ref.refnum;
Seq.incGoRef(refnum);
return refnum;
}
proxyI(Seq.Ref ref) { this.ref = ref; }
}
public static native void setABool(boolean v);
public static native boolean getABool();
public static native void setAFloat(double v);
public static native double getAFloat();
public static native void setAFloat32(float v);
public static native float getAFloat32();
public static native void setAFloat64(double v);
public static native double getAFloat64();
public static native void setAString(String v);
public static native String getAString();
public static native void setAStructPtr(S v);
public static native S getAStructPtr();
public static native void setAnInt(long v);
public static native long getAnInt();
public static native void setAnInt16(short v);
public static native short getAnInt16();
public static native void setAnInt32(int v);
public static native int getAnInt32();
public static native void setAnInt64(long v);
public static native long getAnInt64();
public static native void setAnInt8(byte v);
public static native byte getAnInt8();
public static native void setAnInterface(I v);
public static native I getAnInterface();
}