bind_test.go compares the generated Go files against golden files checked in the repository. The bind package formats some of the generated Go files, so any changes in the go formatter can break the tests. This change makes the test more robust by applying formatting based on the currently used go version. Since a golden file often includes multiple go files generated by the bind, the `gofmt` function splits the golden file using the gobindPreamble marker and then run format.Source for each chunk. In order to ease the golden file splitting, this CL also moves the gobindPreamble to the beginning of each generated file consistently. It turned out bind omits formatting for some go files (generated for reverse binding). That needs to be fixed but it is a much bigger fix. Thus, in this CL, we apply the formatting on the bind's output as well. This CL also updates the gobindPreamble to follow the style guide for generated code. https://golang.org/s/generatedcode Fixes golang/go#34619 Change-Id: Ia2957693154face2848e051ebbb2373e95d79593 Reviewed-on: https://go-review.googlesource.com/c/mobile/+/198322 Run-TryBot: Hyang-Ah Hana Kim <hyangah@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
130 lines
3.3 KiB
Plaintext
130 lines
3.3 KiB
Plaintext
// Code generated by gobind. DO NOT EDIT.
|
|
|
|
// Java class vars.S is a proxy for talking to a Go program.
|
|
//
|
|
// autogenerated by gobind -lang=java vars
|
|
package vars;
|
|
|
|
import go.Seq;
|
|
|
|
public final class S implements Seq.Proxy, I {
|
|
static { Vars.touch(); }
|
|
|
|
private final int refnum;
|
|
|
|
@Override public final int incRefnum() {
|
|
Seq.incGoRef(refnum, this);
|
|
return refnum;
|
|
}
|
|
|
|
S(int refnum) { this.refnum = refnum; Seq.trackGoRef(refnum, this); }
|
|
|
|
public S() { this.refnum = __New(); Seq.trackGoRef(refnum, this); }
|
|
|
|
private static native int __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();
|
|
}
|
|
}
|
|
|
|
// Code generated by gobind. DO NOT EDIT.
|
|
|
|
// Java class vars.I is a proxy for talking to a Go program.
|
|
//
|
|
// autogenerated by gobind -lang=java vars
|
|
package vars;
|
|
|
|
import go.Seq;
|
|
|
|
public interface I {
|
|
|
|
}
|
|
|
|
// Code generated by gobind. DO NOT EDIT.
|
|
|
|
// Java class vars.Vars is a proxy for talking to a Go program.
|
|
//
|
|
// autogenerated by gobind -lang=java vars
|
|
package 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 int refnum;
|
|
|
|
@Override public final int incRefnum() {
|
|
Seq.incGoRef(refnum, this);
|
|
return refnum;
|
|
}
|
|
|
|
proxyI(int refnum) { this.refnum = refnum; Seq.trackGoRef(refnum, this); }
|
|
|
|
}
|
|
|
|
|
|
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();
|
|
|
|
}
|